Video Lessons for Coding with Swift


In case you’re missing our live sessions every week day terribly, keep in mind you can still visit any one of the videos we did over the last few months at Coding at Home.

This page has links off to the various YouTube playlists, where we’ve collected our library of content for:

  • Everyone Can Code Puzzles — relive the excitement of the Everyone Can Code Puzzles book from Apple and refresh your memory on all sorts of coding techniques and tricks
  • Lights, Camera, Code — a jaunt through using your iPad’s camera
  • Build your own Aquarium App — building on the Lights, Camera, Code stuff, we strike out on our own to build our own app using some of the same techniques we learned with our camera exercises
  • Augmented Reality — one of our huge hits, try your hand at augmenting your own reality with lunar landers, pinball games, you name it! Not a lot of coding knowledge required, but you’ll have a ton of fun!
  • And so many more…

You’ll re-live all the excitement of our live sessions with all the bloopers and feed issues as we (I hope) got better and better over time.

So while we’re building the next iteration of lessons/sessions, catch up on the old! Turtles, turtles, everywhere!

I’m a big fan of turtle graphics, as you probably know.

You can see the effects of your code pretty clearly with most version, from LOGO to Python to Swift.

This is a huge win for learners, because you can draw some pretty cool stuff relatively quickly.

I’ve published an app on the App Store for doing LOGO development on your Mac.

And then there are the Turtle Graphics playgrounds I’ve developed for Swift Playgrounds.


Via the Irish Tech Community Slack channel, I found Shelly the other day.

For those of you who’ve asked me for platform-independent coding tools, this is a great one!

It’s got a beautiful interface with lots of nice little touches to help you build your vision.

There are a series of lessons to teach you how to use the programming language, which will hopefully ease you into the language.

It’s not for the faint of heart, as the syntax can be a little confusing for certain things, but if you’re away from your iPad or Mac and want to sharpen those programming skills it’s not a bad alternative!

Check it out at

Coding at Home: Paused

Like yesterday, we’re taking a little hiatus. In the meantime, we have a ton of back catalog to trawl through. But no live coding today.

Under construction, sort of…?

Teaching Swift

If you’re a teacher, we added a post yesterday about teaching swift.

We started up a little community Slack instance to talk about how to teach Swift, give some pointers to great teachers of the language, and other coding tips and tricks.

I’d love to have you if you’re even remotely interested.

Next steps in your coding career

If you’re hungry for more coding, you could always make the next leap. If you have a Mac, you download Xcode and have a look at my course on Ted about Getting Started with Xcode. You’ll be building an app in no time*!

Good luck!

* No time actually works out to about 40 minutes. Give or take.

Teaching Swift

[Update: The link below has been updated to point to our redirect to the Slack login. Please let us know if you want to join and the link has expired!]

By the way, if you’re a teacher and you teach Swift, or want to teach Swift in your classroom, I’ve created a new Slack instance called, fittingly enough: Teaching Swift.

[You can skip all the rest and hit this invite like: here if you’re already sold: Join Here]

Feel free to join if you want to talk to like-minded educators. We have channels for the new Develop with Swift curriculum, the older App Development with Swift book, Everyone Can Code, and a whole slew of other topics.

I have always been impressed by the Apple Distinguished Educators; they consistently put out amazing material and way above and beyond. I’ve learned a lot from you over the years.

If you’re keen to try out Swift in your classroom, join us and I’m sure you’ll find some fun stuff!

Join here:

Coding at Home: July 16th, Press Pause

There will be no live coding today!

Okay, okay, stop crying. Please. You’re making a scene.

It’s embarrassing. Flattering, but embarrassing.

Okay. You good?

Everything okay?

Man, you’re really getting into this coding thing.


I hope you’ve been spending the evening and on into today coding your own messages to pass around to friends and family.

Maybe send out all your messages for the day on WhatsApp and Instagram and SnapChat and whathaveyou encoded and only give out the shift key later in the day.

Nblf tvsf up tnfmm tpnf sptft, cvu gjstu nblf tvsf uif qfstpo up xipn uifz cfmpoh jt plbz xjui zpv tnfmmjoh uifn. Uifsf’t opuijoh xpstf uibo hfuujoh jo IVHF uspvcmf xifo zpv’sf kvtu uszjoh up tojgg tpnf sptft.

Bmtp nblf tvsf uif sptft bsfo’u qmbtujd, bt zpv’mm mppl sjejdvmpvt tojggjoh qmbtujd sptft, uifo uszjoh up qmbz ju dppm mjlf zpv lofx uifz xfsf qmbtujd uif xipmf ujnf. Fwfszpof lopxt.

Tp tnfmm tpnf sptft, xjui dbsf, boe xf’mm tff zpv tppo!

To decrypt this you’ll need the time we usually broadcast at (Irish time, of course), and your Cipher playground. Good luck!

In the meantime, go check out some of our playlists to review coding lessons we’ve done here: Coding at Home.

Coding at Home: July 15th, Cipher

