1 2 3 4 5 Program a Friend Find Command Words in Recipes Pie R Code Icon Design Map your Habitat 6 7 8 9 10 Find a New Path Living an “Apply” Life Write lines of Code Pseudocode It! Act your Code 11 12 13 14 15 Functions in Swift Playgrounds More Functions in Swift Playgrounds Practice Functions Adventure Story Adventure Story Part 2 16 17 18 19 20 Paper Coding Puzzles Real World Swift Puzzle Debug the Code Alter Code in Sphero Sphero Coding Challenge 21 22 23 24 25 Gettin’ Loopy Match Code to Robot Moves Translate Code into Sentences Create Swift Puzzles in Keynote App Dev in Keynote 26 27 28 29 30 Code a Calculator Make Teams with Code Repeating Patterns Using Loops Coding Spheros with a Map Code a Robot Learn More 30 Days of Code Learn More Top Program a Friend by providing simple tasks. When providing oral commands, ensure your friend only does the required task. Get started : Select a simple everyday task for your friend to act out. Eg. Tell your friend to stand up and close the door, using a series of commands. Be as precise as possible! Record your commands using VoiceMemos. Listen back to see if/where you made mistakes. If you are following the commands, follow only as directed without making any assumptions! Turn right without an angle of turning means turning around endlessly. 👩🤝👨 1. Program a Friend Think about your favorite recipe. Which words are commands? For example... bake(), stir(), sift(), roll(). Get started : Find your favorite recipe and take a screenshot of the directions. Using the markup tool, circle each command word. Click the + in the Markup tool bar and select the text tool. Write out the encircled words as commands. Learn more > 2. Find Command Words in Recipes 3. Pie R Code Construct a logo for an imaginary app. Get started : Although small, app icons are simple yet impactful designs made to stand out. They should be easy to find on your iPhone or iPad and are a key element when designing an app. Use Keynote to plan and draw your icon. Learn more > This activity could be extended into a writing activity where learners create a plan for what their app does, intended audience, price, and features. They could then “pitch” their app idea to a panel of experts (a group of adults, parents, other learners) to go through part of a simulated development process. 4. Icon Design Navigate through a map. Get started : Use your map from Day 5, draw/write your code to challenge a friend to follow your route. What are some coding tools you could add to make your code easier to follow? How about a Loop or Repeat? How would you represent that? Are there two (or more) paths to the same destination? What is the least number of steps from start to finish? 6. Find a New Path Use your camera to document all of the apps one person uses in a day. This person could be a friend or family member. Document how the user interacts with each app. Take screenshots of each app too. Get started : Download iMovie on your iPad to edit your footage. Find a suitable interview subject who uses apps and create a list of questions to ask about how they use each app. Learn more > 7. Living an “Appy” Life Write your first lines in the Swift language. Get started: Download Swift Playgrounds and open the Learn to Code 1 Playground. Explore the environment by reading the instructions and following the prompts. Start coding! Learn more > 8. Write Lines of Code Use Pages to create a Map of your Habitat. Get started : Plot a route around your house, classroom or town. Use shapes in Pages to create directional arrows. Use commands such as Forward, Right Turn and Left Turn as your initial instructions. To bring your Map to life, add photos of sites or landmarks on the route. Can your friends follow your route, to see what story your code tells? Learn more > 5. Map Your Habitat Write a favorite recipe as Code. Get started : Find a recipe for your favorite food. Use Pages to rewrite the recipe as “code”. Remember, each action must be broken down to the simplest of steps— so choose an easy one! Learn more > Learn More Top There can be more than one way to solve a puzzle efficiently in Swift Playgrounds. Get started : Show students the 2 functions on pg. 45 of ECCode Puzzles. “Creating a New Function” or the functions for “Nesting Patterns” on pg. 46. Have students select one and explain (in a journal or acting out...) how both functions can work for the puzzle. Learn more > 11. Functions in Swift Playgrounds Develop pseudocode to describe a daily activity, like brushing your teeth. Use For Loops or If statements for brushing your teeth. Get started : Pseudocode is the practice of planning your code using your own language and syntax. Although it looks like code, pseudocode isn't a programming language. Can you think of a task that you perform everyday? Create your own pseudocode by writing this routine as code. Learn more in ECCode Puzzles > Learn more in ECCode Teacher Guide > 9. Pseudocode It The more you practice creating functions, the easier it will be. Get started : Complete every puzzle in the Functions section of Swift Playgrounds. Don’t forget to use “Step Through My Code” to help you debug any errors and check your functions. 13. Practice Functions Create the layout to a Choose Your Own Adventure Story! Get started : Select a story board template in Pages to create a plan for a Choose Your Own Adventure Story. Think of three possible starts, then two possible branches for each of those starts and then three possible endings for each of those branches. Learn more > 14. Adventure Story Build your Choose Your Own Adventure Story! Get started: Use your story board. Each branch is a single slide in Keynote. Use Hyperlinks to connect from slide to slide. Don’t forget to add a Back Button in case your reader wants to re-choose. You can also add a Back to Start button. Learn more in ECCode Adventures > Learn more in ECCode Puzzles > 15. Adventure Story (part 2) Use paper placements to demonstrate your understanding of Swift Puzzles commands. Get started : Create paper versions of Swift puzzles, by cutting out cards with Swift Puzzles commands printed on them. Have students create their own unique avatars using Play Doh, too. Students should set up their cards in the correct sequence, to navigate their avatar through the puzzle. Learn more > 16. Paper Coding Puzzles Think about every step involved in a daily activity. For example, putting on your snowsuit to play in the snow, brushing your teeth or eating lunch. Once you’ve reflected on each step, act it out! Did you miss any steps or make any mistakes? Get started : Using Keynote or Pages write every step in a different text box (different commands). Arrange the text boxes, in order from top to bottom. Once arranged, act out the activity and see if everything works. If it doesn’t, rearrange the text boxes until it does. Learn more > 10. Act Your Code Try out the two functions from Day 11 in Swift Playgrounds. Get started : Pick “Creating a New Function” or “Nesting Patterns” from Puzzles and try inputting the two functions from yesterday. Click the timer on the puzzle. Select “Step Through My Code” to highlight lines of code, as Byte performs the commands. What was the same? What was different? Does it matter which function you use? Learn more > 12. More Functions in Swift Playgrounds Learn More Top Students navigate a real-world Space using Swift Puzzles Commands. Get started : In this activity, students work in pairs to navigate a real-world space using the Swift Puzzles Commands. One student is blindfolded, while the other student reads out the necessary commands to help the blindfolded student navigate the space. Learn more > Can pair with the Swift Puzzles Placemat Activity to provide a creative space for the students to navigate. Prior experience using Swift Puzzles is recommended. 17. Real World Swift Puzzle Debugging is important to fix errors in code that prevent an application from running correctly. Testing the code at each step, ensures everything runs smoothly. When an error occurs you need to identify the problem and decide how to fix it. Get started : Open Notes and tap on Share, select Lines and Grids and choose a grid. Use the Markup Tool to identify a start and a finish in the grid. In Pages, write the directions to get from the start to the finish but make an error. Take a screenshot of your directions. Insert the screenshot into your notes by selecting the camera tool. Share with a partner and see if they can debug your code! Learn more > 18. Debug the Code Once you have created code you can alter or change it to create other commands. For example, if you have coded Sphero to create a square, could you change only 2 lines of code so Sphero creates a rectangle? Get started : Here is the code in Sphero Edu App to create a square. 19. Alter Code in Sphero Open a copy of this code in Photos. Use the pen/marker in the Markup tool to alter the code to create a rectangle. How do you know it will work? Can you alter the code for the square to make a rhombus? Parallelogram? Students should work in pairs to complete a series of challenges, requiring them to code a Sphero using SpheroEdu. Challenges should progress in difficulty. Get started : Learners work in pairs using SpheroEdu to code a Sphero, to navigate through several successively difficult courses. The first challenge asks learners to program Sphero to navigate around three cones. Ultimately, learners have to code and navigate their Sphero through a predetermined route, through the school from the starting line and back. The number and difficulty of the challenges can be easily modified to fit any time frame and ability level. This is a great activity to get students familiar with coding robots. Can also be modified to incorporate the use of Parrot mini-drones or other robots. 20. Sphero Coding Challenge Record a short music piece using Live Loops in GarageBand. Get started : Design “code” (pseudocode) for the music using numbers, symbols and emojis to represent the loops. Then create a mix and match puzzle to pair each representation with its loop in Keynote. Learn more > Some sandbox time with GarageBand is necessary before starting this activity. 21. Gettin’ Loopy Code is a different form of text. Depending on the task, we write different forms of texts like letters, emails, reports, etc. While it is important to write different forms of text, it is also important to read different forms of text. Get started : As a class select one robot (Sphero, MeeBot, Dash etc.), then in smaller groups or pairs code the robot to complete a series of moves. Using the camera, video your robot performing your code. Take a screenshot of your code. Tap on Share to Airdrop your photos and videos to your teacher. Your teacher can show the screenshots of code from every group and then show the videos. Students can then guess which code matches the video. 22. Match Code to Robot Moves Learn to control a robot using Swift language in Swift Playgrounds. Get started : Using a robot, find the third party Playground associated to it. Most of them will have a tutorial for that specific robot. Starting with the tutorial, explore the possibilities. After understanding how coding that robot works, draw a labyrinth with tape on the floor and program the robot using Swift language to reach the end. Learn More Top Translate code into the English language. Get started : Choose a level within Swift Playgrounds’ Learn to Code 1. Take a Print screen of that level and Paste the picture in Pages. Under the picture - using sentences, translate the meaning of the code so that someone unfamiliar with code can understand it. 23. Translate Code Into Sentences Use Keynote to recreate or design new Swift Puzzles. Get started : Use the shapes tool in Keynote to create your own avatar. Then using magic move, demonstrate how the Swift Puzzles code is used to successfully navigate your avatar through the puzzle(s). Learn more > Prior experience with using Swift Puzzles is recommended. Requirements for the code used can be scaled up or down make the activity easier or harder. 24. Create Swift Puzzles in Keynote Work in teams to develop a prototype of an app using Keynote Get started : Work as part of a team to create a prototype of an app using keynote. Students can use a keynote template (on Mac OS or iOS) to brainstorm ideas for an app. Work through the app development process by narrowing down ideas and select one final idea. Use this idea to create a prototype in keynote, using the shapes tools to simulate the GUI for the app and create links between slides to simulate the functions of the App. An Apple pencil could be used during the brainstorming session to quickly record ideas and is also helpful to use when sketching out ideas for how the app might function. 25. App Dev in Keynote A function is a named set of commands. When you do the same sequence of commands you can name it a function. When you perform operations in math, you go through a series of steps. These series of steps can be named a function. Get started: Pretend you are coding a calculator. In Notes or Pages write out the series of commands to add/subtract/multiply/ divide multi-digit numbers. Don’t forget to name your function. Have a partner try out your function. Learn more > 26. Code a Calculator Make teams for an activity using conditional code and logical operators. (If, Else, And, Or...) Get started : Using conditional code, try and separate your class into teams. (E.g. If you are wearing red or white, move to the right, else if you are wearing blue and black, move to the left...). A series of commands will end up dividing the group into different teams. Learn more > Trying to make teams that have the same number of people in them will be difficult. Demonstrating how using the right code can modify your end result. 27. Make Teams with Code Loops are a block of repeated codes that run a certain number of times. Loops create a repeating pattern, because your code will repeat your commands over and over again. Get started : Choose a robot (Sphero, MeeBot, Dash, etc.) then code the robot to perform 2-4 commands.This code will be the core of your repeating pattern. Now loop your code. Run your code and have a partner guess the core of your pattern. Learn more > 28. Repeating Patterns Using Loops In pairs, code a Sphero using SpheroEdu to navigate out of the classroom entrance and back into the classroom through the same or alternate door. Get started : Using SpheroEdu, code a Sphero to navigate out of the classroom door, down the hall, around a corner and down a second hallway and back into the classroom. You must build your code without visually observing the pathway that Sphero takes. Support learners by providing them with a map of the route + the dimensions of the hallway/spaces the Spheros need to navigate. 29. Coding Spheres with a Map 30. Code a Robot