Hacker News new | ask | show | jobs
by zifnab06 4191 days ago
I've always disliked Richard Stallman's views on software. While open source is great, its a terrible business model. Closed source has its place - and not all of it is inherently evil.
7 comments

> While open source is great, its a terrible business model.

Please explain why you believe this is true.

Also, don't confuse open source software and free software, there's actually a not-so-subtle difference.

> Please explain why you believe this is true.

Maybe because when you give people the right to freely copy, use and redistribute your code it's a bit hard to then ask them to pay for it.

Well, I'm sorry you aren't imaginative enough to design a business model which generates revenue from anything other than controlling the supply and charging admission prices.

Some ways to milk $ out of free software include:

- Being the de-facto expert in your product (hello sweet 6-7 figure consulting contracts when an Enterprise picks it up)

- Training

- Tech support (hand-holding)

- Publish books about the subject

The list goes on. If enough people adopt a free software project, that doesn't preclude the person (or persons) who release it from turning a profit. It just ensures they can't do so at the expense of the liberty of their users.

* Being the de-facto expert in your product

For some things this may work, but if someone's going to be investing 6-7 figure consulting contracts, and the code is open and free, they'll eventually replace you with someone else in-house.

* Training

Isn't a recurring or ongoing stream.

* Tech support

If you design your product/service well enough, people probably won't need much hand-holding. Or... someone else will take the code and make a better version that doesn't need the hand-holding, and win your potential customers away.

* Books

Again... not really recurring.

Yes, there's ways to make money, but none of these are terribly good business models. Books? Entire massive companies based around books are folding or shrinking. Suggesting that someone's business model be based on books is... weird.

And when the code is open, you'll face more potential competition than if the code was closed.

ACK - I missed your 'milk' phrase. 'Milking money' just doesn't scream 'solid business model' - it screams out "petty vendor who will nickel and dime me to death".

> they'll eventually replace you with someone else in-house

Yeah, that's why you don't put all your eggs in the same basket :)

> ACK - I missed your 'milk' phrase. 'Milking money' just doesn't scream 'solid business model' - it screams out "petty vendor who will nickel and dime me to death".

I view business as inherently evil and selfish. I am choosing to engage in business because I don't care about being good.

> I view business as inherently evil and selfish.

I suggest rebuilding your frame of reference.

Offering something of value for a profit is not evil. It may be considered selfish, but it is also selfish to offer something of value for free to gain moral high ground, peer recognition, and resume fodder.

Being selfish isn't evil; survival isn't evil. You live in a community that has rules and values, and if you live in the spirit of those rules and values, being selfish isn't causing harm, and in most cases, helps others. When a business bends those rules, or breaks them with no regard for the community, that can be considered unethical and in some cases "immoral" and possibly evil by some definitions.

If your business model doesn't take advantage of customers, employees, or the surrounding community, you probably have a good business plan.

#1 is being a consultant. #2 is being a teacher. #3 is being a consultant. #4 is being an author. None of these involve making money off the software. They all involve side businesses with about as close a relationship to the software as I have to the cereal I ate for breakfast this morning. If I'd starved to death, I wouldn't be working right now, but I don't say I eat cereal for money.
Open Source business models exist, but they are nowhere near lucrative enough to sustain all software developers. Who are you supposed to train or publish books to if every developer is somehow trying to eke out a living in this "open source" world?
Well, the above is "business models that could support creating a new project" - in principle one can also eke out a living extending and adapting other people's projects for people willing to pay. Indeed, a huge percentage of programmers currently ekeing out a living programming are already effectively doing that, often in situations where things are proprietary only by default (as in, it's license says you can't share it, but if its license said otherwise it still wouldn't be shared because it's too specific to what one particular company is doing).
> I'm sorry you aren't imaginative enough...

No need to be condescending. I've actually been researching this a fair bit lately for a new project.

What I found was that even though people parrot the revenue models you list above, the reality is that it is far more risky to go open than to "control the supply".

The margins on services (consulting, training, support etc..) are much lower than selling the code.

Here is one example I came across showing how it's no slam-dunk: http://www.locomotivecms.com/articles/we-tried-to-solve-the-...

I've created closed source software for many years now, and we've happily reduced our costs by incorporating open source software (where the licenses permit). We've also paid for proprietary libraries.

I would be surprised to find anybody doing serious development without relying on open source software somewhere.

And the companies I've worked for have generally been very willing to release code as open source, partly for goodwill and advertising (we've received several job applicants who only learned about us through our contributions to open source projects), and partly to avoid the cost of maintaining an internal fork of, say, Boost or JQuery. Even if you can't open source the whole kaboodle, it's often possible to release something, especially additions to existing open source projects.

