Ask HN: Why are developers so obsessed with starting their own business?

39 points by gillyb ↗ HN
An observation I have made for quite some time is that 90%, or maybe even 95% of the developers I know are always obsessed with working on their own side-projects with the hope of one day turning it into a full-blown start-up, or at least making some passive income from it. Many of my non-developer friends, never even think about this. Some of them are thinking about new ideas to implement in their job, but never with the same obsession that developers seem to talk about it. (I am a developer as well, also obsessed with the idea of turning one of my side projects into a comfortable passive stream of income or maybe a startup one day)

52 comments

[ 2.6 ms ] story [ 112 ms ] thread
Where I worked previously it wasn't generally common for developers to have a side project. It probably depends on where you work. I presume everybody in Silicon Valley plans to start a startup like every waiter in Los Angeles plans to become an actor.

One reason I can think of, is maybe because they can - developers have the means to create software themselves though maybe not a way to market it. Anything physical requires a fair bit of capital to manufacture it, where's developers just need time. I suspect also that independence is more important to "developer types" than to others.

Another reason I can think of is management in companies can tend to treat developers as second class citizens which can make work unfulfilling. Working on your own products can make programming fun again.

Also in a lot of other white-collar areas like design, medicine or law it's fairly common to setup your own studio/practice after a few years of work experience. IT tends to create large global companies which sucks in a lot of developers.

Perhaps this question starts with the wrong premise. Maybe, we should rather assume wanting to start a company is the normal case and ask what keeps most people from wanting to start their own business.

Most non-software businesses require a much higher upfront investment. With hardware, retail, restaurants or other brick-and-mortar businesses you've got one chance more or less. If you fail in these types of businesses a large amount of capital will be lost (quite likely including your personal savings).

With software businesses you can most of the times just start over. Plus, there always is the opportunity to do consulting if your original plan doesn't work out. As a developer you have a few fallback options whereas in other industries it's mostly all or nothing. While this is an advantage for developers it can also be detrimental. Most developers want to start a company but how many actually do and how many of those persevere when problems come up? With a non-software business you can't bottle out as easily once you've started.

> Maybe, we should rather assume wanting to start a company is the normal case and ask what keeps most people from wanting to start their own business.

I know this was definitely the case in the 70s. My father's and grandfather's generations mostly started their own businesses rather than work for somebody else. Most of those businesses folded for one reason or the other in the early 80s.

Being a child of the 90s and growing up with stories of the IRS jailing business owners for a variety of crimes that their accountants were ultimately responsible for, I have a near deathly fear of starting a business without the capital to immediately hire an accountant I trust (I've yet to find one of those) and a lawyer I trust (ditto). Just dabbling a bit into consulting the way I have put me at odds with the IRS and California State and wound up costing me at least twice what I made (I didn't make much).

> > Maybe, we should rather assume wanting to start a company is the normal case and ask what keeps most people from wanting to start their own business.

> I know this was definitely the case in the 70s. My father's and grandfather's generations mostly started their own businesses rather than work for somebody else.

Self-employment has fallen over the years, to be sure, but it wasn't the norm two generations ago; by BLS figures, in 1948, it was 18.5% of all workers whose primary work was self-employment; as of 2009, it was around 10.9%.

Today's education mostly pushes you toward becoming an employee. It's schools like stanford that teaching you to become an entrepreneur not the norm. I'm guessing that back in 1948 there were less jobs to begin with, and businesses tended to be much smaller. Also, probably starting a company was much easier - not financially, but probably beurocratically.
Part of it is the creative urge. Bring into being something that started in your own mind, not the mind of a product manager. With programming I give substance to the ephemeral. I codify and automate processes and liberate myself and others from drudgery. When starting my own company I have the potential to reap both the autonomy and economic rewards for bringing thought and process to "life."

Expand your luck surface. Part of it is the understanding that while some software start-ups succeed because of really good business basics and lots of investment in marketing - there are others where the combination of a product and luck create an explosion of growth. But if you don't build it you reduce your luck surface.

Not sure whether developers are more likely to have ideas than non-developers, but they are more likely to pursue them because often they have the means and ability to do so.
Why wouldn't they be?

Of course working on your own profitable project is much more fun and makes much more financial sense than being an employee, building a project for somebody else, and capturing only a fraction of value you create.

Obviously everybody wants to do something more fun and profitable and not something less fun and less profitable. People in other professions would too, but they usually just can't.

Ideas are plenty, its execution ( + speed ) which is a bottleneck. Developers are in a better position to prototype ideas and refine them. Most if not all developers want to be their own bosses, cos well they have bad bosses.

Having worked in the so called corporate world, for what seems like eternity, i could say with some confidence that the monotony beats the creative potential out of a developer. I have contemplated quitting technology quite a lot of times, its the passion for technology that keeps me going. I keep telling myself, i ll find my way out of this rabbit hole.

This urge to be the artist that you truly are, the creative process of building software, the art of visualizing the outcome before writing a line of code, the vision of doing amazing stuff, not just building software and being stuck in an endless loop of maintenance and bug fixes - is part of the reason some developers wish to try running their own businesses.

