Monthly Archives: June 2013

All the Apps Have Been Written

“All the marketable software has already been written.”

That sounds like a true enough statement. How am I going to make any money writing software when all the app ideas have been taken and the established software companies are already controlling the market? What software can I write that will allow me to earn a living?

Of course I said this in 1982 when I was mainly doing contract development on Apple ][, CP/M, and the newly popular PC-DOS machines. There were multiple word processor, spreadsheet, and database apps already in the marketplace. People rarely bought a computer for fun; they had to completely justify the expense.

I had convinced myself that I couldn’t make enough money in the shrink-wrapped software1 market because there weren’t enough customers to go around. I was doomed to contract development for the rest of my life. If only I had started a couple of years earlier before all the good software had been created.

Looking back, I see just how foolish I was. I let my own fear cloud my vision. There was plenty of room for new app ideas and the existing apps weren’t that perfect that they couldn’t be replaced. At the time, dBase was the most popular database tool and I made a decent living writing apps in it. The truth is that it was a limited piece of crap and I had written my own database tool with my trusty Aztec C compiler that was better in many ways. I just didn’t think I could sell it. I was only one guy and wouldn’t even own my own computer until the Mac came out in 1984.

There couldn’t have been more than 100 popular apps back in the early ’80s. Sure, distribution was much more difficult then, but I didn’t back off because of that. My fear was based on rejection. What if I spent time writing a program—a common term before “apps” was coined—that no one bought? Could my frail ego take it? And what about the wasted time? I needed to earn real money and be a responsible adult.

I want to take a time machine back to when I was 20 and Gibbs-slap2 myself… hard.

Fast forward to today and I hear similar comments from other developers. They see app stores with hundreds of thousands of apps and toss up their hands. It can be hard to look past the numbers. It’s also easy for an app to drown in the growing flood that is the Apple App Store.

Ignore all that. Ignore fear. Ignore the odds. Ignore the naysayers. Find your passion.

What does passion have to do with success? Everything. The most successful people in history were deeply passionate. They were divisive, flawed, and left a trail of failures in their wakes, but their passion kept them moving forward.

I wrote some advice in an interview with App Camp For Girls recently, “Find something in your life that is broken and write software to fix it.” The best software is personal. It’s something you need. It heals a wound in your life and makes you happy.

When you are doing client work, you are (hopefully) driven by a desire to deliver the best product you can for that person or company. Your reputation is on the line and you want referrals and repeat work.

When you are writing an app as an indie, you don’t have that same motivation. As a software developer, riches and fame are in no way guaranteed. Your motivation has to come from within because external motivations fade too easily. When you are struggling with a complex pattern or bug, knowing that the effort it takes to find a solution might make money several months in the future is horribly weak incentive. It won’t drive you to pull an all-nighter or push through days of feeling like an idiot.

I wish I had gotten paid for feeling like an idiot. I could so retire right now.

But if it’s personal—if you are curing an ill of your own—then your motivation breeds internally. Making money becomes a secondary motivator. When I started No Thirst Software in 2006, I began with Debt Quencher—a snowball credit card debt reduction app. Why? Because I had debt that totaled nearly $80,000 and the developer that wrote the app I was using disappeared along with his app.

It was very personal. I was in pain and I knew others had to be as well. I couldn’t be the only guy with a Mac trying to find a solution to eliminate my credit debt.

After shipping Debt Quencher, I asked myself what other software would I like to have—what software was causing me pain? Quicken. First, I tried to replace it with apps already available for the Mac, but none fit my needs. They all were annoying to use in one way or another. Additionally, most of them managed budgets in the same way—the way that contributed to me to become tens of thousands of dollars in debt. I didn’t love any of them.

I hated how Quicken didn’t let me select multiple transactions to adjust them. It annoyed me no end that I couldn’t tell how much I had left to spend without running a report. The available apps either cluttered my screen with dozens of windows or limited functionality. I knew I could do better. So I designed MoneyWell to fix all those irritations from other apps.

After my research, I was sure that I wasn’t the only person unhappy with the state of personal finance packages on the Mac. How many others were in the same pain as I was? If I can cure this pain my life, maybe I can help them as well.

It took ten months to design, acquire funding, and ship the 1.0 release. In those months, there were dozens of episodes where I felt too stupid and lacking the Cocoa skills I needed to get MoneyWell completed. I’m sure my wife was exhausted in her roles as cheerleader and therapist. It’s a damn good thing that I made this personal.

These apps became as much an extension of me as my own children. They were being created to improve my financial future. I wanted a cure for my agony and because I wasn’t just doing this for a paycheck, I would push past every wall that appeared before me. I was a on a mission.

In the seven years since this journey began, I’ve had to fight against some incredible odds. Technology doesn’t stand still, which meant going back and redesigning and rewriting my apps. I’ve made plenty of mistakes during those years and have had to humble myself so many times that I’m surprised I am left any ego at all. My biggest motivator was my relationship with my apps. Because they have been an integral part of my life, I was able to continue to work on their code. If my only motivation was external, I probably would have given up long ago.

As it is, I haven’t and my apps have changed my financial future—directly by my own use of them and indirectly by thousands of others buying them. And I’ve only scratched the surface. There are half a dozen related pains still in my life that I know I can cure and I’m dying to work on those apps, too.

What ails you? What apps do you use today that piss you off? What apps are incomplete or missing from your favorite device (mine being my iPad)? Make a list. Pick the most personal ones and load up Xcode. Trust me, there are thousands of apps that haven’t been written yet.

Developer, heal thyself.


  1. Before app stores, having your software boxed, shrink-wrapped, and sold on computer store shelves was the best way to make a living
  2. Fans of NCIS get it