Sunday, February 25, 2007

A Touch of Gray

Eric Lai is a good technology writer and usually gets things right, but he disappoints in his recent Computerworld article entitled “Has open-source lost its halo?

If I had to boil Lai's case down to one sentence, this would be it: There was a time when the open source community was “angelic,” more concerned about changing the world than anything else, and all those who love open source should do their level best to turn the clock back to that kinder, gentler time.

Is Lai on to something? Or is he missing the boat?

His first argument is about “predatory tactics” and opportunism. He's troubled that open source is no longer what he claims was a “grassroots social movement made up of idealistic underdogs trying to revolutionize an amoral industry.” But as Frank Hayes wrote in response to Lai last week, the open source community is a decade-old fork of the more idealistic free software movement, and as such has always exhibited a strongly pragmatic, pro-business streak. Hayes notes that “lots of money has been invested in and made from open source over the past nine years, by big companies and small, and without any special patina of morality or idealism.”

I think Lai should be careful what he wishes for. Designating companies or people good or bad guys is comforting to people who abhor complexity, but opportunism is a necessary part of the dialectical process that has made the computer industry the economic juggernaut it is today.

The history of the computer industry is all about restructuring: Building stuff up and breaking it down. Testing things and trying to make things successful, and failing, but re-emerging in different forms later. Both good guys and bad guys are swept up in the larger dialectic process that the computer industry and all industries manifest. The prospect of large profits attracts all kinds – there's no getting around it.

The “waves” in the computer industry reflect this dialectical process. There was the mainframe wave, the minicomputer wave, the Wintel-PC wave, the Internet wave, and now the post-Internet Bubble-wave. In each wave there is a thesis (new productivity based on ROI, everyone climbs on board and variations form), a reaction to the thesis by those who propose a better mousetrap (antithesis), and finally a synthesis. Then the process begins all over again.

Before I put anyone to sleep, let's take a good example to illustrate my point:

The restructuring of the computer industry of the '60s and '70s, dominated by IBM (and partially brought about because of the U.S. government’s antitrust suits), lead to the big three from the '80s: Microsoft, Intel, and IBM. Microsoft fixed the forking of the operating system, Intel provided one microcomputer processor solution, and IBM made everything work among the largest customers (enterprises), who ultimately paid for the costs, mistakes, and other unfortunate side effects of restructuring.

The restructuring of the late 1990s and the early years of this decade was caused by the Internet, free and open source software development and business models, outsourcing, and offshoring. This is not a new notion – Thomas Friedman dealt with these elements of restructuring in The World is Flat – but I believe that this was a reaction to Microsoft’s dominance and an effort to energize assets and contributors outside the Redmond vortex.

Second, Lai claims that many companies profess their love of open source actually have cheating hearts.

Lai wants to paint companies as good or bad relative to open source, but really they are gray. Companies are now in a state of perpetual mixing of economic and development models, intellectual property concerns, and business methods. A mashup – a Web 2.0 application that takes different functional elements from various places – symbolizes the state of business today.

Let's look at the case of Oracle. It has combined PeopleSoft, Seibel, and its CRM solutions, while adding SleepyCat, InnovDB, and SevenTimes. They did this in order to dominate one market and simultaneously address the opportunity in a nascent market where it is encountering competition it cannot buy because its developers are decentralized.

The truth of the matter is that computer companies are pragmatic – they do whatever it takes, using the best tools available, to either attain or maintain a competitive advantage. Sometimes the tools they use are open, and sometimes they're not.

We need to embrace the dialectical process that has made the computer industry, warts and all, the driving force in the 21st century economy. It's time to put the halos away.

1 comment:

Unknown said...

If one takes the influence of enterprise out of the OSS equation, the software is created by people who are neither angels nor demons. So the average is gray endeed, gray and complex rather than one-dimensional.

The tendency to fall into extremes comes from the fact that OSS is not uniform. It may be segmented in a variety of ways. If we would take one slice, we would see that the segment is very much reflective of the commercial peer solutions. What’s interesting here is that the reflections are contorted and the commercial cycles can be predicted by OSS.

The flames of opinions on OSS flare because people tend to look from their own perspectives and from within contexts of their own involvement. Eric is no exception. So in reality, speaking English, we speak of different things: some angelic parts of OSS are turning practical and some are just breaking the egg-shell of conception.

In addition, there is a great divide between the actual doers and talkers. OSS evolves in yet another dimension. As software practices evolve, coders bring the parts of them to the OSS projects and back. This dimension alone has been changing for decades, along with other parts of the IT landscape. It takes time for coder’s common knowledge to propagate to the executive chairs and ivory towers. It’s not that the knowledge is wrong, it is often outdated.

Spielmann advised to play a middle game in chess “like a wizard.” The reason here is that a human can not logically approach such problem at a low level of individual moves. Hence, we should talk about OSS in general, gray terms or elect to speak plainly about specific components in a logical way.