Make More Mistakes
prostoalex writes "Eric Sink from SourceGear, well-known in the open-source world for AbiWord Suite, shares his thoughts on starting and running a software business. One of the keys to a successful business, as Thomas J. Watson once said, was to double the rate of failures. Eric Sink tells the story of what mistakes he personally made, what could be avoided, and what's important for geeks to know when starting a software company."
One of the keys to a successful business, as Thomas J. Watson once said, was to double the rate of failures.
One of the other keys I have found to a successful business is to work your ass off. This could certainly be seen as doubling failure rates. Interestingly though in the software business many companies appear to be adopting Microsofts model by releasing all of their failures to the public and letting the public sort them out. Other companies (like Apple) certainly have their share of failed products, but they do not foist them on the public. Rather they work them until they are good, or they do not release them. Also, often I have seen in my consulting, businesses that start out strong through insight, hard work and luck get run into obscurity through the next round of managers who take over the company. (it also happens when parents turn their businesses over to their kids who do not have nearly the same work ethic.
Visit Jonesblog and say hello.
"Fail fast" was the mantra of Tom Peters in the late 80's. I believe that he has since denounced all his teachings of the 80's and early 90's in order to cash in on a whole new "chaos" philosophy.
I agree with the whole fail fast notion. Try stuff as fast as possible to see if it will work. I think we see this philosophy played out in things like RUP and Extreme Programming.
I guess my point is that this news is 15 years old. Someone should search the Slashdot archives for a dupe from 1989...
"If you want to improve, be content to be thought foolish and stupid." - Epictetus
I worry about the potential of any new software company nowadays. Personally I know 2 people who attempted to start their own business. One started a software consulting company, the other a restaurant.
The software consulting company charges thousands of dollars for any gig and the business comes WAY too slow. I am talking once a month on the best case scenario. The other person started a restaurant and makes couple thousand daily. Just on take outs alone, $30 + $30 + $50... you get the idea, it adds up fast in volume. People can't get away with not eating. They can get away with no software upgrading.
Basically if I had the money, I would start a gym, a club, a bar, a restaurant, a stripe club... anything but a software company in today's market. It's a shame to see globalization and everything IT related go so downhill.
what's important for geeks to know when starting a software company
Easy that one:
- You can be 99.999% sure you won't become the richest, most hated guy in the world, or create the ROMs of an icon computer with a fruity name and end up teaching smalltalk to children.
- Out of the remaining 0.001%, you can be 75% sure you company will fail miserably, just because your products don't stand out, or because your services won't be different, or because your prices won't be attractive.
- Out of the remaining 0.00025%, you can be 99% sure your beginning of a success will attract shitty venture capitalists who'll try their best to make a fat pile of cash on your back by telling you to "go public" and "grab marketshare", ruining your chances of being profitable in the long run like you originally planned by growing organically.
- If you're part of the remaining 0.0000025% who'll manage to make an honest, sustainable, sane affair in the software industry despite the odds, you damn well deserve a medal.
"A door is what a dog is perpetually on the wrong side of" - Ogden Nash
One of the things that amazed me about my experiences in running various different types of companies is how common-sense can often take a back-seat to "groupthink", doing what others tell you you should, without necessarily considering whether you think it is a good idea.
Investors can be particularly dangerous. The problem is that many investors like to see themselves as having a mentor or sage-like relationship with entrapeneurs. Since they are the "money", entrapeneurs are often quick to indulge this fantasy and the end-result is that people whose company-running experience might be solely based on what they learned on the golf course from other similarly well-informed investors, find themselves a willing audience among those who might actually know what they are talking about.
Investors aren't the only problem. There is a thriving ecosystem of people within large companies whose primary talent is climbing the corporate ladder, but whose actual contribution to profitability is highly questionable. During the tech boom many such people decided that they would try their hand at running small tech companies, often they would be brought in by investors to replace the entrapeneur-CEO, in the hope that they would be more "seasoned" (whatever that means).
The results are generally disasterous. This happened in one of my former companies, and the guy was an idiot. He spent $100,000 (of $3MM funding) on a launch party just weeks after 9/11/2001, $50,000 on an "image consultant" buddy of his, and christ knows what else. It rapidly became apparent that he was incapable of doing the job he was supposed to do, but fell back on the tried and tested (big company) strategy of paying other people to do your job for you. With limited funding it didn't take long for us to run out of money.
Anyway, I could go on, but the bottom line is:
don't accept any advice on how to run your company unless it makes sense to you, irrespective of what anyone says.
About half of this seems to be telling us that he should have used pre-built Microsoft(tm) technologies instead of rolling his own.
I wonder how this article would have been different if it were not posted on MSDN, where the self-interest of Microsoft in its current context is, um, obvious.
D
In his dig at the Java platform he mentioned that "you shouldn't use bleeding edge technologies".
This illustrates one of the dangers he did not list - "Don't learn the wrong lessons".
I built a Java/Swing app around the same time. It was a pretty complex user app, not just a simple program - and we managed to completely satisfy the clients and make the program perform acceptably on a very low-end target platform (PII-133 with 32 MB of memory). For what he described (replacing a complex spreadsheet) he should have been able to complete the task.
Why did our app work and his fail? Because we knew Java and Swing well by that point, and knew what was possible with some time spent optimizing. We had a plan in our head for how to reach a target level of performance that would be accepted and more than met that goal.
The lesson he should have learned was "Know your technology well before you embark on a project". The reason why it's so important to learn THAT lesson is that it applies to any project, not just ones using "bleeding edge" technologies. The only difference between an established and bleeding edge technology is the level of support you MIGHT be able to find. And that is not enough of a difference to totally affect either failure or success.
I think the most appropriate quote on this matter is one from Mark Twain:
"We should be careful to get out of an experience all the wisdom that is in it -- not like the cat that sits on a hot stovelid. She will never sit down on a hot lid again -- and that is well; but also she will never sit down on a cold one anymore."
"There is more worth loving than we have strength to love." - Brian Jay Stanley
But one thing he doesn't explain is where his existing money came from. Where did that $150K come from? How did he pay for his existing developers through all this turmoil? How did he pay his own way?
I think the one caveat he needs to preface this with is:
"Before reading any of this, know that you should have about $2,000,000 saved up. Don't have it? Stop reading - you can't even make the mistakes described below anyways."
Right. You wouldn't want stuff to be easy to find, have sample code that actually compiles, runs AND does what it says, and actually stays up for longer than an hour at a stretch. Try this example instead.
Sorry, just bitter. Oracle's docs are a heaping pile of crap.
DO NOT DISTURB THE SE
"Success comes from good judgement.
Good judgement comes from experience.
Experience comes from bad judgement!"
Make lots of mistakes, but, more importantly, learn from them all.
Jeff
It's a development model, nothing more nothing less.
Anyone that thinks that it's a business model and moves forward from that premise is certain to fail and most likely spectacularly. Red Hat's not in the "Free Software" business, they're in the software and solutions business- they just us a LOT of Free Software to help accomplish these solutions they sell. There's other examples.
I am not merely a "consumer" or a "taxpayer". I am a Citizen of the State of Texas
This is a logical fallacy known as a hasty generalization. You're arguing that because one open source project failed to sustain a business model, all open source projects will fail to do so.
That may be true, but your argument fails to support it.
how to invest, a novice's guide
That's pure unadulterated bull- and anyone with business sense KNOWS this.
A market with no competition may not be a market afterall, but it may also be an untapped, unsold to market as well. You take a risk entering into a market with nobody in it- but someone has to be first into it. Let only the big players or the bold ones get into there first and then collect the tablescraps? Bullsh*t. Utter bullsh*t.
Anyone that takes this man's advice to heart is setting themselves up for limitations, etc. that may actually doom your business as much as he did his for the early part of it's existance. Better yet, he's currently making products that compete with SourceSafe- which means he's got PVCS, ClearCase, Perforce, and Seapine to deal with as competitors as well. I hope he's got a MUCH better product than all the above and a LARGE budget for advertising and all.
I am not merely a "consumer" or a "taxpayer". I am a Citizen of the State of Texas
There is no one open source business model... in fact, open source tries to be as business agnostic as possible. What open source is, however, is an excellent software development model. There's plenty of people like my employer who use open source technologies and understand my obligations to patch, report bugs, and otherwise support the software we are exploiting. It helps us get our job done.
Actually, things might work, but not with a word processor,
the GPL is a very strict license, relicensing is the key here,
mysql and TrollTech got it right, either GPL or if you want to go the non GPL route, pay.
That doesnt work for a word processor but it definitely works for developer tools.
For technophiles, failing fast (working harder) has another distinct advantage: it's more fun. It certainly beats waiting on management/marketing types or worrying about the burn rate. Paychecks are ephemeral and should be treated as such. A good hacker ethic can, however, result in a lifetime of interesting things to do.
First entomology, then virology, and finally bioinformatics systems. Bugs follow me wherever I go.
For technophiles, failing fast (working harder) has another distinct advantage: it's more fun.
Oh, I absolutely agree. My point was simply that many people have no idea how hard it is to actually run your own business. You cognitively never leave it and are always thinking about it (why I like science, because like your own business, one can always think about science at all hours of the day). Some folks simply like the idea of being a business owner, but they dont actually like working that hard. A work ethic is pretty hard to teach someone. They either have it or they do not.
P.S.....I like your sig.
Visit Jonesblog and say hello.
To all adoring MSDN fans, I've *made* it! You TOO can *make* it! Here's how:
...and here are some mistakes I made along the way: .Net)
1) Used some other language, rather than one of Microsoft's
2) Bought software^H^H^H^H^H^H^H^H^H real estate instead of leasing it (like Microsoft's
3) Used a development model, other than Microsoft's
4) Developed a lousy, unique-architecture of an application, rather than yielding to Microsoft's
5) Developed a for-the-clueless development platform for a clueful development crowd, rather than just yielding to Microsoft's tools
6 & 7) Trusted people, rather than work everything through attorneys (which, by the way, one must trust) -- like Microsoft does
7) We tried to build a better platform, rather than use Microsoft's
[end of HOWTO]
Now, go out and make your $300!
Doesnt seem like a recipe for success to me. I have always found learning from mistakes, and conciencously avoiding making them, to be a better way to do things. 80% of mistakes are just bad planning.
Manipulate the moderator system! Mod someone as "overrated" today.
As a rabid business geek, I want to hit people who suggest openign their own comapny because they can code.
/. postings. I'll get to that at the end of this post.
Why niot just wait and see if they fail on thier own? You might just discover that the code monkey in front of you not only knows how to code, but also knows enough accounting, law and management to be able to hire the rest that he needs to succeed. You business types sget so incredibly defensive over what you think of as your territory, but I guess that's part of what makes you a business type.
A business is no more writing code than selling cars is making a sandwich.
That's one of the poorest analogies I've ever heard. Did you mean to say "A software business is no more writing code than selling cars is building them? Perhaps not. That doesn't quite support your argument as well as your expensive transportation device to inexpensive foodstuffs analogy.
I don't care what you make/do/sell... there's a LOT more to any successful business than non-business people
I can only hope that it was a mistake that you did not complete the sentance with the word realize, because then you would have made the most true statement that I have ever seen in any one of your countless and usually inane
you writing OSS projects that never see the light of day in your bedroom is NOT a business
What programmer working on OSS projects thinks of thier coding as a business? If it were a business, then they'd be doing it at the office. If the project doesn't see the "light of day", then it's not very Open Source, is it? Just because you are proud of your business doesn't mean that others are envious of you (perhaps other business types, but I doubt that you generate much envy no matter who the person is). Most OSS developers are under no illusion that they are running a software business, or that they would want to. If they thought that they wanted to sell software, I doubt that they would have chosen OSS for thier projects. If they do run a business that involves developing OSS software, I'm pretty sure that software sales are not where they intend to make thier money.
I actually had one chick tell me a few months ago that my business is successsful because "I got lucky". That was the closest I ever came to hitting a woman.
It sounds like she was a little too close to the mark if she could elicit such a reaction from you. There's a little bit of luck involved in every successful business, usually being that the business person was lucky enough to have family that had the cash to fund thier business venture until it could carry on without support. It's mighty white of you not to hit that poor defensless woman. The fact that you considered committing an act of violence over what was very likely a jibe tells me a lot about your character.
Running a successful business is difficult in a way that almost no other undertaking is difficult, and the difficulties involved are more ambiguopus and unpredictable than are encountered in any technical field. But being an asshole is not neccissarily one of them.
If you want people to believe that you are as successful as you claim, then you'll have to stop pretending (to yourself, no-one else is buying it) that everyone wants to be you.
Read, L