Jaron Lanier and the Fall of Opensource

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 obscure 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?

edit: maybe I should say that the woe of current opensource community (as a whole. There are many brilliant people and groups out there, can’t stress that enough) is that they don’t hack as much as smaller groups?

Edit: Aug 28
Some people wrote me some valid (“you don’t seem to understand opensource in the post”), and some vitriolic (“what’s wrong with being a nerd?!” but with lots of swearing in it), rebuttals to this post. I refrained from replying to those responses individually and getting into arguments since I think this post is terrible myself (like how I used opensource and web2.0 interchangeably throughout some of the parts). I must stress that I’m a student of all things Free software and what I say or write here should never be taken as something it isn’t.

I personally like to consider myself as someone with geek tendencies. I love emacs, and I love the idea of emacs. I think GCC is a huge thing that changed the course of humanity as much as development of steam engine changed the face of humanity forever. And yet I think all of those tools are old, based on older ideas and inaccessible to anyone who doesn’t subscribe to the lifestyles of people like you and me, the people who wouldn’t mind staring at a screen for hours on end.

I’ve had a chance to talk to some ex-programmers turned artists at the ITP exhibition last year. There was a particularly interesting exhibit with a type of evolving display system. He did all of the graphic generation within the exhibition by hand, by putting together a library of hand-drawn images. It was rather obvious he could simply do some coding in the Processing language and get it done faster and more efficiently, so I asked him why he bothered with the manual labor… And he told me that he simply doesn’t like to program. I’m not sure how I can portray the eye-opening effect it had on me at the time. The artist was fine with studying algorithms and working them out on paper, using it to generate obviously computational results. He was a very logical guy with mathematical proficiency to spare, certainly more than what I can say about myself. It’s only that he just couldn’t stand the whirring of the computer fans, the monitors, the endless clacking of keyboards and always worrying about battery life of one device or another. And I get a feeling that he is not alone in this. Maybe there are some people who are allergic to certain type of things used universally in building computers. Maybe there are some kids who just can’t handle the physical environment that comes with using a computer as we know it due to some psychological trauma. Such cases aren’t unheard-of in education circles and there can be hundreds of thousands of reasons why someone would shy away from programming activities while possessing logical acuity and vision that would normally lead to the act of programming.
I subscribe to the Alan Kay notion of describing computer-use: every interaction with a computer is an act of programming, but programming activity isn’t exclusive to usage of computer devices. And that’s why I agree with his frequent statement that the computer revolution never really happened. Computer revolution was supposed to be the revolution of the mind-ware. It was supposed to be this awesome tool of abstraction that would elevate (for lack of a better term) all of humanity to a state of freedom through better understanding of subjects that were distant and foreign to them… It was supposed to make science easier, a goal that is near and dear to people like me interested in DIYbiology. Easier not as in being lazy but being accessible, like how calculus was once considered the pinnacle of human knowledge but is now being taught even in some of the worst educational curriculums in the world as something every human being should know regardless of their intellectual rigor.
The original post was how I tried to address the inconsistency between the ideals that I believe should be applied to opensource community and the reality of the tools deployed. It’s called open-source, purists call it Free-software. Despite some differences between the two they really are about openness and freedom, but as long as its users and contributors subscribe to a certain type of lifestyle. Is there any way to change that? Can Free software be so free as to be no longer confined to the silicon and copper frameworks and languages of C and (gasp) Fortran?

I know this is all sounds like a pie-in-the-sky talk right now but I feel it’s a goal worth pursuing for those in the opensource community.

8bit tools of science

According to the founder of Playpower.org, more people in India have TVs at home than tap water. And there are $12 computers everywhere that uses the TVs as monitors, like so many of the personal computers of old.

Now consider that these hardwares based off older 8bit chip designs and the softwares that run on them are more or less in public domain. We are looking at a significant portion of the entire human population just poised on the verge to hackerdom. It’s not just typing education and language training. We could build entirely new framework for education in 3rd world urban area using existing tools of education and science. Imagine being able to design an 8bit program for those machines (some of them can actually do internet) that pulls data from research institutions of all kinds (BLAST, Wolfram Alpha, and etc etc) and scale it down to a form those machines and people using those machines can understand. We already have beta versions of synthetic biology CAD program that undergraduates regularly use for their school assignments and private projects, so it’s not that far away in the future.

Will a child capable of programming computers and pull data on SNP variations to do his/her own genotyping using soon-to-be widely available opensource PCR machines still languish in poverty and despair? I don’t know. I’d sure like to find out though.

Hacker attitude

The ‘hacker’ culture had been around for so long, and involved in so much of the substantial progress of the last half of the decade, to have their own ethos and philosophy into codified laws, somewhat like the ten commandments. Except that these rules are, as pertaining to the hacker subculture itself, a matter of choice for the most part. If you are finding yourself agreeing to the code, than you are probably a hacker, regardless of whether you know about computers or not. Even if you regularly write in assembly language for living, if you cannot agree to the codes outlined by the hacker culture, you are probably not a hacker. In a way calling it a ‘code’ and comparing it to the ten commandments would be something of a misnomer. Think of it as something of an identification tag, to be used between people of similar disposition.

There are five fundamental common attitudes shared by most hackers, and they are as follows.

1. The world is full of fascinating problems waiting to be solved.
2. No problem should ever have to be solved twice.
3. Boredom and drudgery are evil.
4. Freedom is good.
5. Attitude is no substitute for competence.

It is rather interesting that all of the five attitudes go against common beliefs and pratice held by most public school education system. At least for the inner city schools I know of. Around those schools teachers and administrators can say they are trying to teach children how to respect the authority without even blushing in shame. That’s right folks, not respect to your fellow men/ladies, and not respect to yourself. The primary goal seem to be built around having the kids in middle and high school stages of education to respect the person who has the right to call the police or security on them. Of course, I am being rather crass here, but this is the sentiment shared by most if not all urban city youths, the same feeling I shared when I was their age. And who am I supposed to blame for current less-than-fantastic state the public education system is in? Kids or experienced, supposed ‘professionals’ who get paid to study the children and lead them to the best possible future?

As I grow older I’m finding that this ‘hacker’ mindset is not new at all. I believe it had been around since the very beginning of civilizations, and that this is a part of natural instinct of being a human being. It is becoming increasingly certain that you don’t need to know about computers to hack things. What you need instead is the insight and wisdom to seem through the system of the world. It’s like applied cybernetics. As long as things affect each other in certain way they form a system. A system of human society is a system like any other, albeit fundamentally more complex since such systems are usually evolved rather than designed. As long as something can be considered a system, it can be, and perhaps should be, hacked. A mudlark in highly hierarchical society later becoming a shipping magnate, or a leader of a nation, is as much a hacker as the computer science major hacking with python and C++ in pursuit of digital artificial life. A writer, a cook, a musician, the applicable list goes on and on. The field of synthetic biology, though fledgling at the moment, seem to be shaping up as the next contender to the hackerdom’s primary pursuit, in the search of the ability to hack the life as we know it. Who knows what we’ll be hacking some distant time into the future? Perhaps the very nature of space and time itself. Maybe even designer universes.

And from this standpoint of the universal hackery, I must ask, would it be possible to hack the human world? Would it be possible to hack the public mind and the generational zeitgeist to nudge the rest of humanity into some vision of future? Is it possible to hack the origin of all the situations and motivations, the human itself?