Now that you’re getting more comfortable with playgrounds, you might be wondering how to build an app you can use on your iOS device, or even your Apple Watch. A lot of moving parts need to work together to make an app run, and Xcode is the best tool for putting them all together.
Today we started a three-part lesson in which you’ll build SinglePhoto—a simple iOS app that displays a single photo. In the first exercise, you’ll create an app project from scratch. Then you’ll use Xcode to explore your project and learn to navigate your coding environment.
When we layer functions – with functions that call other functions – we are creating layers of abstraction. In programming, writing functions helps us create layers of abstraction that allow us to design and create increasingly complex systems.
We’ve seen layers of abstraction before in the design of Internet protocols, or in the binary encoding of information. Solving a fundamental piece of a problem that can be reliably reused in a different context frees us to think about more complex problems because we can trust the piece that has been solved and don’t have to worry about its details. Solving small problems – like how to send a single bit from one place to another – allows us to think about bigger problems, like sending numbers, or text, or images, to multiple people, over networks, in packets…etc., etc., etc.
Abstraction – Pulling out specific differences to make one solution work for multiple problems.
Function – A piece of code that you can easily call over and over again.
Top Down Design – a problem solving approach (also known as stepwise design) in which you break down a system to gain insight into the sub-systems that make it up.
Please complete tasks 2,3,4,5, & 6 in Unit 3, Chapter 1, Lesson 6 of Code.org
Today we went over how to use the Clips app. We’ll be using it a lot this, so I’m glad you’re comfortable with it. Here is a tutorial on using it:
Last night, you created a character siloutte for either Gilgamesh, Enkidu, Ishtar, or Utnapishti. Tonight, you’ll use clips to add narration to explain your object selection. Here is an example of what a finished project should look like:
For homework, complete your video. You must select at least 5 object in the silhouette to explain.
I’ll show you how to submit them in class tomorrow.
HAVE FUN WITH THIS!!!!
REMINDER – TEST ON NAMING AND STRINGS THIS FRIDAY
In the previous lesson we created simple turtle drawings using only four commands. At some point you probably wished that more commands were available to you. Today learned how to create our own commands by writing Functions.
A function is a piece of code that you can easily call over and over again.
Here is the video we watched on Functions:
For homework, please complete Questions 3-12 in Unit 3, Chapter 1, Lesson 5 on code.org
We’re wrapping up our study of The Epic of Gilgamesh by studying one of the major characters. In class today we discussed using a Keynote Template to explore that characterization of either Gilgamesh, Enkidu, Ishtar, or Utnapishti. Please see the lesson below for details.
REMEMBER – YOU MUST UPDATE TO iOS 11. You must also update your version of Keynote so that you can have access to all of the objects. Email me if you have issues.
We will have our first exam on Naming & Strings on Friday. I airdrop you a playground with an activity to complete. When you finish, you will email the completed playground back to me.
Also, please download Learn To Code 2. We will begin assignments in it shortly.
Today we looked at the most basic building block of programming: the command. If we invent an instruction or command for a computer to execute, then it should be unambiguous how the computer will interpret or attempt to execute that instruction. At the very least we can expect that the machine’s behavior is repeatable, so we can run some tests until we understand what the computer is doing and why. So then the challenge – and fun – of programming at its core, is understanding how to use and combine those machine instructions to make the computer do what you want, or to solve a problem.
You should be done with:
Unit 3: Intro to Programming
Chapter 1: Programming Languages and Algorithms
Activities 3, 4, & 5 and Questions 6,7, & 8.
I’m excited that you got your iPads today. Please remember what I told you in the lecture hall today:
I think this can be a transformative tool for your education
Other teachers think its a toy and a distraction
Who do you want to be correct?
Don’t give the haters fuel.
Remember to bring in that Venn Diagram tomorrow. I’ll be collecting them.