I just find it striking how people want to give their product (source code) away for free, without limitation. Just seems like such a waste and detriment to the software engineering profession (i.e., why pay someone to write something when you can go get it for free and piece together yourself).
If this formula is true, then users will pay for your service instead of doing it themselves. We have seen this pattern consistently.
Our accounts sell at $12, $29 and $99, which is usually much cheaper than setting it up on yourself and running your own server. We even have switchers that used to host their own version and came to our online version.
This is also being the case with many Wordpress hosting sites. Multi-tenancy brings an economy of scale that allows you to keep good margins while being cheaper than hosting it yourself.
If I want to run a competing business and I have more money for advertising, servers, and employees, I will not only have an advantage over you, but I now don't have to put any time into R&D.
Yep, that sounds like the business model we all know and love. Apache proved it works.
Imagine a world with no open source: no Linux, Apache, gcc, Perl, MySQL, Emacs, etc, etc. If you want a website, you have to pay through the nose for a commercial OS, web server, database, and compilers and scripting languages. Will the demand for software developers be higher or lower in that world compared to ours?
I'm just trying to put your post into another perspective. I can pay for the tools for a year with a days work. Seems a bargain to me. Perhaps OSS has driven that cost down, we can't a/b test worlds unfortunately.
While I do love using OSS, a lot of it is very user hostile compared to commercial software. Yes mysql, openoffice and gimp, I'm looking at you.
How would they learn?
Part of the reason I didn't start coding earlier in my life is (I started late high school) is because I didn't know about the free/ open source alternatives to the programs you had to pay for that were in all the books I had access to.
I'm pretty sure that typical open source licenses, such as the GPL, count as a "limitation".
Disclosure: I run a company that sells software which is also available under the GPL.
I think an acceptable (business-wise) middle-way is to open some components that are valuable to the world, but does not immediately make everyone a potential instant competitor.
There would be shoulders to stand on, you'd just have to pay for it.
If you (as the producer of the product) choose to provide a product for free, that is totally up to you if you are going to provide support for free or for a fee.
If you (as a consumer of a product) choose to download a free product, you should not have any expectation about the level of support you are going to receive. Depends totally on the vendor. If the product doesn't meet your needs, then you need to find an alternative product or develop your own product.
If the product were open source, you could improve the product on your own. But again, totally up to you on whether or not that's how you want to spend your time. Personally, I'd much rather go find a superior product than spend my limited time trying to clean up someoneelse's code.
You need to be more explicit about freedom- what you mean as you have written it, is freedom to tinker and modify. The lack of that type of freedom has absolutely nothing to do with cooperation and trust.
My company's ERP system (like every other software I use) is free software, namely OpenERP (previously known as TinyERP). However I employed an external specialized service company to build our system around it, and paid this company good money (about 30000 euros IIRC). I myself developed free GPL software for similar amounts of money, several times.
You must extirpate from your mind the ridiculous idea that Libre software is free as beer. It definitely isn't. When used professionally, you must plan to spend money, possibly big money on it. The difference is that you have the choice to spend money where it matters.
The share-ability of information is like a free natural resource. If we want to really make progress, we use it.
> why pay someone to write something when you can go get it for free and piece together yourself
To pay people to produce things that are already available for free would be economic nonsense. It would be just throwing away effort that could be spent on producing things that are not available and are needed.
Our project is over 13 years old, used on millions of servers, and is about 95% written by one guy. There are some measurable benefits, like translations and more participatory users who help find bugs faster and occasionally even send patches. But, the odds of outside developers joining a non-developer-centric project, without some sort of incentive, are slim. So, developer tools tend to attract a lot of help. End user applications rarely do (look at GNOME for an example; it's the most important piece of desktop Linux, and yet 90% of the code is being written and maintained by people who are employed full-time to work on said code; volunteers make up a tiny portion of the project).
There are other good reasons to develop software under an Open Source model. But developers working for free is not one of them in the majority of cases, and you'll probably spend more time herding cats than actually getting work done, if that were your primary goal.
If you do it simply because you think it's going to save you some work, it won't pay off. Do it because you want other people to benefit from it, but don't expect much from them and maybe it will just happen.
> If you do it simply because you think it's going to save you some work, it won't pay off.
A very immature blanket statement. Sometimes it will pay off, sometimes not. Depends on everything success usually depends on - open source is not some kind of magical exception. If you have a good product, but you feel like you won't be able to support it forever on your own or you don't expect or want to earn money from it anyway, you will open source it. In the end, it always boils down to wanting help with the workload though. If you had infinite time, you would just write everything yourself. I know I would, it's a lot more satisfying and interesting. But since we are all mere mortals with generally empty bellies, we open source secondary pillars of our livelihood. Nothing wrong with it, that's how it is.
Opening the source does not instil the knowledge that went into making the product.
> I still don't "get" the allure of open source.
From which perspective? The user or the programmer?
> I just find it striking how people want to give their product (source code) away for free, without limitation.
Most licenses have limitations to some degree. Even BSD licenses.
> go get it for free and piece together yourself
You can also get the ingredients and recipes yourself and make food yourself. As can you do with clothing. Or numerous other things. However, people pay for service.
> Just seems like such a waste and detriment to the software engineering profession
Except for the fact that the software engineering profession is built on the back of open source.
I should have phrased my statement to distinguish the two better, but I agree with your statement.
> From which perspective? The user or the programmer?
From a ISV (handful of people making software) perspective. Why would I provide a service for free when I could do it for cash? I know this will boil down to some altruistic argument. The goal of (most) businesses is to make money, not improve the welfare of others through good deeds.
> You can also get the ingredients and recipes yourself and make food yourself. As can you do with clothing. Or numerous other things. However, people pay for service.
We are talking about software, not food or clothing. Digital goods are not physical goods so the comparison is irrelevant.
> Except for the fact that the software engineering profession is built on the back of open source.
That is purely conjecture.
The article is not saying you should, its saying that open source the code you are selling, it might not hurt sales at all, in fact it may improve them, I work for a software vendor (couchbase) where a lot of customers wouldnt even consider using a product that was not open source, but are still willing to pay.
> We are talking about software, not food or clothing. Digital goods are not physical goods so the comparison is irrelevant.
it is not irrelevant, freelance web developers have not lost their jobs because of the billions(+) of html/css/js code that is out there, they are paying for the process in which you came up with that code, then they give it to everyone for free, as all websites do.
> That is purely conjecture.
I think the burden of proof is on you here, open source is the base in which pretty much everything has been built, including this website, the web server it sits on, the programming language it was written in, the operating system that runs on, and more than likely the browser you are viewing it in.
The claim was about the software engineering profession not just the web-based sector.
To increase your the user base of your product, increasing reliance on your product, and thereby increase demand for support and licensing arrangements for said product.
Countless business have build their products and their business on top of that pattern. Both at the consumer end and developer end.
This is, in fact, a feature closed software cannot provide. The ability to continue to use and upgrade software after the developer loses interest in supporting the product.
Basically, open sourcing allows you to add features that you cannot otherwise add. Features that are valued by consumers. No one buys a product because it's closed.
Finally, if your products only advantage is being closed, it's only defense against competition is patents. So, unless you are playing the patent game, someone at some point will come along and create a replacement. And that will affect the money coming in.
Why? Because physical goods are a finite resource? Your argument of "go get it for free and piece together yourself" also discusses a finite resource, "time", as well as "knowledge".
The comparison is relevant unless you can explain away time and knowledge.
I disagree. Remove open source, and the software engineering profession would be far different from what it is today. The software engineering profession of today is built on the back of open source. It's not the only element, but to dismiss open source as not being a foundation of modern software engineering as mere conjecture is ignorant.
I'm not of the belief everyone should be required to open source their products. They decide what they want to do. Open sourcing something might require a lot of effort and time that an ISV doesn't have. That's fair. However, outside issues like that, open sourcing makes a lot of sense. Look at Mozilla and Netscape. Wordpress. Apache. Linux. MySQL and Postgre. All these products make the people that build those products money.
Why should you open source your product? I don't know. I don't know your product, or the business. Or what you are providing. However, what I do know is that if it's merely the source code that makes your product valuable, then their isn't much value there to begin with.
Just my 2 cents.