Examining Some Open Source Myths
Neil Gunton writes "I wrote an article distilling some thoughts on Open Source myths. Perhaps unusually, these are not myths propogated by the anti-OSS crowd, but rather dogma that is more frequently spouted by OSS proponents. It is not intended as an anti-OSS argument, but really more as observations and reactions to specific things people say without really thinking about it, such as 'You shouldn't complain about it if you don't want to put effort into providing a fix', 'OSS lets you get under the hood to fix problems', 'All software should be free', 'Scratching the personal itch', etc."
On "All Software Should be Free"
Carpentry is a bad analogy. No one says that I should be able to take tables made by carpenters for free. However, the effects of idea creation are much more ephemeral. Or rather, they are much easier to duplicate than a well crafted table. This is exactly why analogies to "stealing" items in the real world do not carry over to the internet. I don't believe in copyright, any of it. But I still think things should have value. I just don't think that the government should grant monopolies on any idea. So, to go back to the analogy, I think you should be able to charge for what you make, be it software or tables. But I also think that the person you sell that item too should be able to make one of his own, and give it away or sell it or whatever. So comparing the internet to the real world we see that copyrights are just a legal entity, they are not real things, they do not exist outside of a goverment's promise to enforce them. So you can tables, CDs, and even bandwidth, but you can't steal information.
So, let's take this point and compare it with the previous point made concerning "scratching an itch". People in many professions get paid for their expertise. A plumber comes in, does his job, gets paid, and goes home. He doesn't make royalties on his work. He enjoys no monopoly on information, but of course, his job makes this unnecessary. But what we see from the case of the plumber is that people will still need software written, even if there are no monopolistic copyright protections when it is written. People will have "itches", and they will need to be scratched. And maybe they won't have the time to do it themselves. And so, others will be paid to scratch that itch. All of this takes place without any mention of copyright. It's not needed.
A discussion where bashing the soft points of OSS doesn't get modded -1 Troll.
I can see the next article: "Understanding the GNAA"
It would be cool if it didn't suck.
Many of this guy's comments are very good. In many ways, the programing industry is being hit by a much more general sweep of what I call 'copyright depreciation'. The really huge piracy with games, music and movies at the moment is a symptom of copyright depreciation and so is programing. I think a key cultural change in this century will be the rise in the difficulty of the ability to make money off copyrighted works.
In the past, a company could assemble a team of programmers and pay them to write a program for you. Really, the only way you could assemble such a team was under this structure. With the invention of the internet such teams can be assembled on-line and can work in their spare time. Couple this with the ability to be able to duplicate en mass for effectively zero cost makes this form of development very effective.
In the end, the programmer has to get paid or they can't make a living off it. What we're seeing is the destruction of huge profit margins and the market force establishing the 'true' value of a programmer.
Simon
That's news to me. I always regarded Windows to be ahead until w2k, and then the Linux apps quickly got their shit together. Since, they are more or less equal. Now, there's another system that kicks both their asses, MacOS X. That is to say, it kicks Linux' ass, but afterwards, it comforts Linux and give gentle hints on how to improve (Safari -> KHTML (or whatever)).
Rather than talking about OSS as a whole, we need to try (as far as possible) to discuss the motives of individuals or the objectives of specific projects.
You seem to be making the misconception that "free software" means "gratis software" - this is incorrect.
/maintainance licenses can pay for things like offices, developers, food, water, bills, etc :)
"Free Software" refers to freedom, not price. I can sell my piece of free software at any price I like, whether you choose to buy it of course, is your own freedom.
I think he hit th enail on the head - how many times do you see someone looking for an OSS aka "free" counterpart to a CSS aka "cost money" product? They're looking for free as in no cost, not as in I can mod it. That perception will limit entry and ultimately stifle innovation. How many innovative, vs "let's copy the functionality of product X" OSs programs are out there?
For example; a business selling a database product may choose to release it as free software, and offer a gratis download, but offer a support/maintainance license for a fee. The software is still free, and the money from support
Well, beyond the hurdle that someone has to develop OSS programs so you can sell maintenance is the cost of support issue.
If your selling support, It'll be cheaper to hire a bunch of cheap offshore techies to answer phones and provide support. Keep a few US based staff to do installs (supplement them with off shore progarmers on a limited entry basis) and you have a model for making money on maintenance.
Just don't plan on being a high paid US programmer when equally good talent is cheaper elsewhere.
It's not theat OSS is a bad model, but it is a bit self limiting.
I'm a consultant - I convert gibberish into cash-flow.
The only reason to run OSS software is because you care about the software that you run and are expected to use on a day-to-day basis. This is for the following reasons:
1. You don't want to be locked into a particular vendor's proprietary protocols, data formats, etc.
2. You want full control of your system. Why should you waste system overhead running a GUI, for example, on a system you just need to be a web server? You get that level of choice with OSS.
3. You want to feel part of a community. Unlike commercial software, you cannot expect the software programmer to bring what you want straight to you in a format you want - it just doesn't work that way because there is no marketing of OSS software. You have to be prepared to feed likes and dislikes back to the programmer or team who created the software.
4. You don't want to / can't pay for software. This is different to saying "All software should be free" and I'm all for voluntary donations to OSS projects. But it does mean that you can turn old hardware into a working usable system and in poorer countries, where people do not have the income to pay for software, this allows them to have exposure to the Internet, programming and gaining computer skills.
5. You don't support piracy. This follows on from 4. above but surely it's better for everyone to have people paying for commercial software and not using illegal copies while those that won't pay for software just use free software instead.
Gentoo Linux - another day, another USE flag.
> whether you choose to buy it of course, is your own freedom.
You'll never get a job at Microsoft with that attitude.
Whether or not they will, or whether it will be any good, isn't really relevant. I doubt that GIMP has hurt Photoshop's sales much, or MySQL is making a dent in Oracle. It's the perception in the mind of VCs and investors that matters.
And I think it has many interesting points that are worth thinking about and/or taking to heart.
But, I have a critique of point 3 (All software should be free) and an observation about point 5 (Scratching the personal itch).
First, there is profitable Open Source software out there. The biggest example I can think of is LiveJournal. Sure, what LJ sells is premium features for their site, but they wouldn't have a thing to sell without their software, which they've wisely chosen to Open Source. LJ makes enough money to afford some pretty hefty server farms in back of it. There are many clone sites out there that use their software, and are free to make money in the same way, but none of them have come even close to putting LJ out of business yet. In fact, I think they've just strengthened LJs business.
So, software can be free, and still make money.
In point 5, Neil Gunton cogently observes in the last sentence "A commercial company, on the other hand, can afford to scratch the personal itches of its end-users, because the end-users are the ones paying the bills.". This very true, and I think it provides a useful illustration of a means by which an Open Source company can make money by directly selling software.
I think I ought to be able to go into a store and bu a copy of gimp. In fact, I think there are several Open Source packages which would lend themselves well to being sold seperately from distributions. This would do a lot to raise the visibility of these packages from a consumer perspective.
I just answered a question by someone where they were wondering about Open Source packages for doing various things. I gave them a list of them. But every single one of those packages usually comes with a distribution. This person was totally unaware of this.
These packages need marketing and distribution seperately from the OS. That marketing and distribution would raise their profiles, and provide a valuable way for end-users to get involved in how a package is produced. Their money would pay for support. They could be introduced to the concept of Open Source and how to effectively contribute constructive criticism and development money for their pet features to Open Source projects. The distribution company could provide a focal point for this, and a project could put things up on its homepage about how well it was being served by various distribution companies.
This would both generate revenue for Open Source projects, adressing point 1. And it would provide direct consumer involvement that could drive feature development, addressing point 5.
If I ever make consumer oriented Open Source software, I intend to sell it on my webpage, and not provide it for free download. I will tell them that if they can't afford the download, they should get a copy from their friends. I will provide source with the download. If someone wants to grab my source and try to compete with me in selling it under a different name, they're welcome to try, but I'm fairly confident that I can continue to add value to this software that I originally wrote better than anybody else, and they will eventually decide to rejoin my project anyway.
Need a Python, C++, Unix, Linux develop
Most of the time, a list of myths provides little more than an opportunity to trot out a consignment of straw men-- willful distortions of the opponent's arguments, to be hacked, burnt, and slashed at for the the audience's amusement.
"If you're not willing to help fix it then you shouldn't complain about it"
Personally I've never heard this one, although I've fixed quite a few things, then submitted the necessary as it kills that one dead.
"Open Source software allows you to get under the hood and fix problems" - Maybe you'll poke around a bit in the code, and if it's trivial then you can fix it - but again, this really isn't something your average user is going to do.
Look! Over there, other side of the road, travelling in the other direction...it's the point...
The point of this 'myth' is you have the ability to. That's it. Whether you submit the patches or not, you can make any modifications that your little heart desires.
"All software should be free" - I write something independently, then there is basically not a chance in hell of being able to sell it or make money directly from it.
There is money being made, but I think the point is that all software should be free in terms of usage rather than monetary cost. Frequent mistake, but a schoolboy error for someone with 20 years experience.
"As a developer myself, this prospect is profoundly depressing"
Why the hell should it? I'm currently developing like there's no tomorrow; people pay for my ability to make things work how they want them to, they don't care about which tools I use. You don't stand over your plumber's shoulder and demand he uses branded Stilsons; you'd get one in the mouth after a short amount of time.
"Yeah, I know, some will say "Go ahead and try, it's a free world". But you know as well as I do that if I am successful then inevitably some kid in his parents' basement will write his own Open Source version of the thing, for free."
Unlike the corporation that could also do the same thing and just slightly undercut you? Grow up. Competition means going out there and seeing if your product/service will fly, and the capitalist ideal means that you could find yourself competing against an eight-year old wunderkind. On a long enough timescale kids will always kick your ass.
"the Linux desktop"
'The'?
"Some of these benefits include having a more focused direction for the team, given the fact that there is (usually) just one manager and team leader, firmer schedules and deadlines, tighter management, profit incentives, salaries and bonus motivations. While this can also be true for open source projects, the "design by committee" that goes on with community projects often results in a more bloated and less focused product that tries to be all things to all people."
Have you worked in a closed source environment? For one thing the manager generally doesn't code, the bonus motivations are usually in place to sweeten the complete lack of innovation and flair that are endemic to a heavily specified job and the deadlines usually slide for whatever reason. OTOH, you'll find that most of the _successful_ OSS projects actively try to cut down on the 'committee' element to the extent where someone usually throws their toys on the floor. Same shit, just slightly more transparent and vocal when it happens.
"A commercial company, on the other hand, can afford to scratch the personal itches of its end-users"
If it listens. Experience has shown that frequently features are thought of as more important than fixing problems, which has led to the current bloat cycle that usually results in the various companies talking about thin-clients...until they bloat the client again.
"Some people will inevitably condemn me for putting down Open Source"
Personally I'm disappointed that you appear to have such a narrow viewpoint. Your major concerns appear to be your own inertia, a couchlock attitude when faced with the idea that you can no longer simply code a product and leave it, that you may be faced with competition and that convienience should be paramount
Oddly Draconis
Too cynical to live, too stubborn to die.
That's certainly the case sometimes, but not always. Several times I've gotten the "You want it, you write it" reply when requesting new features, like supporting a database other than MySQL. If the developers would reply "I just don't have time to add this feature, I have to focus on supporting the stuff most people have or prefer," that's fine. I understand that many people are doing these projects in their free time. But many developers, in my experience, get extremely huffy when you suggest that something could be done better a different way. They take it as a personal attack. Then usually they get on their high horses about "You wouldn't have anything if not for me, and you'll get what features I want and you'll damn well like it."
It's hardly unique to the OSS world, as it's a human failing. I think it's mainly that, in the OSS world, you have more direct access to the actual developers, and because they write their programs for free they tend to identify more with them. So any complaint about the program is interpreted, by the developer in this case, as an attack on the developer himself. Probably Bill Gates feels the same way when we talk shit about Windows (or Microsoft), believe it or not. I don't think anyone doubts he has a big emotional attachment to his company and its flagship products.
He doesn't say that it doesn't allow you. He says that, in practice, most projects are sufficiently complex that most people are unable to. There's always a big startup cost involved in learning a new program. The bigger the program, the biggest the cost. While compartmentalization using libraries in such will help reduce this, if you don't know the libraries either, you're still looking at a big expenditure of time. And most of us have jobs and other priorities.
So it's not that you can't dig in and modify the code. It's that 99.995% of Linux users lack either the ability or time to do so. The "You can modify the source, so it's better" argument isn't wrong; it's just misleading.
No, the misunderstanding is on your end. He explicitly mentions the classic example of how to make money off free (as in speech) software: services. He also points out, quite correctly, that there's no way for an individual or small group to make any money off this. If you and a buddy write some great app, how on earth are you going to make money off it? A tiny company hasn't got the resources to provide "services" the way IBM or RedHat can.
I mean, think of all those shareware games that the Mac people keep trotting out as examples that gaming on their platform doesn't suck. Those people wouldn't be able to make those games if they were open source. The market for services is too small, and even if there were one, the developers wouldn't have the manpower to provide it.
He's discussing myths, after all. If he said "often," then it wouldn't be a myth.
On #5, we agree.
He claims that it's hard and that nobody does it "in the real world."
No, he doesn't. Direct quote from the article: "But how many people actually do this? Hardly anybody in real life." There's a BIG difference between "nobody" and "hardly anybody".
OpenOffice (Sun), Mozilla (Netscape/AOL). As the author pointed out... The Gnu Image Manipulation Project doesn't have the end-user market share (yet I would also point out that this "End-User" project is the result of 'developer', not end-user, tools).
Programmers are a commodity, good developers are not. For every 100 programmers, you'll find 1 developer that has a good idea. After hearing the idea, 95 of those programmers will say, oh, yeah - that sounds obvious (yet, they had not thought of it). That's the crux. You have 95 commodity programmers who are willing to give away 1 developers good idea, because - in hind sight - it seems obvious. Maybe a general or interesting application is actually a new idea. I'll admit that this isn't always the case, but this does happen. THAT is why copyright exists, the idea has value. ...There are underlying social reasons for this as well that I'll be happy to get into.
Further, I don't think it's bemoaning to point out that in the 80s (and much of the early 90s) the software industry was still open to the single developer, and also not hobbled by open source efforts. This was also before massive consolidation of the software industry. Seems to me, just a simple statement of fact.
Kinetic stupidity has a new brand leader: Allen Zadr.