Wait, before we start, what is WWDC?
I’ll add my description soon, but for now, check out the official website.
I know this article is a little bit long, but please read through this carefully before you start. If you have any questions, just ask me through messenger, or in the comment area below.
I’ll be constantly updating this, and the Chinese version is available here.
|April 1, 20:00 EDT||Submission Due|
|April 20||Announce Status|
|June 3-8||Orientation + WWDC!|
Please read the description carefully, as well as the terms and conditions. In summary, you are required to write a Playground – an interactive program – that is creative and technically accomplished.
You do NOT need a paid Apple Developer Account. Do you know what’s better than that? You’ll get one year of Apple Developer membership if you win!
If you have an iPad, I highly recommend you to go through one of those “Learn to Code” playgrounds to get a general idea about what a legit playground should be like, in addition to the Swift programming language itself.
Most of you are already familiar with Java, so reading just “A Swift Tour” should be adequate for you to understand this simple programming language. For those of you never learned programming before, just scan through that, and chapter 2 (Language Guide) will answer your questions.
You do NOT need to read chapter 3 (Language Reference) and 4 (Revision History).
You should learn SpriteKit.
You should learn SceneKit, but I hope you’ve already had some sense of how 3D works and where to get your 3D models. A bonus for you, Apple talked about using SceneKit in the iPad version of Swift Playgrounds.
No matter what, you should read the Markup Formatting Reference. Your Playground will look a lot better with this in conjunction with
It was first introduced back in 2014, and later in 2015 you can use the format mentioned above to author rich Playgrounds to better instruct your users. Here is a simple Swift Playground Book for you to get started, and you can also find other interesting ones from the Swift Blog, although many of them would be outdated and require some changes for them to work.
This app is first introduced in 2016 and updated again last year. iPad Playground has many features that a normal Xcode Playground doesn’t have – Cut Scenes written in html (a great place to inform your user what’s this chapter about), cover images, vocab lists, etc. To fully utilize those features, please read the Playground Book Format Reference, and experiment with this sample that allows you to send messages to a Swift Playground live view and saving data to its key-value store.
Remember that your playground will be judged offline, the program can NOT require an account for sign in, and they’ll only spend 3 minutes in judging it, so think about what you are going to do. Even without thinking I can tell you many people will be doing augmented reality and machine learning; you can not imagine how easy it is to implement those fancy but scary stuff with ARKit and Core ML. Well, try to be creative, add some graphics and audios, and incorporate some of Apple’s new technologies (even if they didn’t mention about that)…
For the first time, you are allowed to use open source frameworks (providing that you included their licenses correctly and explained why). Nonetheless, what you are going to submit is not just a normal program. I think these are some reasons why Apple prefers Playground over normal apps, and maybe you want to address some of them:
- user will be directed about what to do and informed of what is expected
- it provide an interactive way for the users to learn things through programming
- it sparks users’ interest in coding and encourages further participation
- …(many more to add)
Also, the “Beyond WWDC” essay is very important. You should explain, in 500 words, how you share your coding knowledge and enthusiasm for computer science with others. Spend some time on this and revise it several times.
However, that doesn’t mean the playground itself isn’t important. There were many amazing playgrounds, such as this one here, but the quality of the other ones varies. So my suggestion is analysis why some of them got accepted and some got rejected, see if you can resonate with former winners, and just try your best.
Everything is doable if you try.
– Apollo (a.k.a Zhiyu Zhu, last year’s scholarship winner for submitting Karel the Robot Playground)