The Software Product Myth

Most developers start as salaried employees, slogging through code and loving it because they never imagined a job could be challenging, educational, and downright fun. Where else can you learn new things every day, play around with computers, and get paid for it? Aside from working at Best Buy.

A certain percentage of developers become unhappy with salaried development over time (typically it’s shortly after they’re asked to manage people, or maintain legacy code), and they dream of breaking out of the cube walls and running their own show. Some choose consulting, but many more inevitably decide to build a software product.

“After all,” they think “you code it up and sell it a thousand times – it’s like printing your own money! I build apps all the time, how hard could it be to launch a product?”

Against All Odds
And most often the developer who chooses to become a consultant (whether as a freelancer or working for a company), does okay. She doesn’t have a ton of risk and she gets paid for the hours she works, so as long as she has consulting gigs she can live high on the hog

But developers who make the leap to develop a product are another story. Building a product involves a large up-front time investment, and as a result is far riskier than becoming a consultant because you have to wait months to find out if your effort will generate revenue. In addition, growing a product to the point of providing substantial income is a long, arduous road.

But let’s say, for the sake of argument, that you spend 6 months of your spare time and you now own a web-based car key locator that sells 100 copies per month at $25 a pop. At long last, after months of working nights and weekends, spending every waking moment poring over your code, marketing, selling, and burning the midnight oil, you’re living the dream of a MicroISV.

Except for one thing.

The Inmates are Running the Asylum
In our completely un-contrived scenario you’re now making $2500/month from your product, but since you make $60k as a salaried developer you’re not going to move back in with your parents so you can quit your day job. So you work 8-10 hours during the day writing code for someone else, and come home each night to a slow but steady stream of support emails. And the worst part is that if you’ve built your software right the majority of the issues will not be problems with your product, but degraded OS installations, crazy configurations, a customer who doesn’t know how to double-click, etc…

The next step is to figure out, between the 5-10 hours per week you’re spending on support, and the 40-50 hours per week you spend at work, how you’re going to find time to add new features. And the kicker is that support burden actually worsens with time because your customer base grows. After 1 month you have 100 customers with potential problems, after a year, 1,200.

And yes, the person you decided to sell to even though they complained about the high price ($25) and then couldn’t get it installed on their Win95 machine so you spent 3 hours on the phone with them and finally got it working only through an act of ritual sacrifice is still hanging around, emailing you weekly wondering when the next release is coming out with his feature requests included (requests that not a single one of your other 1199 customers have conceived of).

But you persevere, and manage to slog your way through the incoming support requests and get started on new features.

What you find is that ongoing development, as with any legacy system, is much slower than green field development. You’re now tied to legacy code and design decisions, and you soon realize this isn’t what you signed up for when you had that brilliant flash of insight that people need web-based help locating their keys.

It’s about this time that support emails start going unanswered, releases stop, and the product withers on the vine. It may wind up for sale on SitePoint, or it may be relegated to the bone yard of failed software products.

The Upside
The flip side to all of this is what you’ve already heard on the blogs of successful product developers.

Once a product hits critical mass you’ve conquered the hardest part of the equation. After that the exponential leverage of software products kicks in and you can live large on your empire of web-based unlocking-device locator applications. It’s a recurring revenue stream that can grow far beyond what you would make as a consultant, all the while creating balance sheet value meaning one day you can sell it for stacks of proverbial cash and retire.

This is unlike your consultant buddy, whose consulting firm is worth about 42 cents (he had an unused stamp on his desk) once he decides to retire.

But there is a dip before you get to this place of exponential leverage and proverbial cash. A big dip. And if you can get through it once, it’s more likely that you’ll be able to get through it with your next product. And the one after that.

Once you make it to the other side, you’ve learned what it takes to launch and maintain a product, and next time you will have a monumentally better chance of success because you are now a more savvy software entrepreneur.

Congratulations! Go buy yourself a nice bottle of wine and sit back, relax…and enjoy answering your support emails.

Start Small, Get Big
Growth Secrets for Self-Funded Startups. It'll Change Your Life.
What you get for signing up:
  • A 170-page ebook collecting my best startup articles from the past 5 years
  • Previously unpublished startup-related screencasts
  • Exclusive revenue-growing techniques I don't publish on this blog
"The ideas and information Rob provides should be required reading for anyone that wants to create a successful business on the web." ~ Jeff Lewis
Startups for the Rest of Us...
If you're trying to grow your startup you've come to the right place. I'm a serial web entrepreneur here to share what I've learned in my 11 years as a self-funded startup founder. Luckily several thousand people have decided to stick around and join the conversation.

