What's Wrong With the FOSS Community?
An anonymous reader writes "Patrick McFarland, one of the major Free Software Magazine authors, has completed his second article on whats wrong with the Free/Open Source Software (FOSS) community, and what we face in this world. He touches on ESR's Cathedral and the Bazaar essay briefly, and warns against cherry-picking style software development."
I'm pissed. I'm disgusted. Santa is in dire need of some improvements. When he brings all the presents, he does it in the middle of the night, so I have to wait until the morning to get them. When I do get up in the morning to see what I got, all that trashy wrapping paper is in the way, delaying my enjoyment.
Also he drinks all the milk and eats all the cookies!
There is nothing wrong with the FOSS community, however there are a small number of very vocal people who are total assholes towards people new to things such as Linux. I am not a Linux n00b as I have been using it on and off since 1996/7 however when I first gave Gentoo a try (back in 2004 i believe) all I got was abuse when I asked for help with some things. There are a small number of groups within the FOSS community who give it a bad name, however this is the same with most communities IMHO. Ubuntu are doing a lot of good not just with their decent distribution but with a positive and helpful community as well. Infact this is probably the best thing about Ubuntu.
When did the 'FOSS community' become an entity that could be analyzed as a single group so that you could point at it saying that's what's wrong with it?
"I use a Mac because I'm just better than you are."
I read the article, and I still couldn't tell you what it says. It talks about bazaar, and Gnome and development, but it has no content! I don't think it said *anything*. From the book: Harmless.
I challenge thee to summariser it.
This is what (/usr/bin/ots) a text summariser said (interesting to note it tents to focus on cathedral-style, bazaar-style, and gnome bashing)
A few years back, Eric S. Entitled The Cathedral and the Bazaar, he wrote about how the Free/Open Source Software (FOSS) community does what it wants when it wants to. In Cathedral-style projects, your not-so-friendly neighborhood PHB (fueled by the lies from various ugly hunch-backed minions), although wrong 120% of the time, says what goes in a project. Backed by the Free Software Foundation and the FOSS community as a whole, the GNOME project for many years just added lots and lots of feature creep and otherwise unnamed bloat.
The GNOME project lacked true vision for those years, and feature creep and other long term development problems rushed in to fill that hole. Problem is, many projects are just like GNOME. Incidentally, few Cathedral-style projects suffer from lack of vision: those that do simply die off and are never heard from again. Bazaar-style development allows projects to be in a zombie state for long periods of time, where it is vastly expensive for a Cathedral-style project to do the same. someone with vision (corrupt or not) would control a project, driving development behind it, and have the project reach goals in specific time frames.
The major difference between FOSS and other communities are that the people in a FOSS community share far fewer specific goals than other communities. Some people want something fixed **now**. Others want it fixed **properly**, no matter how long that takes. Others just piss and moan.
Engineering is the art of compromise.
One big problem that I see if the violence inherent in the community. Everything is a "war" or a "Battle". An "OS War", a "browser war". This article is titled "inside the mind of the enemy". Community != War. If I didn't know better, I'd think that the whole OSS movement was being led by our own current war-loving government (war on drugs, war on terrorism). How about dropping the hostility, for starters?
This is one of the most confused responses I know of on this subject. Not your fault, I hear it frequently. I would like to clarify some things for you. There are 2 basic types of OSS devs. Those that are employed by a company with some interest in OSS, and those that do it purely for fun. The devs in the first group don't develop for end users, they develop for their company. Somehow, through some process (in which they may be involved at some point) the Company decides what they have to work on, and when it should be done. This may have some benefit for the end user, it may not - and that is totally besides the point -- for all you know these devs are hacking away at some piece of code that will never be distributed outside of the Company anyway.
While this may be OSS development in the sense that people work on OSS code, it isn't about this topic - the "FLOSS Community" and the coders that form part of this community. Those coders tend to fall in the second camp. They tend to work for reasons other then direct cash. They do it for fun, peer recognition, whatever. For the majority of these people, "non-coding end-users" are the same bunch of clusterfucks they deal with everyday during the dayjob, and tend to not feature very prominently in the motivation chain. The things that drive them are project that are "fun" to code, "pet projects" and all that kind of stuff. They have little motivation to work on projects that are "boring", "seen as difficult" or "of no interest to the developers". This camp of OSS developers "must" do nothing, and more importantly, owe you nothing.
You then bring in some muddled argumentations about the "market" and "running out of business". Unless the OSS coder in question is pretty incompetent, and gets fired from his (quite possibly non-OSS related) dayjob, there is no "business" to be run out of. Most of these projects *are* pet projects, and they only reason you can use them for free is because the coder in question has an urge to tell the world: "Look what I can do!!"
Now its time to bring market drivers / basic economics into the picture. You, as a non-coding end-user, want an application. There are some half-way-there projects out there, but non really fit your bill. You are angry because all the selfish devs only think of their pet projects and having fun. Some entrepeneur, somewhere, will know this, and hire a bunch of devs to create a project you, and hopefully many others, will pay good money for. Only now, once renumeration has entered the picture, can you speak of a market in a meaningful way. Now you are a paying customer, and you can vote with your wallet and feet.
Unless you are a cheapskate, and don't want to pay for anything, but still want every little piece of functionality handed to you "just so". If you ain't paying the cash, either do it yourself, or STFU.
People who think they know everything are a great annoyance to those of us who do.
Actually lack of leadership is a problem within the FOSS. Mark Shuttleworth has done a great job with Ubuntu because he is a good businessman. Too many FOSS projects are managed by developers who don't know how to manage which means poor decisions are made. This is fine if you don't want the project to grow however if you want to become bigger and better you need to make certain choices and sometimes they are not always easy to accept. I have seen many projects (both FOSS and commercial) die because of bad decisions being made by someone who has never managed anything in their life. Just because something is free and open source doesn't mean that they cant be managed by someone with a business background. Ubuntu is a fine example of this IMHO.
The bazaar model still worked when the pinnacle of software complexity were "cat" and "vi". That's it. It stopped working almost completely when complexity meant Open Office Org.
The Asperger's Syndrome kind of coder (and I'm one, so I can make fun of myself if I want to) which finds more joy in coding something cool instead of going out and flirting with a girl, also has a very narrow focus of attention and gets bored easily when he must deal with stuff either (A) outside that focus, or (B) which is basically homework instead of getting to the cool stuff. That's how we ended on the bad side of teachers in school, after all. Spending weeks understanding someone else's framework and code before you can even start on your cute "number paragraphs in Klingon" idea, is boring, and it's even more boring to understand and test all dependencies so you don't break something else.
So today in F/OSS the only ones making any progress nowadays are, sad to say, the Cathedrals.
Yes, everyone likes to use the Linux kernel and such as an example of why the Bazaar is strong, but have a look at the actual contributors some day. It's _not_ bored nerds like you and me working in their free time. Most of them are paid employees of Red Hat, IBM, etc. Linux as the work of bored nerds in their free time was a security shithole until Red Hat spent some real money doing a code and security review. And it was a joke in the enterprise arena until IBM started pumping some real money and formerly Cathedral-developped closed-source code into it. There's a reason why IBM looked like a believable target to SCO (as opposed to just a tempting target, by having deep pockets), and that's the sheer quantity of Aix code that IBM donated.
The same goes for OOo: practically all development is paid for by Sun, and it's bleeding Sun a ton of money. The same goes for Apache, which everyone uses as an example of why OSS is better than MS's software on a server: it, and most other Apache projects for that matter, is mostly IBM work. Go figure. IDE's? Both Eclipse and Netbeans are paid work by respectively IBM and Sun and a number of other corporate contributors. Compilers? You'd be surprised how much in GCC actually comes from Intel and the like. Browser? Mozilla was mostly paid work by Netscape, then AOL, and now it's mostly sponsored by Google. Etc.
So yes, as you aptly put it:
And that's why most of F/OSS nowadays is nothing more than a way for various corporate Cathedrals to pool their resources against MS. Sure, it's a good goal and I have nothing against benefitting from it. But let's stop pretending that ESR's Bazaar is anywhere _near_ relevant any more. The actual "Bazaar" projects are the thousands of unfinishet things on Source Forge that noone gives a damn about, either to help develop/debug or to use seriously or to pay the developper for features.
A polar bear is a cartesian bear after a coordinate transform.