O O Ø O O O O
Death of Innovation
Sometimes it’s a strange combination of events that gets me seething.
For those of you not paying attention, Mozilla, the insanely overdue, fully open-source rewrite of the Netscape codebase has finally reached the 1.0 mark. Mozilla is a bit of a double-edged sword. On one hand, it represents a fully standards-compliant rendering engine for HTML; salvation from the world of the proprietary browser. On the other, it—specifically, the decision to dump the old Netscape 4 rendering engine—was the straw that broke Netscape (the company’s) back.
In other news, one of my old employers threw in the towel on a web application I spent half a year rescuing. Though not the first time a web-app of my design was ditched prior to launch, this project did represent the first time I’ve ever been replaced by an intern student. Does wonders for the humility, I assure you.
And if you missed it, AntiTrust was on TV the other night. Put these three events together, toss in a pint or two, and suddenly I’m off on a rant. It goes something like this:
David and Goliath
If you think way back, you might remember some kind of fuss about a Microsoft anti-trust case. Well, the pesky thing is still going on. If you recall, Microsoft was accused of exploiting monopoly power to kill off competition (mainly Netscape), which harmed consumers.
Microsoft’s defence went something like this:
Ok. We sort of faked some of that evidence back there. But even if our behaviour harmed the hell out of Netscape, there’s no evidence the consumer was harmed. Look at Wal-Mart. They’re kicking the snot out of grocery stores everywhere, and so far, it doesn’t look like consumers are suffering.
Now allow me now to stick a fork in this defence. Let’s think about the Web revolution. In its heyday, new web browsers were released faster than we could install them. Each new browser version brought a raft of new tags and features. It was a flat-out footrace, with the two sides innovating like hell to stay ahead. Documents led to frames led to layers. Bold tags led to blink tags led to marquees. JavaScript flourished, divided, multiplied, and threaded its way everywhere. Companies rushed to replace their proprietary client-server applications with Internet-age three-tier beauties. HTML was to poised to become the universal interface. In short, the platform was changing. Software standards were making way for data standards.
Our supposedly anticompetitive behaviour was good for the consumer. Look how much stuff we gave you for free!
But Goliath was all about software standards.
So Goliath did what Goliath knew best: embrace and extend. Kill the competition by giving away all of their core products. Once you own the platform, extend it with proprietary features until you once again own the market. It was a fairly simple plan, and it worked like a charm. Not only did Microsoft kill off the browser market, they also killed Netscape’s server revenues by bundling the server pieces into the very products they owned a monopoly on.
Up a Canyon Without a Sling
In the end, Netscape never stood a chance. They played “let’s see who runs out of money first” with the richest man in the world, and suffered the inevitable fate.
Now, I don’t think anyone is going to argue that, while this little David and Goliath competition was going on, the consumer was suffering. Goliath, in fact, has attempted to use this fact in its defence. To paraphrase:
See? Our supposedly anticompetitive behaviour was good for the consumer. Look how much stuff we gave you for free!
Fair enough, but no one is arguing that competition is bad for consumers. We’re saying the lack of competition is bad. Anyone remember Microsoft before Netscape started making a splash? Wake me when they stop changing the Office file formats. No, it wasn’t until Bill’s big Internet flip that innovation picked up and the software world started to get interesting again.
Wake me when they stop changing the Office file formats.
Sure, the browser race was a royal pain for web developers. It was a nightmare for the standards bodies. It caused great consternation in corporate IT shops as they tried to jump onto a moving Internet bullet train, but there’s no doubt the consumer benefited. The pace of change was unbelievable. The entrepreneurs saw the writing on the wall, and started blowing the great dot-com bubble.
But determination and venture capital will only get you so far. At the end of the day, you still need a revenue stream. Goliath’s efforts had cut that off, and eventually, Netscape threw in the towel. As the competition waned, so did the innovation.
Full Stop
Can anyone honestly tell me the difference between any of the last three “major” versions of Internet Explorer—5.0, 5.5, and 6.0? In some ways, their standards support has improved, but really folks, those are bugfixes. When Netscape died, innovation went with it. Web standards have become static, and I can only think of two ways to describe this sudden lack of new functionality:
- Web browsers are done. They have all the features we will ever need. From here on in, it’s all bugfixes
- Eliminating the competition has stifled innovation.
From a certain perspective, it has been nice to delude ourselves into believing the former. It has been a nice period of stabilization, where the standards stay static long enough to actually implement them. Sure, at long last the browser vendors have achieved standards compliance with something newer than HTML 3.0. XHTML and CSS have finally brought a useful level of separation of content and presentation to the web world. Designers are atoning for some of their early (and nasty) habits, and moving away from the miasma of the past, but since when has web progress been driven by standards bodies? Aren’t they supposed to be the ones keeping up?
Goliath has trounced David, as expected, and innovation has slowed to a crawl.
Basically, this little rest-stop is turning into a full-stop. Web browsers aren’t done, and until they are, data standards, and the three-tier Nirvana they represent will simply be another casualty of the dot-com bubble.
For Want of Widgets
Okay, I claim web browsers aren’t finished. So what needs doing?
Well, having worked with web-based applications since the beginning, I think I’m qualified to comment on their suitability for delivering real-world three-tier applications. The truth is, they’re a marginal solution, at best.
Take a look at the the trusty-old web form. Forms are the lifeblood of any web-based application, and, as any geek with more than a couple of web-apps under his belt will tell you, the Achilles heel of the platform. The HTML form spec hasn’t changed—with the exception of the file upload widget—since it was first developed. The inadequacies of HTML forms are well known, and the solutions would seem to be obvious. We need more input widget types, and we need them badly. Nothing radical, either. How about starting with the obvious ones? The ones that form the basis of just about every GUI toolkit out there: Combo-boxes, tree controls, date widgets, and formatted data fields. Here’s what I want:
- <select type="combobox">
- The combo-box is a simple combination of the drop-down <select> list and the text entry box. The Location: widget on your favorite web browser is an obvious example. It is a staple of GUIs everywhere. Why hasn’t it made it to the web browser yet?
- <tree>
- There is no need for the common tree control to be a JavaScript programming project. Get it into the browser.
- <input type="date">
- Ah, the pesky date picker widget. It was my first foray into Java and JavaScript. Since fully half of the web developers in the world have implemented them, isn’t it time they became a standard widget?
- <input pattern="+D (DDD) DDD-DDDD" ...
- On the off chance one of us wants to restrict data entry to a certain pattern of letters or digits, don’t you think it would be nice to do this up front, rather than throwing out an error message and making the user re-enter something as trivial as a phone number?
This stuff isn’t rocket science. These are limitations that any first-time web-app designer will point out after a few hours into the design process. So if these obvious features haven’t yet made it to our browsers, how can we claim they are a finished product? And if they’re not finished, then why has innovation slowed so dramatically? Could it be, oh, I don’t know, that eliminating competition stifles innovation?
Duh.
So it is now 2002. Mozilla 1.0 is imminent, but Netscape is dead. Web standards are actually supported, but web-apps still suck. Goliath has trounced David, as expected, and innovation has slowed to a crawl.
We need competition in this industry again. Now, if I only had $40 billion cash in the bank, I might even be able to give it a go myself. Barrier to entry? Naw.
I think I’ll go watch the rest of AntiTrust now.
Kjell Wooding
Tuesday, May 7,
2002
PD
DXLVI