For more on why you should read this blog, go here.

35 comments ↓

#1 Sean Tierney on 11.18.08 at 12:41 pm

Rob,
just a hypothetical question here: what if there were the equivalent to the iPhone app store for server software? Developers for apps on the iPhone are spared much of the friction you mentioned (marketing challenges, securing wide distribution, fulfillment headaches, varied platform and runtime support issues). Instead they get to work on new features that add unique value to their app and collect a check each month. What if there existed the equivalent for server apps? Might that bring down the barrier to the critical point whereby a large number of developers could reliably make the leap to living the dream of becoming a Micro ISV and using their domain expertise to write extremely valuable niche apps?

Sean

#2 guruz on 11.18.08 at 1:16 pm

Nice posting.

@Sean: Would of course be nice, but any server is a lot more complex, open and interdependent than the iphone aquarium.

#3 Stephane Grenier on 11.18.08 at 2:46 pm

I couldn’t agree more!

Running a software business is a lot of work, especially early on. But more importantly, it’s more than just coding. And most importantly, you have to decide what needs to be done. That is you have to know when a feature shouldn’t be implemented. When a customer should be fired. When to make the leap of faith and quit your day job, assuming that you’re business will succeed. These are all hard decisions.

It’s incredible how often I hear people saying it’s easy. I’ll just write a software myself and sell it. It will be so easy, I’ll make millions. Truth be told, if it were everyone would be doing it ;)

#4 Arjan`s World » LINKBLOG for November 18, 2008 on 11.18.08 at 5:01 pm

[…] The Software Product Myth | Software by Rob ‘ At long last, after months of working nights and weekends, spending every waking moment poring over your code, marketing, selling, and burning the midnight oil, you’re living the dream of a MicroISV Except for one thing ‘ (read on…) […]

#5 Appraisal Mind on 11.18.08 at 5:03 pm

Nice writing. Doing software business is hard. There are a lot thinks that can go wrong. Developing only one product contain some risk, multiple products can diversify the risk and make business less risky at the same profit.

#6 joop on 11.19.08 at 3:56 am

$2500 won’t let you quit your day job? Move country or city; or start living more efficient.

I see your point though, but for a lot of products that problem is not there. Take webdevelopment for instance; develop a nice product which warrants a monthly fee and get people to sign up. You won’t have those incompatibility problems and if it is the right product, you won’t have (much) support.

And your goal must always be to quit your job *before* releasing the product; launching a product takes investment as you, but not only time, also money. Just make sure you have money from your job to live 3 months without income and then launch your product.

It is dead easy to make money on internet and it will get easier as well; there is no reason to keep your dayjob unless you love what you do there… And there are also services which can manage your complete product selling/support process (depending on the product) for you for a % of the income. Use those if you want to stay on your job.

#7 Karthikeyan C on 11.19.08 at 4:14 am

I enjoyed the article very much.

#8 Jason Annison on 11.19.08 at 4:38 am

Nice article. I’ve done this several times, and *have* made millions. The key is to minimize the support burden.

One specific comment: Do not offer phone support. Every time I’ve helped a customer over the phone I’ve regretted it – they just keep coming back for more. To a request for phone support I now always politely reply: “I’m afraid we can’t offer support over the phone, but I’ll be happy to answer your questions over email.”

Not only does this avoid the hour-long conversations, but it gives the user more motivation to work more out for themselves, since they know they won’t get an answer immediately. The simple act of writing something in an email can also help them see more, in the same way as writing an essay is the best way to learn about a subject. Of course, this only works if your software is usable.

Lastly, watch out for anyone with an @aol.com address…

#9 bitterchick on 11.19.08 at 9:01 am

You left out …and then Microsoft announce the pre-alpha-release-candidate version of a product that does the same thing as yours, restricting your market to people who hate Microsoft and like spending money on software. And then your consulting gig which up-until-then you still kind-of-enjoyed is either taken up with working around all of the problems in the Microsoft product or fielding requests to switch from your product to Microsoft’s because “I’m sure the Microsoft product doesn’t have that problem” even though you’ve tried to explain 253 times that Microsoft’s product has that problem too, only for your product it’s documented in the help file with a simple workaround whereas the only information on the net about the same problem in the Microsoft product is an entry on some Microsoft blog about how their product wasn’t intended to address that use case and they have no plans for addressing it in the next version either.

#10 Rob on 11.19.08 at 9:28 am

