It has been 5.5 years since the WWDC 2019 scholarship was announced, and I still cherish those ten days when I got a glimpse of my potential.
It also gave me lifelong friends. I still talk to one of them daily, and I am going on a trip to Japan with two of them!
I won the WWDC scholarship in 2019, and this post is a detailed description of my experience, including all the failures and how I overcame them, to submit my submission.
I hope it inspires you to apply for the Swift Student Challenge 2025!
What is this Challenge?
The Swift Student Challenge is an annual competition hosted by Apple. It invites students worldwide to flex their coding and creativity skills by creating a marvelous Swift Playground. The 2025 challenge will open for submissions in February 2025 with a three-week application window.
You can go through the detailed eligibility here:
Apple will select 350 winners whose submissions excel in innovation, creativity, social impact, or inclusivity. From these, 50 Distinguished Winners will be chosen for their exceptional work and invited to a three-day experience at Apple in Cupertino.
All winners receive a one-year membership in the Apple Developer Program and a special gift from Apple!
Scholarship Submission
To understand my thought process during the submission, I urge you to watch the submission video first for better context:
Background Context
I remember going through the WWDC website to watch the keynote on my MacBook Air.
The date was 4th June 2018.
I wished I could watch it live someday.
During the intro music, I started exploring the site to understand how the developers get tickets. Based on a lottery system, a developer ticket costs $1,600.
Umm, no.
It was not affordable when I was paying $60 in semester fees.
I scrolled down and found this on the homepage:
Scholarships — Students and STEM organisation members can apply to receive a conference ticket, lodging, and one year of membership in the Apple Developer Program.
Ah, this is what I am looking for!
But now, I would have to wait for a year to apply.
I reviewed the requirements, a full Xcode Playgrounds/Swift Playgrounds project with some essays. I had just started iOS Development, and my experience with Playgrounds was limited to declaring a few variables. Only 350 students were selected from all over the world, ranging from school students to PhDs. This scholarship seemed too difficult, and so I forgot about it.
Starting the Year 2019
Around January 2019, I joined a WhatsApp group of student developers who discussed internships and Google Summer of Code.
There was this instance when people cheered someone who won a scholarship for Apple’s event. I was eager to know more about this person’s experience. I directly messaged him (now a pretty close friend!), asking about the details of it. He was helpful enough, and the group organized a Google Hangout (that was a thing back then!).
I asked multiple questions about it:
- What do we have to submit?
- What are essays?
- Do we get any flight or hotel reimbursement?
And all questions that I could have probably googled, sigh.
I searched for last year's projects on GitHub, watched videos on YouTube, read articles on scholar experiences, and repeated this.
After having a clear picture of what this scholarship is all about in January, I knew this was not my cup of tea.
Ides of February?
The whole month of February 2019 was spent sleeping and avoiding college.
And reality, in general.
I admit I was at the lowest of my college life back then and just needed something to motivate me to do something.
I started taking an introductory course on Udemy about iOS, which irked my curiosity about creating apps. I felt on top of the world and knew I could do this for a long time, a nice break from my miserable state of mind.
Again, at this point, I knew that attending WWDC in person was a far-fetched dream, and nothing could change that fact.
Mid Semester Break
My mid-semester break in college started around 14th March 2019, and Apple announced the scholarship on the same day. I wasted last year's holiday doing nothing and did not want to repeat that mistake.
At this point, I had some experience with iOS but no experience with making games.
Apple requires you to create an interactive scene in a Swift playground that can be experienced within three minutes using Swift Playgrounds 2.2 or Xcode 10.1. Be creative.
And a few essays. Ten days were given for the submission, from March 14, 2019, to March 24, 2019. The days given this time were considerably less than last year, but I wanted to push myself to my limits.
I was already at my lowest, so I had nothing to lose besides gaining experience.
Finding the App Idea
The goal for the first day, March 15th, was to understand Swift playgrounds, how they are supposed to work, and how much effort would be required to code UI programmatically. I went through Paul Hudson’s How to Create Live Playgrounds in Xcode. I even asked him if he could help me create a game template. 🫠
I had no idea what I wanted to create as the end product, but I knew I wanted to make a game. I watched a few tutorials, read articles on SpriteKit, and finished the day going through 2018 submissions on GitHub.
My mother taught at a special school and came home tired after her schedule. I knew that she worked hard to make learning material for her students who have autism spectrum disorder.
I was frustrated by this and wanted to help her in some way. I searched the App Store for an app that helped children with autism. I came across an app that was too expensive to be accessible to students.
And that is how I stumbled upon my scholarship idea.
Sort of.
Write code. Blow minds.
By the end of the 16th of March, I wanted to have a prototype ready that could do the following -
- Add three colored cubes that vanish when you shoot them. Yep, that was my prototype.
I wanted to have inspiring and catchy introductory music that gives the vibes of WWDC. And this took me the whole freaking day.
The introduction part of the experience was supposed to be copy the WWDC 2019 tagline with the branding colors.
Write code. Blow minds.
I added another line because I felt my idea would make a difference in someone’s life.
Make a difference.
Ambition and Time
I started again, telling myself it would be a great day and I would smash my goals like anything. At this point, I was done with the introduction screen and wanted to add the main screen consisting of three activities. That was 20% progress with the project.
I also decided to use SceneKit in my project instead of SpriteKit. Because what is better than a 2D game? A 3D game! And ARKit for the project as well.
It was such a wild idea.
Within a week, I had to learn ARKit from scratch and implement it.
Oh boy, I was directionless but loved the process of working on this project.
The goal for today was to create the second screen consisting of four activities. Clicking on them would start the game and add Voice support.
But I did not hit a single goal.
I was disappointed but knew I had come a long way, and there was no turning back. All I needed to do was give my best in the next week.
I was too ambitious about the project. And the clock was ticking against it.
Being Directionless
With only 20% of the ambition, I somehow calmed myself down and started thinking clearly.
I wire-framed the levels of the game.
- Level 1 — Only one color [Two geometries]
- Level 2 — Two colors [Three geometries]
- Level 3 — Three colors [Four geometries]
- Level 4 — Four colors [Five geometries]
Intro Screen → Game Menu Screen → Game Screens
I planned this as the final goal for the project. At this point, I didn’t feel directionless anymore and had a clear plan in front of me.
I also had this ambitious aim to implement eye-tracking (that Apple implemented in Voice Control). However, I gave up on that idea due to the lack of a TrueDepth iPad.
Some Ranting
I started early on the 19th of March and implemented the basic functionality for the Shapes and Color Game. At this point, I was 40% done. The introduction screen was perfect. I finished the main screen from my end.
But I could not do much that day because of attending college and getting the travel assistance letter. And I did not get what I wanted in the end.
I expected my college to take this scholarship seriously. But then, I do not want to go on ranting about the bad experience of this approval letter.
Exhaustion
I slept 3-4 hours during the preview few days and slept 14 hours after returning home from college.
I was exhausted.
It was the first time I had put so much effort into something without caring about the result.
I, deep down, wanted to win this scholarship, but I knew I still had a long way ahead to even apply for the first place.
I had not started on the essays yet, so that responsibility was also in my head.
Quoting my own words:
I am not sure how I am going to do anything. I am stuck now. I do not know where to progress from here.
Not quitting on that particular day (20th of March) was the primary reason I could push it to the end. I do not know what slight amount of hope made me add a small default text feature in the game, but that worked out well in my favor.
Confidence on Steroids
After sleeping 14 hours, I wanted to compensate for it.
I did not sleep.
I worked until 7 a.m. to implement the AR feature and addol to switch between 3D and AR modes. I estimated this would take at least two days, but I nailed it in under two hours.
This feature was steroids to my confidence and self-esteem, whatever you want to call it.
The 21st turned out to be a pivotal day in terms of boosting my shattered confidence. I realized that these actions mattered to make my far-fetched ambition a reality.
I also made the geometrical nodes explode and added a pleasant sound to the explosion. In less than 72 hours, I was 50% done with my project.
But the design was with hardcoded bounds, working only in landscape mode.
I was no longer counting days. I had reached the point where I had to count hours.
Refactoring Day!
Time was running fast, and I had lost myself in a messy pile of code. So, the 22nd ended up being a refactoring day!
I listed everything I had in the app now working and all the features I had to implement. And those that I had to fix. I implemented an explosion and two levels in the game.
It was getting tough now, and I needed a lot of motivation to continue.
By the end of the day, I had perfected the explosion and added the color's name to speak out if it matched correctly. These features were critical in creating a good user experience and acted as the motivation syrup.
Making it Work. Somehow.
Second to last day. 23rd of March. Fifty-two hours left.
I completed about 60% of the work in the last few days. I had to complete the remaining 40% in 52 hours.
Was it possible? For an average Rudrank, no.
Those were the most resilient 52 hours of my life. I still cannot forget those 52 hours.
One thing I realized in that week was that I had always found a way of doing it. I do not know how, but I got it working. Remember hardcoding the screen to work only for landscape mode? I somehow figured out how to use stacks programmatically.
I had to make it work out somehow because I had no choice.
Panic Mode
The last day of the submission timeline was the most hectic. I implemented the “Play again” and “Try again” buttons, as well as the back button and the stars for the score. After every correct match, there is the same match to make the child happy.
Around 8 p.m., I discovered a bug that could potentially destroy the whole experience of the playground. And it was also breaking the game.
The submission deadline was almost 8 hours. And I had to reread the essays as well.
Panic Mode.
I was too tired to fix it, so I quit everything. I no longer wanted to apply.
You may have read in the beginning that I could not imagine winning the scholarship without my mother’s support. This was the crucial breakdown point, where her presence made me patch up this bug somehow.
My mother motivated me to go through step by step and cover all the edge cases.
It all worked out in the end.
For me, this was the first time I pulled off 110+ hours a week, and I believed it would be all worth it. My idea was powerful, and the implementation was neat.
After submitting at around two in the morning when the deadline was 5:30 a.m., I was exhausted, but I knew I gave my best and would not regret it if I did not win.
It all worked out in the end.
I just told myself I deserved to win and slept like a baby.
The Game of Waiting
Waiting for the result did not bother me much until April 10th. I was busy with my submission for Google Summer of Code, which distracted me from the anxiety.
I reminded myself that I would get a mail with the subject "You have won a WWDC19 Scholarship." And I had no backup plan to tackle the disappointment if I did not get one.
So, I did something unusual. Instead of focusing on my semester, I started studying for the end-of-semester exams. It still sounds insane when I type this.
I remember a lot of noise on the discord channel regarding the result that added to the uneasiness.
The Day Before Judgement
The day of the result of the WWDC scholarship 2019 arrived.
I had no choice but to convince myself that I would get in. I worked hard on my essays, and I believed that my idea would make a difference in someone’s life.
I expected the results to be out by midnight in my time zone, but I did not get any mail. For the next few hours, I hammered Command + R until 3 AM, when I realized I might not get it this year.
Subject: You’ve Been Awarded a WWDC ’19 Scholarship
I awoke abruptly around 6 AM to see a mail notification on the lock screen.
Subject: You’ve been awarded a WWDC ’19 scholarship
I won the Apple WWDC Scholarship 2019.
Moving Forward
As cliché as it sounds, the biggest takeaway is to believe in yourself even when everything looks impossible.
Believe in yourself even when you do not want to. You have to believe in yourself so much that it is delusional. It was a wild ride, and I am proud of myself for sticking to the end.
After returning from the best week of my life in San Jose in June 2019, I knew I would apply again and again.
In mid-March 2020, I interviewed with the Accessibility Speech team for an internship at Apple in Cupertino. I eventually received an offer in early April.
I do not remember the exact conditions for being an Apple intern, but even if you win the scholarship, you do not get it. I was too busy figuring out the visa and whether the internship would happen remotely or due to COVID-19. So I postponed this idea for the next year, and then I got COVID in my final year to eventually drop the idea.
So yeah, that is the story that literally changed the trajectory of my life. And I hope it changes yours too. Godspeed.