This year saw me release my first personal iPhone app, which is now available as a Universal iPhone and iPad app. Last November I decided I wanted to create an iPhone app for Beanstalk.

At the time I wasn’t sure I’d be able to develop all the features I wanted myself without help but I’m pleased to say you can download it from the App Store right now and little help was sought. I have had a few days training on iPhone development thanks to 383 Project. Everything thereafter has been self taught, just like everything I know about web development.

While some people would sit down at this point and go through tutorials & read books. I have never found a method as good as sitting down and getting stuck into the actual project. While developing Magic Bean, Google, GitHub and various iPhone development sites/forums proved to be invaluable. If I wasn’t sure how to do something then a quick search returned the answer I was looking for. This new knowledge was then integrated into the app when/where needed.

As with most things mistakes are made and you learn from them and improve. There were a few instances while developing Magic Bean that I removed part of the existing code to improve it not only for my benefit down the line but also for Magic Bean users. As you learn new stuff you pick up better methods to do tasks that you had previously completed. An example of this came in v1.3.1 of Magic Bean. The update included a complete re-development of the way Magic Bean makes requests to the Beanstalk API, this not only improved the speed of the app but also improved stability when multiple requests were made. I wouldn’t have had the knowledge four months ago to do this from the off which just shows that my knowledge of iOS development is growing.

I am definitely more comfortable with more advanced iOS development compared to before I started Magic Bean. Not only that it helps you to get a grasp on how long tasks will take that you hadn’t done previously done.

I found a quote from Aristotle (a Greek philosopher & scientist) which pretty much sums this post up.

I am looking into a few more app ideas so watch this space!