How I got my First App in the App Store (A Bumpy Journey)
Ever wondered how apps are created?
Read this guest post, part of our Mobile Tech Theme, by Gem Barrett, about how she designed, coded and sold an app to Apple.
At the start of 2012 I set myself one goal for the year: to design, code and sell an iOS app in Apple’s App Store.
Coming from a graphic design and web development background, I was confident that learning the Objective C programming language, finding my way around Apple’s development software, Xcode, and designing a simple app could be done relatively quickly.
By mid-September, the goal had been achieved and I had become the first female iOS developer on the Isle of Wight to sell an app. However, my journey to the App Store proved to be a little bumpier than I had envisioned!
Armed with Apple’s guidelines, a stack of Objective C reference books and knowledge gained during an intensive iOS app development course, I embarked on my first iOS app project.
This preparation stood me in good stead for the latter coding phases of the app’s development, but it was my graphic and web design skills which assisted me most during the project’s early stages.
Having a graphic design background ensured that I was able to create an eye-catching and professional icon for the app. An app’s icon provides the first impression to potential purchasers, and therefore needs to clearly reflect the app’s purpose while being striking enough to stand out from the other 700,000 iOS apps competing for their attention. Faced with the issue of organising a relatively large amount of content I drew on my previous experiences in designing complex websites in order to arrange the various elements into a coherent layout with an aesthetically-pleasing user interface and intuitive navigation structure. In Xcode, Apple provides many standard interface elements, such as the classic blue gradient toolbar, that users associate with native iOS apps, thereby making the process of producing an app that looks natural on Apple devices very easy to do.
While file sizes and page loading times are an important consideration in website development, in app development it is imperative that the overall file size is kept as low as possible in order to ensure that the user is not left staring at the splash screen for longer than a few seconds while the app is loading. Forming a balance between providing extra value for the user and a fast loading time, can be very tricky. It’s important to keep in mind the main purpose of the app and eliminate any unnecessary features that users may not be looking for. These features can always be included in a future update should they prove to be desired by the target market. Remember, the most popular apps are often the simplest!
After creating the icon and graphics, and fully exploring the screen layout options, I began to build the working prototype of the app.
In the later versions of Xcode, Apple have included a Storyboards feature which enables developers to assemble the screens in an app, and the navigation between those screens, in a visual manner. The code is then automatically generated to implement the specified behaviours, such as particular transitions between screens. During my app’s development I found the Storyboards feature to be a great way of getting an overall view of the app’s navigation structure - this also provides a short respite from looking at code!
During the development stage, I found Xcode’s simulator to be immensely useful in testing functional aspects and polishing the visual parts of the app. Having said that, nothing compares to testing the app in a ‘real world’ environment on an actual device in order to get an accurate feel for the overall experience - not to mention the indescribable feeling of seeing your first app working on your own Apple device!
Xcode’s debugging system is immensely useful for flagging up both real and potential errors, even if some of the warning descriptions can be a little vague at times. Thankfully there are plenty of developer communities online containing helpful advice and bug fixes. I really can’t recommend these communities highly enough, as without their help I would have ended up with a lot of premature grey hairs!
The most difficult part of developing the app, surprisingly, came at the end of the project: submitting the app to Apple.
After the rather long journey I was understandably excited to have finally reached the point where everything was ready to be uploaded to Apple for approval: all the bugs had been fixed, the user feedback had been received and acted upon accordingly, the various icons, screenshots and descriptions for the App Store were ready and the app was working exactly as it should be.
So, at around 4pm on the 31st August I began the process of sending my app off for review. Having found an article online to explain each step, from creating the app record in iTunes Connect through to uploading the binary, I felt that I was finally prepared to submit my first app. My expectations of sailing through the process were soon dashed, however, when a very long list of validation errors appeared during the first submission attempt. Determined to “keep calm and carry on” I spent the following four hours working through the error descriptions, researching each one’s appropriate fix, before attempting validation again. Having dealt with all the errors, I attempted validation again for what I presumed would be the final time. It was at this point, I was presented with the vaguest of all the error messages: “Unable to process application info.plist validation at this time due to a general error”. To say I was bemused by this error would be an understatement! After another two hours of researching the error online, restarting both Xcode and my computer numerous times, the error had changed from a “general error” to an “IO error”. Eventually I came across a conversation on one of the developer community websites in which it appeared that the error was due to Apple’s servers having a temporary glitch and that all I could do was wait.
So, I waited for the next four hours until, at 2am on the 1st September, I finally received the message I had been waiting for: my app had passed validation and had been submitted to the App Store for further review.
Two weeks later the app had been approved and became available for download. It had been an interesting journey, and I had learned a lot.
To commandeer a quote from Lord of the Rings, I learned that one does not simply walk into the App Store...
Based on the Isle of Wight, Gem Barrett started Squeaky Clean Creations in 2010 at the age of 24 with the aim of providing high quality design and development services. By combining creative flair and a high standard of proofreading, Squeaky Clean Creations ensure that every piece of work provides the best possible impression. Initially offering graphic design and web development services, this year has seen Squeaky Clean Creations branch out into the app development market with the release of CalmCall in Apple's App Store in September. In addition to running Squeaky Clean Creations, Gem is also an Open University student currently studying software development as part of her BSc (Hons) Computing, IT and Design.
Image of the Apple Store courtesy of tiseb.
Sign Up to our Newsletter
So you enjoy The NextWomen. Why not sign up to our monthly newsletter?
You get a Letter from the CEO :-), the chance to catch up with the best of our recent articles - and some extra things we throw in once in a while.