@joop – In any major city in the U.S., $2500 won’t cover rent and daycare for 1 child. For many people, relocating to the middle of nowhere is not an option. As a single person, you could certainly live in a closet or move out of the city, but unfortunately (fortunately?) some of us have constraints that keep that from being a possibility.

Quitting your day job doesn’t combat the fact that you’re going to need to support your product. Outsourcing support will a) cost a good chunk of change, and b) leave you with unhappy customers. No outsourced support service can provide the level of service you need as a small software shop. If you know of one, I would love to see a link because my experience with outsourcing support has been very bad.

@bitterchick – nice :-)

#11 Priscilla on 11.19.08 at 10:49 am

Enjoyed the article, Rob. Although I’m not in software, it is valuable when thinking about creating a sustainable form of income through a product. Thanks for the many insights.

#12 Antony on 11.19.08 at 11:28 am

Rob,

Great Jobs! You mention about couple of great points. I encounter quite a fews during the past year.

#13 Elroy on 11.19.08 at 1:05 pm

Rob, that’s an interesting perspective you’ve put some light on over here. Developers (that includes me) always think that they can create a fool-proof software, test and maintain it. Well, almost all good ones always think so. But, there’s always a flip-side to it when you consider your software good enough to earn money out of it.

Nowadays, technical communities inspire developers to create and share (not sell) software. By doing this, you not only help the community in many ways, but also learn from the feedback you receive for your awesome competition. This feedback converts itself into experience and your product keeps getting better. You learn more and finally become experienced enough to make decisions on how to create a sustainable software products. This is however, just one way of thinking about this situation that Rob brought forward.

I hope you comply too, don’t you Rob?

#14 soup on 11.19.08 at 2:29 pm

2500 covers rent,day care for 1, and 2 car notes in dallas. Which I wouldn’t call “middle of nowhere” but maybe that is just me.

#15 Chris on 11.19.08 at 2:47 pm

$2500 is enough to live on for most people, but it doesn’t even replace half of a decent software developer’s salary.

It might be worth quitting the dayjob if you thought you could grow the business and start selling twice as much a month eventually.

#16 Rob on 11.19.08 at 4:26 pm

@soup – Good point.

Although $2500 may go further in some cities, I would venture to say that even in Dallas you wouldn’t opt to survive on $30k with a wife and child when you can make 2x-3x that working a day job. No spouse I’ve met would put up with that :-)

#17 Rick on 11.19.08 at 4:42 pm

$2500? – funny. There are lots of expenses you have to cover if you work for yourself. You loose health insurance ($950 for self, wife, 2 little kids), disability insurance ($350), life insurance, 401K matches, bonuses. You get to pay both halves of FICA and medicare taxes.

And there are the business expenses you have too. Lawyers, accountants, software, hosting, other services, marketing. Make sure you setup a budget and cost everything out for the business and for yourself.

#18 Chandan on 11.20.08 at 3:54 pm

Great post – as a developer-turned-consultant who works on a multiple projects simultaneously (read ‘fixed price’), I’m not too sure about the “doesn’t have a ton of risk.” That being said, I do toy with the idea of having a microISV as well, and you definitely touched upon the very same issues that cross my mind every time I start to think about it.

#19 47 Hats - MicroISV Digest on 11.24.08 at 10:09 pm

