09.08.2015

Earlier this summer, Brent Simmons wrote an article about the current state of iOS software development:

The platform is awesome. We love writing iOS apps. It’s fun and massively rewarding in every way except monetarily. As a craft — as a budding art form, perhaps — it’s juicy.

He’s right. Even as the haze of the gold rush mentality finishes lifting, more and more people are attracted to app development — hobbyists, indies, and professionals alike. Despite the (poor) economics of the App Store, an increasing number of developers are building an increasing number of apps every day. Apple boasted over 1,500,000 apps totaling over 100 billion downloads at WWDC this year.

It’s not hard to see why. It’s a form of creative expression available to those who are more mathematically, less artistically inclined. It’s building something with your hands, seeing a form take shape you as you work — 21st century sculpting. It’s a field with expansive depth and breadth, constantly hurtling forward at incredible speed. Technically, it has never been easier to build software at any point in history than it is today. Our integrated development environment is provided free of charge. We start each application with a buffet of potential frameworks to choose from, a tremendous accumulation of prior work done by incredibly intelligent people. We barely even have to manage memory anymore. Who wouldn’t want to write software?

But Brent’s warm and fuzzy ‘do it for love’ sentiment is ruined for me by this flippant line toward the end:

What’s more likely is that you’ll find yourself working on a Mobile Experience for a Big National Brand(tm) and doing the apps you want to write in your spare time.

Don’t check your passion at the door. If you are building software, your responsibility as a developer and as a citizen of the platform is not lessened by a project that isn’t your own. Inside the indie software bubble, consulting is often considered a dirty word — an insult to the purity of focus, to building a singular product, your product. It shouldn’t be. The common thread that connects us all — the weekend code warriors, the late night tinkerers, the nine-to-fivers — is passion, the aforementioned love of building software. There is beauty of purpose in building great software, be it a beloved RSS reader or the Target app. When it’s not yours, it may not always be beautiful, and you may not always win the fights to make it the best it could be, but when it ships it will serve a purpose and make people’s lives better.

Yesterday, I spent part of my Labor Day working on a fun side project that’s unlikely to ever make significant money and loved every minute of it. Today, I went back my job as an iOS developer for a consulting company — and I loved every minute of it.