Archive for September, 2013

5 lessons learned from starting and running an indie software business


September 17th, 2013

It’s been a few years since I’ve had a “real job”, and almost 4 years since I started selling my first product, Arq. I’m amazed at how much I’ve learned through this process. I see now why the conventional wisdom is to “just do it.” Nobody’s going to map out the plan for you. It’s all up to you.

In preparation for an interview I made up a list of lessons learned. Without further ado:

1. People don’t want to change the front end they’re using

Don’t try to replace it. I learned this by spending a year (in 2008) on an application for multiple people (specifically me and my wife) to work on a shared photo collection. I built it because I was tired of plugging the camera into both computers, worrying about duplicates, etc. It had most of the features of iPhoto, plus it automatically synchronized albums of photos among our computers and a web site. No more waiting around for uploads! At the end of 2009 I said to my wife, “Great news! The app is finally ready for us to start using it.” Her reply (she was a little stressed at the moment): “Does this mean I can’t use iPhoto anymore?”

Hmm. If I can’t get my own wife interested in it, that’s not a good sign!

Eventually I realized I should just build something that copied new photos around to both our iPhoto libraries, and that would get us most of the way there. That product is called SyncPhotos. It does 1 thing, it does it well, and it’s been pretty successful so far.

2. Bug-free products make support almost a non-issue

I used to worry that once I got a number of customers, supporting them would take up too much time for me to move the ball forward on new releases and new products. The only strategy I had to counteract this was to ship products that are as simple as possible and as bug-free as possible. It seems to have worked so far. As a side benefit, I found out that people much prefer super-simple products that don’t have bugs :)

3. You don’t need an enhancement-request database

I heard someone from 37 signals once say that they don’t bother tracking enhancement requests because if it’s important enough, people will continually ask for it. It sounded arrogant to me at the time, but he was right. Version 2 of Arq was easy to plan, as was version 3. I just added the items that I most frequently got emails about. If no one is emailing asking for more, that might mean no one cares, which to me would mean moving on to a new project.

4. Super-fast email response adds tremendous brand value

I seem to have developed a great reputation simply by being very responsive to customers. People have tremendous patience and understanding if you just take the time to communicate with them. I try to answer emails immediately, though lately I’ve been trying to do it only in the early morning and late afternoon, so that I can get more programming done.

I don’t understand why any company would outsource customer support. Talking to customers is the only way you’re going to find out what customers want (to buy)!

5. You’ve got to enjoy helping people

If your passion is putting great software out into the world that makes people’s lives better, people can tell. They can feel the love you’ve put into the product, and they’ll come to love it too. They’ll tell their friends. 

But if your passion is just making money, people can sense that as well. They won’t love your products as much, and they won’t tell their friends as much.

There’s so much bad software in the world — you can make a difference by adding some great software. You’re the boss, so there’s nothing stopping you. Just do it!