How to make iPhone Apps and Influence People Musings on the iPhone development process

23Dec/090

Aftermath of SCM v1.0, upcoming V 1.1, new website and cloud hosting!

Seoul City Metro Ready for SaleAs I thought, this might be the case. Upon releasing the initial version of Seoul City Metro into the wild my work has load only got more intense. Two days after SCM hit the store the main Korean competition app unleashed a new 3.0 release and  a price reduction - and in addition to this almost all the feedback I received pointed towards one or two features I had deliberately left out of the initial release. So since SCM wen't live on the 10th I have been frantically preparing my infrastructure to handle timetables and Google maps (via the MapKit framework). I am also working hard to streamline the viewing, cacheing and organisation of the 'Routes' part of the app.

I'm not worried about implementing MapKit because I have previously mapped all 440 stations and their GPS coordinates - but it's been managing the almost half a million pieces of time table data that has taken so much more time that I had originally anticipated. Although the details of the timetable data are relatively boring, I find the statistics quite interesting.

  • 468,000 individual trains mapped equalling 17MB of SQL data.
  • 1,600 pages scraped, totalling 48 MB.
  • The addition of this data almost quadruples the total size of the app (originally 5.7MB)

This leads to an interesting problem with the app bundle size. Apple limit the maximum size of an App you can download over 3G to 10MB. Personally I think keeping an app (if possible) below 10MB is really important, as it allows your app to capture the impulse purchase. I'm currently considering several options about how to manage this, including providing only the basic data with the app and allowing users to download the additional data as an SQLite adon-on, or by providing a web service that can be queried from within the app. There's advantages and disadvantages in each case (which I might outline in a later post) but in my opinion, most people will only need the first and last trains departing each station anyway.

New SCM Branding

In other news, I've been working with Steven Miller (@yargalot and from TheNetocracy) on some new branding and a new website for SCM and I have to say I'm pretty chuffed at what he's come up with. I had pretty specific ideas in mind when he asked me if he could help design a website and he met all expectations when he came up with a clean, stylish design almost instantly. We spent more time making sure we had the markup optimised for search engines that we did on design elements - and it looks great. The website now exists at http://www.seoulcitymetro.com (previously http://seoulmetroapp.com) and is hosted with a swish new slice purchased the other day from Slicehost (Slicehost Referral link).

With the idea in my mind that I would possibly serve 17MB downloads to SCM customers or provide a XML/JSON feed for individual station timetables - I had upgrade the hosting to something more flexible. Enter Slicehost. With the help of Jacob (@jacobch) we now have seoulcitymetro.com and our git repositories running on a speedy clean Ubuntu Karmic Koala slice. So far we're totally impressed with both Slicehost and Ubuntu and we hope to run more services from this in the future.  I can definitely envision a public bug tracker and documentation wiki for SCM and other upcoming projects.

There's heaps of work to be done! I'm hoping to have the next SCM version 1.1 submitted to Apple by 1/1/10. Watch this space! To the minute updates can be found on twitter by following @seoulmetroapp . Seoul City Metro is available on iTunes for $1.99  iTunes Store (iTunes link)

Switch to our mobile site