Black Pixel is the new home for NetNewsWire. There’s nothing held back: they own the name, the code, the websites, everything, all versions.
The Daring Fireball interview tells a story of difficult design decisions and the intense stress of being the sole developer of NetNewsWire for Mac OS X, iPhone and the iPad.
Brent has been working on NetNewsWire for most of the last decade. His efforts are responsible for teaching an entire generation of Mac users about RSS. NetNewsWire premiered during the early releases of Mac OS X and has gone through several versions.
Even before the iPhone was announced NetNewsWire needed a near-complete rewrite, but the lure of being in the App Store on Day One put off any plans for a revised code base. Since Brent already knew he wanted to rewrite his desktop app, he wrote NetNewsWire for iPhone without sharing any code from NetNewsWire for Mac. Future releases of both versions of NetNewsWire were developed independently, and the stress of developing two independent apps only intensified when the iPad was announced.
I decided NetNewsWire for iPad should be in the App Store on Day One. I created an entirely new third code base for the iPad versions, since I wasn’t willing to build on either the Mac or iPhone code bases, since I wasn’t happy with either of them. At this point I had three completely separate code bases.
Since then Brent has made efforts to consolidate the code of all three versions, most notably with the release of a new product, NetNewsWire Lite 4.0, that would be the basis for the unified code.
Earlier this year NetNewsWire Lite 4.0 for Macintosh shipped. That was the first app to use the new unified code base. It was to be followed with NetNewsWire 4.0 for Mac (full version) and major upgrades to the iPhone and iPad versions. But, despite having a unified code base, there was still a ton of work to do to make all those apps.
In the world of NetNewsWire “Unified code base” means unified networking, threading, database, XML parsing, and so on. It is all under-the-hood code. There would have been very little shared user interface code, and a long road of work ahead for Brent before strong updates to any of the unified products would appear.
Brent admits that
users don’t actually care one tiny bit about shared code. Users want great software. And the thought of killing off the iPad and iPhone versions to concentrate on the Mac app was a selfish idea, not in the best interests of users or the software.
Brent should be applauded for doing the right thing for his users and making the hard choice of handing off NetNewsWire to a capable team of developers. In some ways developing an application from scratch must be like nurturing a growing child. I imagine it is very hard to give the care of that child to someone else especially after that child gave you your first satisfaction as an accomplished developer.
The question still stands whether or not a lone developer can single handedly produce great software for Mac OS X, iPhone, and the iPad simultaneously. Brent admits the mistake of not adopting an unified codebase earlier hurt his chances, but even with a shared code base developing three uniquely different applications is a lot of work for any accomplished developer. I look forward to the future of NetNewsWire, and the ambitious, although hopefully maintainable, projects Brent Simmons has ahead of him.