Showing posts with label tcp. Show all posts
Showing posts with label tcp. Show all posts

31 December 2007

Open Source Unoriginal? - How Unoriginal

Here's a tired old meme that I've dealt with before, but, zombie-like, it keeps on coming back:

The open-source software community is simply too turbulent to focus its tests and maintain its criteria over an extended duration, and that is a prerequisite to evolving highly original things. There is only one iPhone, but there are hundreds of Linux releases. A closed-software team is a human construction that can tie down enough variables so that software becomes just a little more like a hardware chip—and note that chips, the most encapsulated objects made by humans, get better and better following an exponential pattern of improvement known as Moore’s law.

So let's just look at those statements for a start, shall we?

There is only one iPhone, but there are hundreds of Linux releases.


There's only one iPhone because the business of negotiating with the oligopolistic wireless companies is something that requires huge resources and deep, feral cunning possessed only by unpleasantly aggressive business executives. It has nothing to do with being closed. There are hundreds of GNU/Linux distributions because there are even more different kinds of individuals, who want to do things their way, not Steve's way. But the main, highly-focussed development takes place in the one kernel, with two desktop environments - the rest is just presentation, and has nothing to do with dissipation of effort, as implied by the above juxtaposition.

chips, the most encapsulated objects made by humans, get better and better following an exponential pattern of improvement known as Moore’s law

Chips do not get better because they are closed, they get better because the basic manufacturing processes get better, and those could just as easily be applied to open source chips - the design is irrelevant.

The iPhone is just one of three exhibits that are meant to demonstrate the clear superiority of the closed-source approach. Another is Adobe Flash - no, seriously: what most sensible people would regard as a virus is cited as one of "the more sophisticated examples of code". And what does Flash do for us? Correct: it destroys the very fabric of the Web by turning everything into opaque, URL-less streams of pixels.

The other example is "the page-rank algorithms in the top search engines", which presumably means Google, since it now has nearly two-thirds of the search market, and the page-rank algorithms of Microsoft's search engine are hardly being praised to the sky.

But what do we notice about Google? That it is built almost entirely on the foundation of open source; that its business model - its innovative business model - would not work without open source; that it simply would not exist without open source. And yes, Yahoo also uses huge amounts of open source. No, Microsoft doesn't, but maybe it's not exactly disinterested in its choice of software infrastructure.

Moreover, practically every single, innovative, Web 2.0-y start-up depends on open source. Open source - the LAMP stack, principally - is innovating by virtue of its economics, which make all these new applications possible.

And even if you argue that this is not "real" innovation - whatever that means - could I direct your attention to a certain technology known colloquially as the Internet? The basic TCP/IP protocols? All open. The Web's HTTP and HTML? All open. BIND? Open source. Sendmail? Open source. Apache? Open source. Firefox, initiated in part because Microsoft had not done anything innovative with Internet Explorer 6 for half a decade? Open source.

But there again, for some people maybe the Internet isn't innovative enough compared to Adobe's Flash technology.

03 October 2006

Feeling Mule-ish

Lots of people seem to be getting excited about Mule and MuleSource. I would too if it weren't for sentences like this:

Mule is a messaging platform based on ideas from ESB architectures. The core of Mule is a SEDA-based service container that manages service objects, known as Universal Message Objects or UMOs, which are plain old java objects. All communication between UMOs and other applications is made through message endpoints. These endpoints provide a simple and consistent interface to vastly disparate technologies such as Jms, Smtp, Jdbc, Tcp, Http, Xmpp, file, etc.

I found this interview with MuleSource's founder and CTO Ross Mason slightly more illuminating. I'm sure I'll get the hang of it all eventually.

17 April 2006

Does Larry's Linux Stack Up?

The tantalising story in the FT that Oracle is ruminating upon acquiring one of the main GNU/Linux distributions - well, Novell - is bound to re-ignite speculation about Oracle's intentions and ultimate impact in this sector. An earlier rumour that Oracle was about to buy JBoss - obviously not true - led to a similar spate of comments, for example that Oracle was about to wipe out open source itself.

But as I wrote back then, it would seem that Larry Ellison really doesn't get this free software lark if he thinks he can wade in with a cheque-book and walk out with anything perdurable. Basically, the moment he tries to throw his weight around in any newly-acquired open source company, he will find that everything valuable in that company - its coders - will walk out of the door and work somewhere else (like Red Hat or IBM). So the idea he will snaffle up one of these cute little old GNU/Linuxes to complete his collection of netsuke rather misses the point.

What is really interesting about the FT story is that Mr. Ellison says "I’d like to have a complete stack." The stack refers to the complete set of software layers, starting at the bottom with the operating system, moving up through middleware and on to the applications. This shows that he may not quite understand the answer, but at least can articulate the question, which is: what does a software company do when the layers of the stack are commoditised one by one?

Things started even below the operating system, at the level of the network, when TCP/IP became the universal standard. But what many people forget is that once upon a time, there used to be three or four or more competing network standards, including Novell's IPX/SPX: it was Novell's dogged support for its protocols in the face of TCP/IP's ascendancy that nearly destroyed the company.

Similarly, not everyone today realises that once there were alternatives to the now-ubiquitous GNU/Linux operating system, including an older approach from a company called Microsoft, also destroyed by clinging too long to outdated closed-source solutions (this information sponsored by the year 2016).

What Ellison's comments indicate is that there is growing awareness that the free software approach is seeping inexorably up the stack. It will be interesting to see his response when it starts to dampen the application layer, and databases like Oracle's flagship start looking as soggy as IPX/SPX....

Update: There's a good table in this C|net article on how the competing stacks, er, stack up.