Rotting in a cubicle, with no say as to what could or could not be done, Technology decisions driven by sales and management team rather than the other way around, "works" is better than optimizations / solving for future with good design. - I am sure you would have come across all of these and thats precisely the reason some want to get out of this insane loop of madness is part of the reason why at least i want to start my own venture.

Another thing is that, as companies grow bigger they tend to lose sight on their initial vision / mission statements and also the culture kind of dilutes. Culture is everything. And building the kind of culture you would love to work in, is also a reason for aspiring to start your own venture. You as a developer clearly see whats not working, and you want to change that.

Another management crap that bothers at least myself a big time : recruiting people for numbers in the name of growth. how is number of people employed to do a job related to growth ? This is bullish in every sense. Hire top talents and get them to work. The arse kissing culture is very evident in these kinda growth scenes, where the management wants to please their higher-ups!

Processes : The things we do for the sake of doing! Another reason.

As steve jobs would say, this world was created by people no smarter than you - and you can change things! You will find yourself in situations, where you see that things could have been done better.

I don't want this reply to sound like a rant ( although it somewhat is! ) but i could think of these almost immediately when i read your question. All these and many more contribute to the desire developers feel to starting their own business.

I gave this answer from the vantage point of a guy working in a "job".

[ I am replying to myself, since i couldn't edit my comment anymore ;) ]

I said "Having worked in the so called corporate world, for what seems like eternity.."

The truth is, i have only around 6+ years of experience. The irony ? I am already feeling the heaviness of working for a "job". This heaviness is driving me to take back control of my life and design my own future rather than "settling" for mediocrity!

Because it requires almost no capital to do so. You can start a company with a single laptop. You don't need a bank loan, you don't need investors (at least for certain business models).

If you could magically will into existence a coffee shop for free, I'm certain the number of people starting coffee shop businesses would skyrocket. You'd just need to come up with a unique twist to differentiate your shop.

But what's the point of starting a business if it can't generate revenue? Getting to that point definitely takes capital; even if you've already built the product, the marketing and sales costs of introducing a new product in an existing large market are significant. Otherwise you're just gambling with the opportunity cost of your time on the hope of an effective word-of-mouth campaign.
"Getting to that point definitely takes capital"

That's not correct. There are all sorts of distribution channels that do not require capital like trade shows, blogging, guest blogging, affiliate programs, and app stores.

That's all true, but the question is why is this more prevalent among programmers than any other group. That opportunity cost is really quite cheap for most programmers, especially if you just enjoy the work. Worst case scenario, you can add something to your resume.
With salaries of over $100k available to programmers, I'd say the opportunity cost of a startup venture is pretty high. It takes years of determination and time for a startup to pay off, and most do not.
> the marketing and sales costs of introducing a new product in an existing large market are significant

Many side projects don't target existing large markets. Bootstrapping is a real thing that people do too, even in large, existing markets.

Even more importantly, you can do the pre-startup stuff for (almost) free, and put your toe in the water for (almost) free. You can know that you will have some business before you officially launch your company.

I don't think the fraction of people wanting to become self-employed is much higher than in other businesses, though.

A somewhat similar situation exists for small-scale blue collar jobs: hair dressers and nail salons, gardeners, plumbers, and the like. There, too, many young professionals dream of running their own business (I don't have numbers, but it wouldn't surprise me if half the 20-year old employed hair dressers would say they want to run their own shop one day), and it is cheap to test the waters (that sometimes involves borrowing tools or a van from one's employer while working in the weekend 'for friends')

As to the fraction actually making the jump: I wouldn't dare say whether it is higher in software than elsewhere. My gut feeling would say it isn't, compared to the above. It will be different for people working in industries where a single-man business doesn't exist (I work at a shipyard/a post office, and dream of building oil tankers/doing mail delivery of my own one day), but software development isn't unique in that.

Leverage is very appealing - the idea that a single developer working independently can support thousands or millions of users.
A follow up question: How many developers want to work in a startup that another developer started?
I think many developers would do so, the more important question is if the startup they're working for is also something they believe in, or at least believe can be successful, and how much 'say' they will have in the process of development in the other's startup.
Developers spend their day building the foundations for other people's businesses. As a developer, you would have to be severely lacking in motivation to not want to do it yourself.
I think you are misusing the term "motivation" here, "ambition" is more fitting. But I agree with your point.
That's not necessarily true. Running a business means a lot of non-technical work that most developers can do without. For example, I don't think I'm lacking motivation or ambition, but I'm far happier building the technical foundation of somebody else's business and getting well paid for that, rather dealing with all the chores that running a business on my own would involve.
Every employee in any company or business is either building the foundation or part of the foundation of another person's business. Being a developer isn't any different.
I don't think it's really generally true. Developers that frequent this site probably are, just like developers around SF probably are. Most software developers I know don't have any interest in starting a business. I know I don't.
I am substantially more interested in finding ways to destroy existing businesses, by replacing processes which previously depended on centralized rent-seeking organizations with collaborative, decentralized, community-driven processes.

It's not yet clear how one would make a living doing this, so it remains a side project.

This sounds interesting. Have you written about your ideas?
I haven't, though the germ of an idea has been percolating recently. I keep trying and failing to find some sort of how-to book about it, but whenever I bring this up in hopes that somebody knows what I'm talking about, the response tends to be "well why don't you write one".

The recent article in The Guardian titled "The end of capitalism has begun" is closely relevant and has a lot to say on the economic situation driving these kinds of ideas.

Most of the practical experiences I've had so far have come about either through open source software development, or various large, collaborative, non-hierarchical, non-profit-oriented art and festival projects related to the Burning Man community. Several years helping run a makerspace have also contributed.

You do it by transforming the world enough that "making a living" becomes a fundamentally different sort of operation. Hang in there, we're all in this together.
Yeah, I've come to see my primary outlet for political action as the process of building the kinds of structures and organizations I want to participate in, from a local level outward. These tend to take the form of semi-amorphous, self-assembling, non-hierchical temporary groups arising to accomplish specific tasks out of a larger ongoing network of social networks. You can get a lot done this way and it's a very pleasant kind of experience. I'm part of a large extended "tribe" that has repeatedly proven its ability to mobilize substantial resources and manage large complex logistical operations with no permanent hierarchy or profit motive, and that demonstrates that there is some valuable body of social skills and experience present which, so far as I know, nobody has yet laid down in writing for others to pick up. I'd like to see this kind of thing get franchised and spread around, and I'd like to be able to borrow from the practices of other such tribes, but since we don't really have a name for the phenomenon yet or a body of writing about it, it's hard to have a global conversation driving it forward.
Short stock? :)

Care to elaborate? As skeptical as I am, I'd be genuinely curious if somebody manages to create a decentralized, community driven process successful enough to destroy existing businesses without creating new businesses which other people could then destroy. Commerce begets commerce.

Speaking as a developer that did turn a side project into a very very minor income stream (pays for my spotify and a few steam games a month), I did very little to try to make it into a income stream. My primary focus was writing software for my own use, and for the fun and challenge of doing so. The "monetizing" was, honestly, quite annoying.
I think a measure of independence is very appealing, especially if your career so far has involved sitting in a cubicle doing uninteresting work for other people.
Probably has to do with the current booming environment for starting a technology business. It is fairly easy to start a technology related business, of course it is probably harder to actually succeed.

Software development is also a very creative process, which means people who engage in it on average are probably going to have many ideas of their own that don't necessarily fit the interest of their employer.

I know many (older) devs who don't want this.

They go to office, code what they get told, cash their (senior) pay-check and go back home.

Some have the abilities and ambition to do their own thing. Some don't have the nerve to meddle with the business stuff.

I understand both, the "I want it all!" and the "I just want to build things and be left alone!"

Because the day to day doesn't do it for me after so many years. The day job doesn't provide the opportunity to play around with new technologies, learn new skills (business, marketing, hell.. accounting. I've never touched those!). I'm not even complaining about that, I get that the business runs much more smoothly without changing languages, frameworks, methodologies every few months. That's fine.

I want to start my own business because I want to be challenged. It's not about the money (although I wouldn't mind success). It's not about getting away from the day job, I'd be happy to continue there unless this thing hit the roof (although the chances are slim). I just want to push my abilities to their limits and then push a bit more.

Building software for your own builds your obsession for the thing you created. Its your baby. The side project quickly morphs into obsession because of the dopamine release that comes from seeing your creation work.
1. Because its much easy to start a software business 2. Developers always think that the other guy is doing something wrong and they can do better than him. Most of developers start business very similar to one they are working for.
> 90%, or maybe even 95% of the developers I know

It sounds like you’ve surrounded yourself with people who want to do that.

Most developers probably don’t, and are happy with contributing to or running OSS projects, or even not coding at all.

I originally began trying to start my own business because I had seen how businesses work (smallish through to large public companies) and I've noticed that people like me (not particularly politically savvy, not an ounce of sociopathy) ended up not advancing and losing influence over both the technical and cultural aspects of the work environment.
I think it's because at the very basic level we hate working for someone else on their ideas.
You're angling in the right direction. We don't so much hate working for someone else on their ideas[0] so much as we hate working to make somebody else's dream come true and make them rich all the while being disrespected and treated like the hired help, like code monkeys.

[0]: Unless you have many marketable ideas of your own. Not all programmers do, though.

It's empowering to be able to build these things, so why not take it as far as we can? I know plenty of nontechnical people who want to start a business but the barrier is usually...technology. They can't build it themselves.
Being your own boss is a really enticing idea in its own right. Plus, the idea that you possess the skills -- for which other people willingly pay lots of money -- is very empowering. With the right idea, and some hard work, you stand a chance at essentially short-circuiting the traditional ladder of upward mobility. If you like to hack things already, why not hack your own career?