Even if you release some stuff as open-source, if "the whole caboodle" is not free software, then you're still one of the proprietary software vendors Stallman is railing against.
> No need to be condescending.

I disagree because this is HN

Because this is HN, there is a need not to be condescending.

Please re-read the site guidelines: https://news.ycombinator.com/newsguidelines.html and https://news.ycombinator.com/newswelcome.html.

This encourages bad products.

If the product is created easy to use, there is no reason to buy a book, to require technical support, or require training.

Consider an open source photo sharing application. You distribute a system so easy that anyone can set it up. You hire people to do user studies to make the (AGPL) web application just work.

The more money you spend making it easy to set up and use, the less money you are able to collect for training, tech support, and books.

This is something Snowdrift.coop is hoping to help address.
Anybody can do what you are mentioning. Competition is fierce and training and tech support aren't scalable for a small shop.

You also forgot to mention the culture behind many Foss projects: profit is seen as evil and your project will get forked, the second you try to turn a profit.

Foss users expect free support, bug fixing, and software. Part of the entitled generation of internet users.

If you want to make a living, proprietary services all the way.

> Anybody can do what you are mentioning.

Yes, that's the point of free software. Everyone can.

> Competition is fierce and training and tech support aren't scalable for a small shop.

I think you're underestimating the degree to which most of the world outside of IT (and including much of the world inside IT) is too lazy to figure it out and would rather pay money for a black box that solves their problems.

> Foss users expect free support, bug fixing, and software. Part of the entitled generation of internet users.

Not all of us do. And if your audience is companies, not users, the goals align differently.

"Yes, that's the point of free software. Everyone can."

So by open sourcing my product, I am opening myself up to all sorts of competition. Not a very smart way to run a business.

"I think you're underestimating the degree to which most of the world outside of IT (and including much of the world inside IT) is too lazy to figure it out and would rather pay money for a black box that solves their problems."

You're right. But if anyone can do it (mentioned above), it will eventually be a race to the bottom (based on cost) when software is equal.

"Not all of us do. And if your audience is companies, not users, the goals align differently."

I run a business. I wouldn't hire a 1 or 2 person shop for support of an open source project. I have had way too many bad experiences.

When you are just starting out, it's hard enough to make money. Why make it even more difficult by increasing competition and doing something that will not scale well?

I saw this in one of your other posts:

"I view business as inherently evil and selfish. I am choosing to engage in business because I don't care about being good."

I wish you would have said this in the first place. I would have not wasted the time responding to you.

What if you're a coder who has no interest in any of those things? Many people get into SaaS specifically so they don't have to work with bureaucracies any more.

Book publishing can sometimes be alternative, but what if your code is so intuitive and easy to understand that no one needs a book about it? Or what if you're a bad communicator and someone else writes a much better book?

What I write below is based on my real-life experiences. I had a NoSQL database startup called Scalien for ~4 years. There was a lot of competition (eg. MongoDB), most of it was opensource, so we were opensource. This was also in line with my feelings: I'd like my work to reach as many people as possible.

You cannot sell opensource software itself directly because it's free. What you can sell is: 1. 24/7 support 2. Enterprise/proprietary features 3. Consulting/custom development based on your product

Problem is, in this business model (called "enterprise opensource software"), you're not getting paid for writing the core software product itself. Your clients expect you (or somebody) to just do that for free. A more nuanced problem is that those 3 types of revenues only scale linearly: if you want to support 2x as many customers, you will have to hire 2x as many support engineers. Your profit margin will not increase as you add customers.

Towards the end of my startup I had a shocking insight. Given the above revenue channels, I should have just tried to be the n+1th Hadoop vendor and screw my own product. That way _I_ don't have to invest my time to work on the core product, which doesn't get me revenue anyway. I can just concentrate on the revenue generating stuff. And Hadoop was already an established opensource project anyway.

In the end I didn't do that, because I wanted to have a product company, not a support/consulting/custom development company. And there was already Cloudera et al. The company failed.

More generally, there's no good incentive to develop a new opensource product if you want to make money off it. If you try to, you will spend a good deal of your time writing the core product for free, taking on the huge risk of first trying to make it a successful opensource project (not business). Then, if and when it becomes a successful opensource project (a big if), you will split your resources between working on the core product "for free", and the 3 channels above, which will actually make you money.

I'm not saying you can't make money. You can, but it's not fun, and it's not working on the core product. If you also try to write the core product itself (like MongoDB), you're taking on a huge, time-consuming initial risk, unlike in SaaS where you can be lean, learn and iterate with 100 customers.

I think SaaS is a great business model, much better than software products. It's good for opensource, too: SaaS companies opensource tons of software. For example, I work at Prezi now, and we opensource lots that isn't the core presentation product itself:

