The mBot is an Arduino based robot which allows for expansion and most importantly interaction with Swift Playgrounds. The manufacturer released the beta of their Swift Playground Book on GitHub, but unfortunately it was incomplete.

Over the past 6 months I have been writing a multi-touch resource to help guide teachers through the growing number of resources available for teaching Swift. I have been writing the book with two fellow ADE's from the other side of the world.

I have recently remixed and reworked a mathematics investigation which was originally written for Scratch with my ex-colleague Jan Honnens . The main purpose of this activity was to showcase the capabilities of Swift Playgrounds and how to bring new life into old resources with multi-touch interactivity to give students the necessary feedback to engage with course material.

In this course your students will learn the fundamentals of Swift 3 programming, using Geometry as their context for learning. The style of this course mimic "Logo", which is an educational programming language designed in 1967 by Daniel Borrow, Wally Feurzeig, Seymour Papert and Cynthia Soloman.

In this course your students will learn how to create a simple Space Invaders game on your iPad using the Swift Playgrounds application and Swift 3. The project uses very simple logic to detect collisions, but students will also be introduced to Sprite animations and physics which can be extended their knowledge into other projects.

In this course your students will learn how to create a simple Blackjack game on your iPad using the Swift Playgrounds application and Swift 3. Whilst this project doesn't follow strict Blackjack rules it can easily be extended by students if they want to split decks or develop it into an app that can deploy it to their iPads.

Since the release of Swift Playgrounds at WWDC in June 2016 I have been madly learning how to develop playgrounds so that I can utilise them in the courses I teach. This has meant not only learning the markup, but also converting my resources over to Swift 3 with very limited documentation. In this article I would like to share some of what I have learnt from developing these playgrounds and the surrounding course material.

The aim of the Tea Road Project was to modify the “pen pal” experience and allow Chinese and Australian students to open a dialogue, thus exposing the students to different cultures through modern mediums.

Aug 31 Geometry with Swift Playgrounds

In this course your students will learn the fundamentals of Swift 3 programming, using Geometry as their context for learning. The style of this course mimic "Logo", which is an educational programming language designed in 1967 by Daniel Borrow, Wally Feurzeig, Seymour Papert and Cynthia Soloman.

Today the language is remembered mainly for its using of turtle graphics, in which commands for movement and drawing produce line art on screen. I have used turtle extensively with the Python language and I see it as an essential building block for teaching students coding and debugging. I have also replicated the exercises utilising the Hopscotch coding app, however, with swift students have no metaphorical roof to their learning, they can go from drawing triangles to creating award winning apps within their high school career.

Level of Difficulty

The course is suitable for beginners and teaches mathematics concepts which are applicable for students from Year 5 to Year 7 (based on the Australian Curriculum). The course is designed to scaffold learning and present problems which students need to find solutions to. For example, students will be told to draw a shape, but won't be told what angles or lengths are necessary to achieve it. Through the course students will be introduced extensively to Loops and Functions.

I have delivered this course to students ages between 12-16 years old with good results.

Course Structure

The course is designed to be very visual and get students creating rather then reading and learning about the theoretical element of coding. Additional reading, video and support material are provided to the supplement the challenges.

The challenges themselves within the course are designed to be slightly ambiguous to encourage students to ask intelligent questions, research solutions and scaffold their learning. It's not designed to be a tutorial.

Getting Started

Within Getting Started the students are taught the basics of how to draw and render a shape on the page. They are shown how to create Squares, Rectangles and Triangles using sequential commands which are then added as a path to a shape.

Fancy Pictures

In the Fancy Pictures topic students are taught some additional commands which allow them to add colour and line thickness to their patterns. They are also taught how to draw multiple shapes and move the pen without drawing a line.

Doing Stuff Again

Doing Stuff Again is all about Loops. Students identify the inefficiencies with their code and how they can utilise both For-Loop and While-Loops to avoid code duplication. Students are also introduced to the co-ordinates system which allows them to draw more accurate shapes and begin to consider transformations.

Tell It How

In the Tell It How topic students are introduce to functions and how they can be used to define a shape and how we can implement parameters to control the size, position and colour of the shapes we are drawing.

Suburban Scene

Finally in the Suburban Scene students apply their knowledge to create a colourful image of layered shapes representing a Suburban Scene.

Accessing the Materials

All of the materials for this course are available through iTunesU and are publicly available under Creative Commons should you wish to re-use them for your own lessons. I appreciate and encourage any feedback and constructive criticism so I can improve the courses.