Join us today when we approach one of my all-time favorite playgrounds, Cipher, at 1pm, Irish time!

Recap: Sensor Arcade

We said goodbye to Sensor Arcade yesterday with a bit of cheat codes.

We’ll explore the Sensor Arcade infrastructure in some future lessons. The potential of using your iPad and its myriad of sensors is so exciting, and this is a great playground to test them all out!

Now we can see practical applications for all this code we’ve been learning about.

And we’ll certainly come back to these concepts and tools in the very near future.

Today’s session

For today, though, we’re going to explore one of my absolute favorite playgrounds: Cipher!

It’s a little bit about cryptography and coded messages and a tiny bit about code. But the reason why it’s my favorite playground is because it’s structured around a story.

We’ll experience the story and learn a little about crypto.

I can’t wait to get started on it with you. See you at 1pm!

Coding at Home: July 14th, Sensor Arcade, Gem Hunter

Join us today as we finish out Sensor Arcade at 1pm, Irish time!

Bumper Bash

We covered a lot of ground yesterday. In Bumper Bash, we learned about the collision handler, which lets us know which two sprites just collided with each other. This is a huge addition to our coding toolbox!

Now if we’re writing a game we can let the SpriteKit framework do the work of figuring out when two objects have collided.

Now, my high score wasn’t amazing for this one. Have you managed to beat it?

We’ll look at a few ways to cheat the system today — we’re coders, after all, we can write our own rules!

We’ll also explore the applyForce method on our sprites and see what that does.

Gem Hunter

We also moved on to Gem Hunter yesterday. This playground page combines all the inputs we’ve learned about: touch, light, sound, and collisions. We’re going to write a game that will use a few different ways of manipulating our player to get as many gems as possible.

My high score for this game, our first pass, also wasn’t brilliant, so please tell me you were able to beat me!

We’ll spend a little time rigging up some easy win scenarios today. Then we’ll think about what might make the game even more playable.

What behavior will our player have in reaction to light updates? Will we add some labels to see values from our events in real-time?

Come code with us today at 1pm, Irish time!

Coding at Home: July 13th, Bumper Bash

Join us today at 1pm, Irish time, for some more coding!

NB. We’re back at our usual time of 1pm, Irish time!

Recap: Sound Poppers

I hope you got to spend a bit of extra time with Sound Poppers and controlling those poppers to take out the balloons (and not the bombs!).

Did anyone beat my time?

Today’s session

Today we’ll continue exploring Sensor Arcade.

Remember when we made our own game/app a while ago?

We did some rough math to figure out if two objects collided in our scene. This let us make it look like a real game to our players.

This playground lesson uses a technology called SpriteKit. It sounds like a soda-making toolbox, but it’s Apple’s framework for building 2-dimensional games.

Using this framework, we can detect collisions between sprites, which are elements in our scene.

We’ll handle these collisions and call methods on our sprites to make them respond in suitably realistic ways.

Can you think of other places you might want to use this type of collision detection and physics (like applyImpulse, which we’ve already used)?

Join us today at 1pm and we’ll build some cool stuff!

Coding at Home: July 10th, Sensor Arcade, Sound Poppers

Join us today at 2pm today, Irish time, for some more coding with sensors!

NOTE the DIFFERENT time of 2pm! We’re just trying to keep you on your toes and really pushing for you to subscribe to our YouTube channel.

Yesterday’s lessons

Yesterday I hope you took some time to play around with different algorithms to see which one might result in the most fun for your game.

Remember, algorithms were simply a set of instructions and parameters we organized to solve a particular problem. There are many different ways to write code, some of which yield similar results. But now we can explore how well an algorithm performs by how well we do in the game!

In our default algorithm, provided by the playground, I got a high score of 63.2 meters and 4 donuts… not a great score, but not too bad.

Can you do better? Did you do better?

Today’s session

Today we move from the camera to the microphone!

We’re going to revisit pitch and tones today and use their numerical values to try and move things around the screen.

Come join us at 2pm, Irish time and we’ll make a bit of noise and have some fun!

Coding at Home: July 9th, Sensor Arcade, Dashing Donuts

🍩 Who doesn’t love donuts?

Join us today at 3pm, Irish time for more fun with our iPad sensors!

This week we’re jumping around with times a little bit. If you want to make sure you don’t miss an episode, obviously you can follow us here. But you can also subscribe to our channel (like and subscribe?) and you’ll get notifications when we go live.


Yesterday we learned about using a touch handler and wrote some code to move our player around the screen to catch cupcakes.

Did you beat my high score?

I hope you tried a few different strategies for moving the player. I also hope you tried your algorithms out on your friends, siblings, parents.

There’s nothing better than having someone play and enjoy the game you wrote!

Today’s session

So for today we’re going to use our camera, and possibly our cameras, both of them, to get light updates.

We’ll explore switching which camera we use and what properties we have access to on the Color that’s passed to us.

Will you be able to beat my high score today?

Join us at 3pm, Irish time, to find out!