[…] Kelley was kind enough to point out this post at Software by Rob: The Software Product Myth (vial […]

#20 Andy Brice on 11.25.08 at 11:02 am

It isn’t easy to create a profitable software company. I got there by:
-using my savings to go full time from the start – I am not sure I could have succeeded with a day job
-getting the first version out quickly and listening to feedback
-relentlessly engineering the software and website to cut down on support calls
-charging >$25 for my product
-working very hard!

#21 Go with Reasons 2 and 6 | nPost Blog on 12.05.08 at 12:49 pm

[…] is getting through the first fifty sales, the ones well before the chasm, when you’re sick of tech support and wondering when the real money is going to show up. The hardest is firing […]

#22 Intelligent Office of King of Prussia » 6 Reasons Why This Economy Is Good For Startups on 12.15.08 at 12:57 pm

[…] is getting through the first fifty sales, the ones well before the chasm, when you’re sick of tech support and wondering when the real money is going to show up. The hardest is firing […]

#23 MicroISVs, Software Products and Startups: My Most Popular Posts from 2008 | Software by Rob on 12.23.08 at 5:02 pm

[…] The Software Product Myth “A certain percentage of developers become unhappy with salaried development over time (typically it’s shortly after they’re asked to manage people, or maintain legacy code), and they dream of breaking out of the cube walls and running their own show. Some choose consulting, but many more inevitably decide to build a software product. […]

#24 The downside of a u-ISV | Pete Ware on 12.23.08 at 9:23 pm

[…] The Software Product Myth In our completely un-contrived scenario you’re now making $2500/month from your product, which doesn’t allow you to quit your day job. So you work 8-10 hours during the day writing code for someone else, and come home each night to a slow but steady stream of support emails. And the worst part is that if you’ve built your software right the majority of the issues will not be problems with your product, but degraded OS installations, crazy configurations, a customer who doesn’t know how to double-click, etc& Share and Enjoy: […]

#25 Revue de presse | Simple Entrepreneur on 12.26.08 at 1:51 am

[…] The software product myth Les ingénieurs ou développeurs qui choisissent de créer un logiciel pour s’affranchir de leur job devenu routinier doivent s’attendre à rencontrer de nombreuses difficultés avant d’espérer en vivre. […]

#26 2009, l’année de l’auto-entrepreunariat ? on 01.01.09 at 6:21 pm

[…] vous avez l’idée de la killer-app du siècle, foncez lire ce billet sur le Software Product Myth.  Après les phases exaltantes de développement, de réussite sur la commercialisation et de […]

#27 Selbständigkeit… warum es jetzt Sinn macht, sein eigenes Ding zu machen « Nicholas Lam-Thien on 01.02.09 at 9:51 am

[…] is getting through the first fifty sales, the ones well before the chasm, when you’re sick of tech support and wondering when the real money is going to show up. The hardest is firing […]

#28 Start Now: 6 Reasons Why This Economy Is Good For Startups | The Daily Anchor | Media tips and tools on 01.05.09 at 5:34 pm

[…] is getting through the first fifty sales, the ones well before the chasm, when you’re sick of tech support and wondering when the real money is going to show up. The hardest is firing […]

#29 Expenses You Don’t Think of When Starting a Business | Software by Rob on 01.07.09 at 10:21 pm

[…] ruffled a few feathers with my recent post The Software Product Myth. The unrest surrounded my statement that making $2500/month from your software product […]

#30 Mark Anderson on 01.08.09 at 10:31 am

Ouch… My life story.

#31 links for 2009-01-09 « Brent Sordyl’s Blog on 01.09.09 at 10:00 am

[…] The Software Product Myth | Software by Rob The next step is to figure out, between the 5-10 hours per week you’re spending on support, and the 40-50 hours per week you spend at work, how you’re going to find time to add new features. And the kicker is that support burden actually worsens with time because your customer base grows. After 1 month you have 100 customers with potential problems, after a year, 1,200. (tags: startups) […]

#32 Jim Foxworthy on 01.14.09 at 4:52 pm

Great piece! Thanks for writing it. Towards the end, you wrote, “There is a dip before you get to this place of exponential leverage and proverbial cash. A big dip. And if you can get through it once, it’s more likely that you’ll be able to get through it with your next product. And the one after that.”

The key to getting through the first and all subsequent “dips” is to get tuned in to your market and their problems. In high-tech we are notorious for building stuff because we CAN, not because we SHOULD.

Do your homework up front and identify market problems that are pervasive, urgent, and people are will to pay to solve. This will reduce your, er, “dippage” (smile).

#33 David Daniels on 01.14.09 at 6:01 pm

Excellent summary. We love stories about guys who made it big by building something and selling a gazillion copies over the Internet with no sales and marketing overhead. In my career in the software industry I’d always expect my development resources to spend at least 50% of their time in a support/bug fix mode after a release, and I’d throttle back expectations on the next release (or product).

As a former software engineer I hate to admit that sometimes the easiest thing to do is build the software. Like you point out, the worst situation isn’t that you didn’t sell any, it’s that you sold one. Then the real resource sink kicks in and your costs far exceed any revenue you earned.

#34 Links w#4 - Liens on 01.20.09 at 9:05 am

[…] The software product myth. A lire *avant* de se lancer dans un projet :) J’ai vécu ça (et bien pire) pendant 7 ans avec LesImpatientes (initialement les Essentielles.net) […]

#35 It’s Easy to Be Great…It’s Hard to Be Consistent | Software by Rob on 11.04.10 at 6:32 am

[…] Then there’s your launch, supporting it, improving it, and building a consistent, ongoing marketing effort that brings in a sustainable flow of people interested in buying your product. This is when it becomes drudgery. […]