Joel Spolsky has a lengthy post on what is required for a software business. He starts off with a parable about a programmer sitting along in his apartment crafting code and eventually wondering why he’s not a financial success.
Can you imagine a plumber wanting to go out on his own and starting by soldering pipes together in his garage? Or a lawyer opening a practice by writing briefs hoping a client will walk in and need one she’s written?
But I bet you can imagine a musician who wants to make the big time, yet spends all his time alone in a room playing guitar. Or an actress who thinks taking another acting class will be the key to fame.
Why is that? There are some things people do for love of the craft. Software is one, so is music and acting. So also is gardening – but you rarely see someone who believes they can make a fortune from their garden.
It’s also true that people pay for software, and music, and acting (though not so much for other people’s gardening). This makes it so easy to mistake the business for the craft. And all the more tempting to do so when books and articles loudly proclaim “Do what you love and the money will come.”
Unlike a craft, a business is fundamentally a relationship (or at least a transaction) between two people. If you’re the provider, then the other person has to be the customer. And like a conversation the content can be of varying quality on any subject and it will still be a conversation as long as there are two people. But when there is only one person, no matter how good the quality of the content, it is not a conversation.
As Peter Drucker said decades ago, the purpose of a business is to create a customer -Â not a product. Joel’s essay serves as a reminder of what else is needed to build a business using software as a product.
Takeaways:
- Just because you love it and you’re good at it, it’s not a business.
- Conversely financial success is not just about how good you are at making your product.