Adopting Three20
My second internship at Facebook, simply put, rocked. From September to December of 2010 I was given the opportunity to work on a number of kickass projects on the Facebook mobile team.
One such project was Three20.
Due to my experience with Strips on my previous academic term, I had a fairly solid grasp of the framework that powered Facebook's iPhone app. But anyone who has used Three20 knows one thing: it was (and still is) in dire need of documentation.
Some background
Joe Hewitt, the developer behind tools such as Firebug, developed Three20 specifically for the Facebook iPhone app. He then open sourced it on GitHub, and since then it has skyrocketed to the top 10 charts for popular forked and popular watched, with 321 forks and 2290 followers at the time of this writing.
Simply put, this framework is watched by a lot of iPhone developers.
Joe's departure
Midway through my internship, Joe Hewitt posted his farewell to the iPhone community.
It caused quite the stir.
For me, the biggest question after his departure was what would happen to Three20. In November the framework still didn't have a consistent source for information, so I built Three20.info.
Three20.info
The site is composed of three primary sets of information: auto-generated doxygen documentation, a blog, and detailed, article-like documentation of the Three20 features. The site currently reaches over 5000 developers per month and is completely open source, making it possible for anyone to contribute.
Cleaning the framework
My work on Three20 since adopting it has involved a large amount of dirty work. Documentation, stylistic cleanup, and tearing apart a spiderweb of dependencies have been the highest priorities. In the near future, I will also make available a complete rewrite of some of the library's internals for handling tables, as well as providing the first iteration of support for the iPad.
Project Profile
General
- Time spent
- Project maintainer:
November, 2009 to now - Team
- Joe Hewitt (retired)
- Jeff Verkoeyen
- Owen Yamauchi
- Many other contributors