A Snippet of my Journey into App Development
By David Ruvinskiy
The summer before my freshman year of high school, Apple held its annual Worldwide Developer Conference to announce its newest software for the year. I sat down at my desk to watch the conference, readjusted my headphones for maximum sound quality, and smiled as I anticipated learning about iOS 8 and tinkering with its new features. Tim Cook’s voice reverberated throughout my brain as he wished the crowd a good morning. This is it. This is when I’ll get to see all the cool new features, I thought. Instead, my brain raised numerous errors as Cook paced professionally across the stage, discussing apps and something unfamiliar called Swift. The inside of my mouth felt dry and the letters “W-T-F” formed in my mind. As I continued to watch, one of Apple’s associates began to project a virtual amusement park on screen and my mind started looping endlessly. I turned off the keynote, not expecting to ever revisit Swift.
As the summer passed and the school year began, I enrolled in a class called Computer Programming I. At the time, my prior coding experience would simply end up as a string of zeros in binary if encoded by any computer. After meeting the teacher for the first time, I noticed her no-nonsense attitude perfectly reflected my aide’s warning about her strictness. I soaked up instructional videos, like sunlight while lying on a beach, from Mobile Makers, a company that my school partnered with to teach students to code in Swift.
One day, the sound of the bell pierced through my intense concentration. I sighed at the millions of snake-like errors crawling all over my screen, and reluctantly watched as my aide packed up my backpack in preparation for my next class. The next day, during programming, I noticed sparks of excitement engulfing me and a handful of students, like a fire burning within, as we devoured the content from the videos. In contrast, many students’ faces seemed solid as stone, as though Medusa cursed them all with her gaze. I noticed how one student’s code resembled a tangled web of hair, while my own resembled a neatly wrapped Christmas present. But I would soon learn that not every piece of code I wrote could be tied with a bow.
During the AP CS exam, a middle-aged woman with short, white hair proctored the exam and served as a scribe for me. I settled down and caught sight of the first question on “while loops,” which allow computers to repeat any series of tasks. But I suck at tracing loops. The timer next to me continued to tick. Ten out of forty multiple-choice questions down, and half the time over already? The free-response questions felt no different. If I needed to solve coding problems through a scribe with no programming experience, I might as well have tried using Siri to do anything useful. Upon leaving the room, my exhausted brain took a long pause before regaining normal levels of operation.
As time passed and my final score of three out of five on the exam faded from memory, I worked on several apps throughout the rest of my high school career. One day, during my freshman year of college, Apple decided to notify me that the company had rejected my app, YearRace, from the App Store. Boom. Boom. Boom. Boom. My heart rate increased. Almost immediately, a confounding haze of reasons for rejection surrounded me as I recalled the long days spent developing this app. I saw the app’s approval status for the iOS App Store paired with a cryptic message from Apple that I tried to decode: “This type of app has been identified as one that may violate one or more of the following App Store Review Guidelines.” The letters “W-T-F” formed in my mind again. The app is spotless. It has nothing wrong with it. What guidelines does it violate? I scanned the possible list of vague violations, wondering why they couldn’t tell us clearly what we did wrong. Later that evening, my friend and I video called to discuss a plan of action and formulate a response to Apple. Acutely aware of the clack of my keyboard, and its plastic finish, I sent the response, hoping it would squash Apple’s concerns.
I checked my phone constantly over the next few weeks, anxiously awaiting the day when my app would appear in the store. One day, the automatic door in the English building opened as I prepared to leave after my creative writing class. I rolled outside, and a breeze of cold air pelted me during my descent down the wheelchair ramp. While rolling back to my dorm, my body moving along to bumps on the road, I glanced down at my phone and saw a notification from Apple, causing my heart to leap with excitement. My whole journey up to this point seemed to mirror Sisyphus rolling his rock up the never-ending hill. Every rejection felt like losing control of the rock and seeing it race back down to the bottom. But alas, I did not reach the top yet. My muscles tensed as I saw the word “Rejected,” knowing we had to start all over again, clueless of how long another cycle of the process would take. No. How can this be? Our response to Apple was so good. What don’t they like now? I messaged my friend informing her that we had a problem. I checked the app’s status for the umpteenth time that week and read the following: “[Y]our Apple Developer Program account has been flagged for removal.” The matter now felt like it advanced from a dimly lit room to a pitch black one. My friend and I sent an appeal to Apple and waited to hear back, continuing to painstakingly roll our rock back up the hill.
Similar to Apple’s maturity from Objective-C to Swift, my freshman year of high school represented the maturity of my knowledge of Apple and technology. Although I attempted to execute that passion during the AP exam, several errors led me to score a three. Despite this score, I learned the importance of booting back up and continuing to execute through hardship. After restarting during the next few years of high school, I developed several apps, including YearRace, which Apple eventually approved. The Sisyphus-like experience taught me the importance of patience, even during the buffering of life. Although my knowledge of programming started out as zeros in binary, I now consider it closer to a one. Maybe one day, it will be a two.
Hi. My name is David Ruvinskiy, and I am a sophomore studying creative writing at the U of I at Urbana-Champaign. I started programming during my freshman year of high school. At the time, Swift had just been announced, and I had no programming experience. Currently, I have two apps on the app store, including YearRace, and I plan on developing more in the future. You can find me at @DavidRuvinskiy on Twitter and on Chris’s Facebook group.
I want to thank David for sharing his inspiring story!
We also want to inspire more students like David and recently launched our licensing program for schools. Applications are NOW open!!! Learn More
If you have your own inspiring story to share, please get in contact with us!