I have finally created my first iPhone app and it’s only taken five years. I've wanted to build an app for some time but have faced several challenges: time, learning curve and an idea. I needed the right mix, especially an idea I was passionate about, to make this a side-project I would enjoy and be challenged by.
My new app, Dew, let’s Londoners find great coffee nearby. It's simple, meant to be lean so I would have enough time to ship it, with only a few views (the home screen, nearby map, list, cafe and cafe map).
In making Dew I avoided creating a backend system and used Parse. This allowed me to focus on finally learning Objective-C and translating my design into a working app. Treehouse had also helped and one set of tutorials focused on building an app with Parse. There were other challenges as a result. The data browser on Parse can be frustrating to use. When Dew becomes popular, the great number of requests to Parse will also take a toll on my bank balance. This was one reason I decided to charge the minimal price for this useful app (the other reasons being the cost to join the developer program, and the time and effort to make and keep updating the app).
On the 'front-end' I had mockups and a design I was aiming for, but I adapted it as I learned the limits of the iOS SDK (and mine own ability to customise). For example the two features of the app, to find cafes by Map or List, are accessed from the main screen using the Modal segue instead of with a tab controller pushing the views in. This was due to a limitation with the navigation controller, an aesthetic decision to give the home screen a more visual and animated design.
Learning to code is not for every designer, and it wasn’t a cake walk for me either, but I pressed on. And there are many learnings I can take from my side-project such as narrowing the basic core app to a feature set I can actually complete. Dew started as a grander project, which may someday come to light, before I did a mini-pivot and focused on one aspect of the original app and something I enjoy, coffee. The original aim of the bigger app was to learn Obj-C and put an app in the store. I created a prototype then focused on gathering the data needed to power the app. It was at this point that I realised I would need a lot to complete the project. So the app’s focus narrowed and I’ve successfully shipped. In fact I was on a break and getting a coffee when a conversation with the barista inspired me to return home and make the change.
The process has also been a good learning experience for the next app, especially how I will design the UI. But Dew will also need to be maintained, with frequent updates to the content as new cafes open around London, and feature improvements requiring updates to the App Store. I may even decide to learn Android programming and bring out a version for those handsets.
As I've discovered, pulling data from third-party sources can sometimes require just as much work as going native. I wanted to properly curate the cafes around London so I've assembled the list myself, and therefore visited a lot of coffee shops throughout the city. This has also been a good opportunity to explore London.
Finally a little backstory behind the name. Coffee houses first came to London in 1652 when Pasqua Rosée opened his coffee house located in the City not far from present-day Leadenhall and the Bank of England. Rosée is also French for dew, and the process of brewing coffee is very much like harvesting dew from the bean. My own ancestors operated a coffee house in the 1850s a few years before the decline of those establishments around the growing metropolis. Although they were 200 years late for the coffee 'fad', I hope my app reaching the App Store does not signal the decline of apps. At least for now I think I'm safe.