https://github.com/prezi

Competition in open source is much more fierce than outside of it, and that is a good thing. Imagine if your company had not been an open source company but rather a closed source company. Instead of being able to bootstrap you'd have to start with getting a large bunch of money on an idea that already has an open source equivalent. The chances that you'd fail would be roughly identical to doing it the open source way. But all your former customers would be left high and dry when you folded. That is what open source is all about, it is not about the providers, it is all about the users.

Sorry to hear you didn't make it, but your work will live on now, probably forever or as a part of some other offering, it may be small consolation to you but to me it proves the system worked.

My software didn't take off as either an opensource project or a business, so when we folded, the former customers would have been left high and dry anyway. "Fortunately", the reason for the final fold was that the last customer left, so at the final hour the set of former customer was empty.

The work lives on as a github repo that nobody cares about. I'm not upset about it today, I learned a lot, but that's how it is.

Btw. it's:

https://github.com/scalien/scaliendb

I think you missed my point. The fact that the repo still exists is all that would matter to your former customers. They could download the code and fix the problems themselves (hopefully contributing back to the codebase by re-releasing their fixes).

I have a long list of 'failures' behind me, not a single one I would care to repeat but also not a single one that didn't teach me something, I always cherish the thought that the failures eventually led to the opportunities that worked out and that without them those wouldn't have happened either. For the same money you would have had the next mongodb.

That was a pretty crowded space at the time.

I know you know what you're talking about, but I'm having a very hard time following the train of thought here.

> Imagine if your company had not been an open source company but rather a closed source company. Instead of being able to bootstrap you'd have to start with getting a large bunch of money on an idea that already has an open source equivalent.

Why does starting with the stronger revenue model mean you need to start with getting a large bunch of money rather than bootstrapping? AFAIK software with a revenue-generating license costs the same to develop as free software.

> Sorry to hear you didn't make it, but your work will live on now, probably forever or as a part of some other offering, it may be small consolation to you but to me it proves the system worked.

Why would anyone want to participate in a system whose goals prioritize strangers getting gratis database software over our families being able to eat? I'm all for generosity, but I'm also for looking after yourself and your dependents.

> Why does starting with the stronger revenue model mean you need to start with getting a large bunch of money rather than bootstrapping?

Because enterprise sales are hard. Open source can get in through the back door, but closed source has to beat a path through the front door and that costs money, lots of it.

> Why would anyone want to participate in a system whose goals prioritize strangers getting gratis database software over our families being able to eat?

It's not about your families being able to eat or not. You can find plenty of middle ground, or you can decide to contribute to open source just to scratch your itch or fix your bug. That's why it works well for some kinds of software but not for all kinds of software. It works well for:

- best of breed infrastructure projects (runners up have the same issues they have in commerce)

- libraries

- frameworks

It does not work well for things where bespoke software is the norm or where the customer wants to have their own IP. For those situations traditional closed source software works better. That's why you're going to have a hard time finding a quality CAD/CAM system using open source that is tightly integrated and polished.

There are middle grounds: Blender famously used the ransom model to become open source, entire empires have been built on service companies around open source and some people made pretty good money selling their open source projects to the highest bidder (glusterfs, mysql and a whole raft of others).

So nobody is forcing you to give your work to others so your families can't eat, it's a free choice. I decided very specifically not to contribute to open source because I wanted my family to eat, though I do file the occasional bug report/patch (and the way in which those are treated is not very encouraging to do more of it). But at the same time I'm grateful for everybody that did contribute to open source, they enabled the web as we know it to a very large extent and to discard or devalue that is a huge mistake.

Red Hat? Or what about Facebook or Google -- open source is pretty central to their business model.
Facebook and Google don't care about open source... Their desire is to get people to use their search/system. That's all they care about, regardless of what pretty bow they wrap it up in.

Let's look at Google...

Android - Get people to use Google products on mobile. Adsense - Add ads to your site. Analytics - Track how users use stuff to provide better ads. Gmail - Track your email to serve you better ads. Google Search - Serve you ads.

Sure they have Dart, Angular, etc which they developed for use internally and then released to the public. But do you honestly think that has anything to do with their business model? They hired smart people, and smart people design things. Those people then released them as open source. But do you honestly believe if Google was to start (theoretically) having money issues, those products would not be the first to go?

It everything to do with their business model. Joel Spolsky called it commoditizing your complement (google it).
I'd expect some of the bigger R&D moonshots to go first - Loon, Wing, etc. The open source contributions are good PR with the software development community.
Red Hat, by the way, deliberately obscured their kernel code in order to stop Oracle from simply providing support for Red Hat code. Probably the correct business move, but also probably against the spirit of FOSS.

http://www.h-online.com/open/news/item/Controversy-surrounds...

