Users as Innovators - Why Open Source Works
eaglemoon writes "Many people still have difficulty understanding why open source software projects are successfull. The Boston Globe has an interview with Eric von Hippel, a Professor at MIT Sloan School of Management, on users as innovators. In his new book, von Hippel, discusses how open source projects draw on the creativity of ''lead users," who are often ahead of the curve on technology and marketplace trends. Von Hippel shows the trend already is more advanced than is generally known, and users often freely reveal their innovations for the common good. The social efficiency of a system in which individual innovations are developed by individual users is increased if users somehow diffuse what they have developed to others.....he also notes that the transition to user-centered innovation is hard for some companies to swallow.
The online version of the book is available under a Creative Commons license."
The online version of the book is available under a Creative Commons license."
My writing class had an open topic presentation, and some friends of mine and I just did a presentation on the Business and Development elements of open source projects :)
Check it out
http://neuclid.com/OpenSourcePres.pdf
http://siokaos.org/
One major problem with open-source is the lack of artists willing to work under such a license. For an example ot what results, see the "new" FreeCIV.
Users will have a perspective on products that the programmer never will--namely the perspective of someone who *doesn't understand* how the application works! After designing and/or programming a piece of software for a long time, you can get to know it so well that every aspect of it seems obvious. Yet to a fresh user, who has no clue what is going on behind the scenes, your choice of layout may seem confusing. It has been said (many times) before, but programmers/designers need to *listen* to what users are saying. If something is hard to use, then it should be fixed! And yes, the users of a product will have tons of useful ideas for how to make a product better.
Programmers know too much about the inner workings of a system... and thus they will immediately think of all the reasons why an innovative idea (interface element or feature) won't work. But the naive user, not encumbered by such restrictive thinking, may propose powerful features and novel interaction schemes. Some of these won't work, and some really are too hard to code, but there are many gems.
I think this may have to do with companies' "top-down" corporate education. They believe they're "the best", they spend MILLIONS on hiring "the best". They spend millions on maintaining this structure, hiring even more people, buying the competition (*cough* Microsoft *cough*), etc etc.
What can a simple user teach them? What can one single guy do? He's got no budget, doesn't have the resources to get "the best of the best", and can't possibly manage dealing with copyright issues. 'You think a bunch of hobbyists can do better than us?'
Bottom-up, gentlemen, bottom-up.
Some of those curves and trends lead to dead ends. Valid dead ends.
Don't get discouraged when they do, know when to kill it, and move on in a different direction. But do move on.
My question is even though Open Source can create massive amounts of ground work, why is it still generally incapable of shipping fully polished products? Take a look at the Mac, they went the extra mile, they took all the innovation of the open source world and did all the work hobbiest don't do. What does open source need to make linux or something else fully polished? What makes open source projects like Firefox beat the curse?
I'm made of copper, you insensitive clod!
Show me on the doll where his noodly appendage touched you.
Indeed. Quotes from my professors that are regularly on Slashdot:
"In our discussion on type systems last session, we noted that, in Soviet Russia, systems type YOU!"
"A lambda term is in normal form if it contains neither a redex nor hot grits."
"In Korea, only old people use the nameless lambda calculus."
"An ALU may consist of an adder, a block carry circuit, an input circuit, ?????, and profit."
Eric is a great teacher - I took a graduate course with him on Innovation Management (15.356) a few years ago. The course was recently renamed "How to Develop Breakthrough Products and Services" and is available via MIT's OpenCourseWare at http://ocw.mit.edu/OcwWeb/Sloan-School-of-Manageme nt/15-356Spring2004/CourseHome/index.htm. The course home page also gives a very brief overview of Eric's lead user concept. It's one of his pet ideas, and although it isn't the sole focus on the course, it certainly is one of the foundations.
The actual class was wonderful: a mix of working scientists and R&D executives, Sloanies and other MIT grad students, and a couple of undergrads sitting in. Lots of student interaction and learning from your peers. The individual project was a good experience as well - I wrote a paper analyzing why Lockheed's X-33 space plane project failed, and what could have been done so that the the technologies developed (autonomous navigation and landing, composite materials, linear aerospike engines, metallic thermal protection system) didn't die with the project. Eric gave lots of guidance and advise on the analysis.
It's not limited to linux. I've seen several Mac and Windows programs that don't appear to have a lot of polish. Hell, my own company, who happens to have the largest market share of software sales within its niche isn't nearly as polished as some competitors.
So many developers are either simply not experienced in proper structure, or proper GUI design, or they are under pressure by execs or marketing departments to get the project out the door. The important part of the software is does it do what it's supposed to do? Yes? Then ship it.
The type of polish tends to differ. There are plenty of windows and mac apps with bad GUI, but it happens more in the Linux community because the body of developers don't have a deep background in coding GUI interfaces as to Mac or Windows developers. Windows programs tend to have more bugs but the windows environment provides a stable interface usually. Mac apps probably have the best of both worlds (as long as you agree the OS X interface is as good as the OS 9 interface).
"All great wisdom is contained in .signature files"
There must be a big myth that open source end-users have more influence with open source projects.
There's more money in OSS than you think. Of course proprietary developers listen to their customers too, but to a lesser extent. The difference is, OSS providers can't hide behind lock-in file formats, obtrusive licenses, and established monopolies if they want to make money. They have to earn it, by listening to users and providing for their needs.
And it's not as easy as a "usability study" would have you believe. It means living with users day in and day out and dealing with all of their problems, not just watching them click a few buttons for a couple of hours and optimizing the menus. A vast majority of the proprietary crap software wouldn't exist if all programmers were forced to then support it from the "hell desk". Fortunately for OSS, many developers *are* supporting end users directly, and code accordingly.
"I assumed blithely that there were no elves out there in the darkness"
I often think about this very topic...if someone or someones would come along and put the pedal to the medal on polishing those things off, Linux would become one hell of a competitor.
Redhat had enough money to do what apple did for BSD.. In a way, apple is the perfect company to put that polish on - it's what they do. I'm not sure there's a place anymore for a polished desktop UNIX the way there was a place for it in, say, 1997.
It certainly is what Linux needs to smash onto the x86 desktop. People seem to get too caught up on Holy Wars (tm) to make this one happen though. Maybe I'm wrong - but I'm writing this on a powerbook, too, and in 1997 I was one of those point-and-laugh at mac types.
..don't panic