Jaron Lanier, one of the pioneers of opensource movement and virtual reality, thinks the opensource movement had been a total failure. He does point out the opensource movement and the web culture are two different things and agrees the latter had been a phenomenal success in demonstrating the capacity of the unknown, average individuals out there to create beautiful, useful, and interesting things.
I don't agree with everything he said, but I think he has some important points we should pay attention to.
1.Opensource movement is boring. Seriously, sitting down and writing Wikipedia entries (of often questionable accuracy), worrying about how to format texts? Sure, it's something you and I might do in our spare time, but we are geeks. Opensource is about serving all of humanity, but as it stands opensource just serves the narrow interests of a very small portion of the population: Geeks and nerds. As long as grandma and primary schools kids next door can't use opensource products/projects/frameworks simply because it's fun, the whole culture is just another outlet for elitism and fascism most hackers are supposed to hate so much. Ever said something on the lines of 'I hate being the tech support for the whole family'? That means the people who wrote those programs and services suck, not the users.
2.Major opensource products are built upon nostalgia of the 'better times', the golden age of the hackerdom during the 60's~80's. Linux, gcc the vast majority of the main opensource projects are built upon, vim vs. emacs war, and etc etc. Linux distros had been making some good strides in this department but we still need to face facts. To anyone who didn't string together shell scripts when he/she was in high school, major opensource projects and the tools they are based upon look downright archaic. It isn't because they have bad user interface design (they do). It's because they really are old and deprecated. I am continuously amazed by how many people tell fresh young minds entering hackerdom to go learn C. Kindergartners don't start learning English language by starting with Latin. Why is the whole darn culture based on a fast-but-bad programming language designed before many of us were born? Let's be honest here, most people who recommend C to beginners started with BASIC. When a whole culture based on ideals of innovation and sharing begins to look outdated and conservative next to hulking multi-billion/trillion dollar corporate entities, they are in trouble.
3.This is a repeat of above statement, but it bears some reiteration. There isn't enough innovation in the opensource community. Again, large corporate entities that takes three days to ship an empty box innovates a whole lot more than most of the opensource communities out there. Sure, there had been some interesting developments that's making the world a better place, like Ruby and Python. The same Ruby and Python people praise for finally getting around to implementing great ideas of programming languages like Smalltalk and Lisp. Smalltalk and Lisp was invented back when the idea of a cheap personal computer was the stuff of science fiction. Linux is playing catch up in terms of features and architecture with commercial operating systems and in critical applications UNIX is king (guess how old it is). Meanwhile Microsoft is making strides with .NET framework and Google/Apple is on the cusp of next era of personal computing. Based on real world progress, opensource community as a whole lack clear vision of what the future should be.
4.There is an inherent elitism within a lot of the opensource communities. Personally I have no issue with elitism on personal level. It's when such attitude permeates within entire communities that they begin to do real harm. Common sense dictates that any software targeted at Jane Doe should be easy enough for J.D. to use. Not so in a lot of opensource communities. If Jane Doe has hard time using an obsure text editor with more commands than the usual operating system it's her fault for being so lazy and/or dumb. If a kid who can barely type can't learn C and work with pointers the kid must be stupid. If it's too difficult for artists to use computer systems to create beautiful things without pre-packaged software it's because artsy types aren't supposed to be good at computers. These problems are being addressed by a new wave of hackers and hacker-minded people but they are still tragically present in many of the present communities, even when they don't specifically come out and say those things.
There are other interesting traits about opensource and opensource oriented communities Jaron Lanier pointed out as well, like how most of them are structured to shout down any voice of dissent based on fear of isolation, and how there is a culture of complacency among its leading members, but those things apply to almost any large group of people, so I felt no need to single out and discuss them.
I'm an optimist. I think there are movements within the opensource community that are trying to address this problem. I think the prevalence of web platforms, popularity of light weight scripting languages, and web/user interface designs are all in some form a reaction to the perceived stagnation of opensource community. People are increasingly becoming aware of what a stupid idea it is to teach C in middle schools, and how even stupider it is to begin computer education in a middle school instead of much, much earlier. I might go out on a limb and say that some people are beginning to realize that programming as an activity is not difficult at all, and that it is the teachers who don't know what they are doing, not the students.
Yet I am still worried about the culture of opensource. Opensource as in framework of idea, not of computing. How can we apply the ideas of opensource and innovation to the fields outside computing, like CNC based personal manufacturing, scientific research and DIYbio when it's running into such problems on what should be the culture's home ground? Are those open-manufacturers/scientists/biohobbyists/etc about to run into unforeseen trouble inherent in existing idea of opensource itself? Are we already in trouble?