Google? Facebook? Are you kidding? These companies have lots of great open source projects. But the core of their business is certainly not open.

Try to find Goog's SERP ranking algorithm on GitHub. Or their Adwords scoring/pricing code. What about Google Doc's text editor? Also, most Google apps on Android are closed.

Two companies that take from the community to save money and then don't give back anything even remotely related to their business model.
> don't give back anything even remotely related to their business model.

Why should they? It would be nice if they did but they'd be directly enabling their competition. That's not what open source is all about as far as I understand it.

Indeed. The "Open Source" aspects of those companies are more to do with trying to diminish the value of their competitors.

It's a case of "Everything I do is valuable, but everything you do should be free."

I don't know if Mr. Stallman is exactly a socialist, but he's not pro-capitalism either. So I don't think he really concerns himself with actually getting people to pay software developers. To him, that's an afterthought.

This makes him a revolutionary. Unfortunately, when the mainstream absorbs the revolution, what does the revolutionary do? Basically try to get them to adopt the ideas that aren't very good because all the good ones have been taken.

The best thing we could do is just say he was a great contributor to software, and ignore whatever drivel he writes now, much like we do with ESR.

As of the mid-1980s or so he believed that the government should pay programmers to do their thing.

I seem to remember he supported Hugo Chávez.

>So I don't think he really concerns himself with actually getting people to pay software developers. To him, that's an afterthought.

This is a strawman argument as Stallman does not advocate this at all. Stallman encourages for programmers to get paid for programming work and to sell software at any price that the customer will burden. Stallman is happy for everybody to do business and profit when the business does not hurt people. In the business model of selling proprietary software and selling SAAS, users are harmed of four specific freedoms of free software so Stallman will condemn any business (or any other non-business organization) that does this.

> While open source is great, its a terrible business model.

I don't think that RMS cares about business models: he argues that proprietary software is unethical, not that it's bad business.

One could probably make a decent sum of money as a hit man, but it would be unethical.

Open source advocates argue pragmatically that open source software can be better (many eyes make all bugs shallow) or that it can be a competitive advantage to comnmoditise one's complements; free software advocates don't necessarily disagree, but don't particular care: they believe that proprietary software is fundamentally wrong.

You may dislike it, but do you disagree? Can you refute the plethora of ethical arguments RMS has been making over the last several decades?

If you ever attribute "open source software" to Stallman, you are confused. Stallman wants nothing to do with the idea of OSS, Stallman is advocating for a different idea. Stallman is advocating for the ethical solution to the inherent evil cause by proprietary software. People who have a business model by distributing proprietary software are contributing to this inherent evil. All proprietary software is evil because it causes various social and political problems that result in society who live helpless and socially divided. People who write and distribute proprietary software wield an unjust power over the users who choose to submit to the policy of proprietary software. The ethical solution to this political problem is free software; i.e. software that respects the users' freedom.
> While open source is great, its a terrible business model.

I think this is a necessary trade-off. Great business models often lead to monopoly and stagnation.

Stallmans ideas on economics make sense when you factor in his $1m grant from the MacArthur foundation, another $1m from the Takeda foundation, and tenure at MIT. If you have all that sure, give software away for free!
I don't agree with many of Stallman's positions and I think that people should be free to create and profit from proprietary software if they want, but let's try to be rigorous.

I don't think Stallman has tenure (or any position) at MIT. Wikipedia says simply: "In February 1984, Stallman quit his job at MIT to work full-time on the GNU project, which he had announced in September 1983."

The Takeda foundation award was about $250K: http://lists.gnu.org/archive/html/info-gnu/2001-12/msg00002....

The MacArthur fellowship was awarded in 1990, about 6 years after Stallman decided to work full time as a free software activist. I don't think it's fair to claim that he would behave any differently without these awards.

Stallman got $240k from MacArthur in 1990. Pretty sure he's burned through that by now. The Takeda award in 2001 was split three ways so his take was at most $300k.
The man lives a life right about one step up from a monk. $1m spread out over a lifetime of work on behalf of all of us doesn't add up to much budget per day. If he lived by the rules of some of the haters in this thread he'd be a lot richer. Those grants were because some people recognized the importance of his work and would rather have him continue on this path than to go work for some company to support himself. It seems to have worked out as planned.
I've heard speeches by Stallman where he mentions he has enough money that he no longer has to work, but as others have already said (1) he started working full time on GNU before he received that money (and supported himself by selling free software and prioritizing requests by people who sent him money), and (2) he doesn't live an incredibly opulent life, even factoring in the free travel.
It doesn't take long for "free" travel to become more of a burden than a benefit, even if you don't consider the hassles of going through customs, immigration, and security lines at airports.