When Apple announced Swift Playgrounds during WWDC earlier this year, I was thrilled. As a mom of two kids – one who is already interested in technology and how it works – a program designed specifically to teach the fundamentals of Apple’s new coding language (Swift was unveiled in 2014, set to replace Apple’s more complicated Objective-C language) to the next generation of coders sounded like an excellent idea. Once my iPad was updated to iOS 10, I set out to download Swift Playgrounds… but not for my kids. As somebody who has zero experience with Swift, I was actually more interested in how the program would work for adults who had no idea what they were doing.
Although I don’t have any experience using Swift, I once was very interested and involved in coding other languages, namely HTML and CSS. At the tender age of 12, I discovered a website called Neopets. Neopets was an expansive website whose main allure was to take care of your own virtual pets. However, Neopets also had opportunities for users to set up and maintain shops, play games, chat with others users on forums, personalize user pages, and create “Guilds” based on personal interests, which other users may join.
With Neopets, you had the option of personalizing user pages and guild pages using HTML or CSS, which I quickly realized was key if you wanted things to look really good. There was an entire host of websites dedicated to “pre-made” layouts, complete with images and code, for free use to anybody who wanted them. While these worked for me for a little while, I eventually decided I wanted something less cookie-cutter and more unique. I would spend hours out of the day deconstructing the pre-made codes, figuring out what parts of the code did what, and applying them to new layouts that I created. I eventually became quite adept at coding (on Neopets, anyway) and I also learned a lot of valuable Photoshop skills. On a darker, unrelated note, my Neopets were almost always starving because I just didn’t care much for that aspect of Neopets.
Thanks to Neopets, I learned the importance of coding and how complicated it could be. My path in life didn’t really elaborate on coding past Neopets, so when I quit the website sometime just before I entered high school, I completely dropped the hobby. With the arrival of Swift Playgrounds, however, I find that I had renewed interest in coding again, even if it is in a different language.
I’ve been tinkering with the app for a couple of hours, and I have to say that I find it to be extremely easy to follow. With an app that’s made for kids, I guess it's what I should have expected all along. With that being said, I'm constantly amazed at how quickly kids catch on to user interfaces of all types; then again, it probably comes naturally if they're exposed to it early enough. Still, Apple really seems to have put a lot of thought into this program that makes it both easy to understand and interesting to use no matter what your age is.
You start with simple coding commands. One of the things I like most about Swift is that it appears to use commands that directly reflect what you’re doing, using terms such as “turnLeft”, “moveForward”, “toggleSwitch”, and “collectGem”. These are easy to understand, and definitely help when going through your codes to find “bugs”, or issues within the code that break mechanics.
I’ve been using the app for about 2 hours total, and so far I’ve learned a few basic commands, how to create functions (combining multiple commands to create a new command that couldn’t have been done before), and how to create something called “for loops”, which is a type of code that regulates repetitive steps needed to complete a task.
If I were to read this without ever having used Playgrounds, I would be extremely confused. But the fact that I’ve been able to spend 2 hours (which hasn’t felt like 2 hours at all – I swear, this is almost like playing a puzzle game) on this app and have learned this much really impresses me. While I’ve been aware of free coding websites and programs online before this, the fact that I can do this with my 3-year-old iPad Air is a convenience worth mentioning. I may not actually have any use for Swift coding at any point in the near future, but there’s also the very real possibility that someday I might; after all, coding is, and will continue to be, a desirable life skill. While Swift Playgrounds only gives you a taste of what Swift can do, it appears to be an excellent starting point for anybody interested in coding, whether you’re a kid or an adult.