I’ve recently completed an iOS project where I decided to use Three20 to implement a launcher style view.
I’d read about a lot of apps that use Three20 and thought it would be a good framework to get the hang of. Little did I know the struggle that I would have.
The first thing I had trouble with was finding good documentation. There seems to be a lot of example around the web on all sorts of Three20 stuff but none of it is really catered for beginners. I struggle for a long time just trying to get it installed and working properly. I could’t even find a simple up and running tutorial.
The second thing I had trouble with was getting community help. I subscribed to the Three20 mailing list and also joined the irc channel. Numerous times I posted asking for help on the mailing list only to have it go unanswered. My attempts to start conversations and ask for help on IRC also failed. I even sat in the channel for a number of days, every so often saying hi or hello, but no-one replied.
In the end I gave up on the mailing list and also IRC.
I stumbled my way through the app development process all the while feeling like I was being held back by Three20 rather than being empowered. It got to the stage where I felt locked into using Three20 due to my use of it URL navigation scheme. I did try to find an easy way to remove Three20 from my app but that also was a struggle that I gave up on and just battled on.
In a way it did make me learn it better, but overall I’ve hated the experience and its actually turned me off ever using another complex framework again.
In the future I’ll be sticking with simple frameworks that do a very specific thing. For everything else I’ll use the native iOS API’s and manually build what I need. At least the I know I’ll have more luck with finding help if I need it.
Perhaps once my skills get better, using Three20 (or Nimbus) will be a easier. I highly recommend beginners steer clear of it though.