Tangled in the Threads
Jon Udell, April 4, 2001Talking about Mozilla
Many different visions for the project
But without an installed base, can any of them be realized?For web developers, supporting the Netscape browser has become a thankless chore. There are two of them now. The creaky 4.x browser, which still has significant (but diminishing) market share, offers only a 1997-era glimpse of what CSS, DOM, and DHTML have become. Its rendering engine fails dramatically on complex, table-heavy pages. The rewritten Mozilla browser, with negligible market share, makes great improvements in all these areas. But it has its own quirks, and developers won't want to sort these out until and unless there's demand.
Recently in the newsgroup, Andrew Ducker drove this point home:
Look at http://www.thecounter.com/stats/2001/March/browser.html. I couldn't justify much time/money on making your site work under Netscape at the moment, unless I was working on a mass-market site.
Out of our 64 customers, 5 use Netscape. We told them that the web system was designed to work under IE, and that as with any system work that was wanted by less than 50% of the users, making it work under Netscape was payable. They're thinking about it. I feel kind of bad doing it, but it's not economically feasible to work any other way.
TheCounter.com is a useful site, by the way. You can register there, put a slug of JavaScript into one of your web pages, and then monitor which browsers and operating systems are hitting your site, with what screen resolutions and color depths. The site then aggregates this data to create global reports.
Here's a year-over-year comparison of browser share, drawn from this aggregated data:
March 2000 March 2001 IE 5 51% 77% IE 4 26% 9% NS 4 17% 9% others <1% <1%Among "others" Mozilla ranks just below IE 2, and just above Netscape 3. You can hardly blame James Power for voicing this sentiment:
After looking at Mozilla's home page again, I came away (again) with the feeling I don't understand what it is. Is it a standalone browser in addition to all the things it will some day be? Or rather, is the standalone browser going to be supported and actively improved? Or has the Mozilla group moved beyond all that browsing stuff and are only going after the _future of the entire internet_ dream that they have?Alan Shutko responded:
> Is it a standalone browser?Yes.
> going to be supported and actively improved?Yes.
> only going after the _future of the entire internet_ dream?Who knows? There are so many people working on Mozilla I'm sure there are at least 4 conflicting visions. 8^)
Alan's right. His comment prompted me to review the newsgroup discussion of Mozilla over the past few years, and try to understand what these visions are.
Mozilla: The browser for alternative devices
Mark Wilcox (8/99):
Saying Netscape/Mozilla is dead is like calling Linux a fad or Microsoft irrelevant. Communicator the browser may never regain the market share it had on the Windows desktop, but that may not even matter anymore. More and more Web access is now occurring through non-PC devices. Most likely those devices will use Gecko because it's small, offers true standards compliance, and is open-sourced so that it makes it easier to get the browser hooked into other systems.I agree this make sense. For now, though, the numbers say that 99% of web access is coming from MSIE 5, MSIE 4, and the dwindling Netscape 4. If and when that changes, an open-source Web display engine will, indeed, be a pearl of great price. But a project of Mozilla's scope can't be sustained on that prospect alone.
Mozilla: The standard bearer
Every time I'm ready to throw in the towel and admit that the six-year-old CSS standard will never prevail on the web, I manage to find new hope. Here's an inspirational piece from Jeffrey Zeldman's A List Apart. The essay is part of an article that's cited by The Web Standards Project in connection with its browser upgrade campaign. The WSP invites people to upgrade to a standards-capable browser -- IE 5.5, IE 5 Mac, Netscape 6 (Mozilla), Opera 5, or Konqueror -- so that we can finally, in 2001, realize the separation of presentation and content that CSS promised in 1996.
I'd love to upgrade to Mozilla. But I've tried every milestone release, and while there are bright spots, the product still doesn't feel as usable, overall, as its broken and outmoded predecessor.
Back in 1999, newsgroup members were wrestling with the standards issue:
Jonathan Brickman (8/99):
We will see. Most of all we will see if the Mozilla team actually desires to give users what users want, as opposed to what the team wants to give them. Microsoft has been giving me what I want most for a while now: a very stable, fast, real-world-compatible, and user-enhancing web browser, email client, and netnews client, and a far more stable, fast, real-world-compatible, and user-enhancing package than Netscape ever gave me. If Mozilla does all of these things as well as or better than Microsoft, I'll use Mozilla and recommend it. If, on the other hand, Mozilla puts "standards" first and stability, speed, real-world-compatibility, and user-enhancement as a poor third, as Netscape did, I will not touch Mozilla.
Standards are a jumping-off point which the real world uses as a tool. The real world is not a collection of RFCs and other standards; the real world is the real world, which is its own single, powerful, complex standard. If Mozilla omits any vital part of the real-world standard, it is nothing better than a piece of junk as applied to the whole real world. In this case, it is only good for shops that are willing to work with its lack of compliance with the real world.
Jeffrey Shell (9/99):
I still get the feeling that Mozilla is trying *too* hard to support standards (maybe too many standards) and be extendable and cool.
I don't care that Gecko can apparently fit on a disk. Mozilla really feels like a behemoth with all that XUL, XCOM, and countless other things that may make it cool, but do they make it useful for all but the geek who likes to make his browser look like a 1950's jukebox or scene from Quake? There are a fair number of smaller browsers out there that are catching up and may not be flashy, but at least they WORK!
In more recent postings, even Mozilla supporters offer decidedly mixed reviews:
Alan Shutko (4/00):
I'm using the prerelease 6 right now. It's OK. It's faster at rendering some pages than NS 4.7, but the UI is considerably slower (i.e., prefs dialog, menu popup, etc). I'm not sure what I think about it. I hate the new UI and the fact that BackSpace doesn't page up is driving me crazy, but I haven't tried any of the other chrome packages, which would probably make the UI better.
It currently doesn't refresh the window at all during some operations (either some part of page load or rendering), which means that when I switch away and switch back, I have a window frame and whatever used to be in that space. Doesn't affect functionality at all, but makes me associate it with other ill-toolkitted programs like WPO2k/Linux.
But, it's much better than it used to be, so I have some amount of hope. Although the fact that it _starts out_ using more memory than Emacs is disturbing!
Randall Parker (4/01):
I installed Netscape 6 last fall. Then when Moz 0.7 came out I did some benchmarking. It uses about a quarter less overhead in CPU time to render the same pages. Since then I've been loading later builds and probably download one of the nightly builds every week or so.
My experience is that it is improving gradually in performance and in terms of bugs. I've rarely had a bad nightly build. Some people just stick with the major point revs. But I've not had much trouble from the nightlies.
The latest Moz I have installed (build id 2001040108) takes about 8 CPU seconds to start vs MS IE v5.5's using 1 CPU sec on a 700 Mhz Athlon running NT. But once I start cruising around and loading pages I find that Moz takes twice the CPU overhead of IE. The initial start-up is worse than what happens once it is running.
So Moz is slower than IE. There's no doubt about it. Whether that's a problem for you will depend on your CPU. I like some things about Moz though. For instance, I've found some really good sites by using its What's Related tab on the left. Check it out. Its pretty cool IMO.
Among non-users of Mozilla, there is probably nobody more likely to want to upgrade to it than me. I'm one of the dwindling share of Netscape 4.x users. I use MSIE too, because nobody should ignore the 800-pound gorilla and because it's an excellent product. But it's not my first choice. Partly that's because I work on mainstream sites that can't afford to write off even 10% of browsers. So I need to see the web from the minority perspective. Partly, it's because I think genetic diversity is healthy, and I fear the consequences of a one-browser web. And partly, it's because Mozilla's messaging tools (mail, news) weren't a project priority, and don't advance beyond (in truth, lag behind) those in Netscape 4.x. The bottom line is that, were I to respond to the Web Standards Project's upgrade plea, I'm not at all sure I'd join the tiny fraction of Mozilla users. I might well join the tiny fraction of Opera users.
In any case, as the numbers plainly show, most people aren't concerned to maximize genetic diversity on the web. That's unfortunate, as we are periodically reminded when an IE-specific disease sweeps through the community. But browser preference is an individual (or sometimes corporate) choice, not a collective choice. I dearly wish that Mozilla were a more attractive choice than, so far, it is.
Mozilla: The best HTML renderer
Robert Carey (2/00):
Yesterday a person I work with produced an enormous HTML page consisting primarily of a huge table. In fact, it was really too large to be useful or manageable, but that is not the point of this message. We tried to view it in Netscape under NT 4.0. This caused the machine to crawl for several minutes, and then Netscape exited. We loaded the page into IE5 and it took a really long time, but eventually it was able to display the table. Just to see what would happen I tried loading it into Mozilla SeaMonkey. After it had loaded the first couple of rows it began displaying the table, and it finished loading it faster than IE, and it behaved better once it was loaded.
This may be a fairly minor detail about the new Mozilla, but I was impressed.
Actually, this isn't a minor point at all. A number of sites are so table-heavy that they cause Netscape 4.x to choke and die. Mozilla solves this problem in what is indeed a most impressive fashion. There's a sad irony here, though. Almost invariably, these table-heavy sites are not presenting large quantities of tabular data. Rather, they are executing complex layouts, using HTML tables because there is still -- after six years -- no consensus on CSS.
It's good that Mozilla can speedily render these anachronistic table-heavy pages. It would be much better if Mozilla, on its general merits, can find its way into the hands of a non-neglible number of users, and thereby encourage web designers to move forward with saner stylesheet-based methods.
Mozilla: The cross-platform development tool
Mark Wilcox, among others, sees great promise in the vision of Mozilla as an open-source cross-platform development tool for Windows, Mac, Unix/Linux, and alternative devices. And he likes the component strategy that drove the design of the product. But he asks: How the heck does it work?
Mark Wilcox (12/00):
I think the Mozilla group did the right thing to at least attempt a new platform. A simple browser would have been underwhelming.
Are they going about it in the right way? I think so, but someone -- actually a group of people -- need to shut up about it being a new platform and actually document how to friggin' use it. Perhaps when ActiveState finally ships the Python and Perl interfaces to XPCOM, we'll have something to work with.
We potentially have a way to interact in a platform-independent and even language-independent medium via XPCOM. We should have the ability to make usable, responsive GUIs with a combination of scripting and tags (XPCOM and XUL).
But I don't think anyone has a clue as to how to make it work. In the end people really don't care if it's open-source or not. Whichever way works to make their job easier.
DJ Adams, who has a knack for memorable phrases, coins another one here:
DJ Adams (4/00):
I can't help but feel that XUL in Mozilla has the potential to create a third sort of client. We go through waves: thin client (70/80's text-based serial/3270 terminals), fat client (80/90's fat Windows on every desktop), thin client (90/00's Net PCs).
The advent of XUL made me think: maybe there's an alternative to thin and fat, namely "dynamic". A client that starts out thin(-ish) but can grow and shrink in the sense that a UI-container grows and shrinks to take on the appearance of whatever page layout and flow logic is sent to it.
I really like the magic that the phrase "application virtual machine" conjures up in my head.
I love that phrase! And in the past, I've felt that Mozilla has been groping its way toward the right kind of hybrid of rapid development, scripted componentry, and tag-based UI construction. It seems the natural way to extend the first generation Internet client, and arrive at a next-generation client.
But we have to admit that this approach has, so far, gained startlingly little traction. And maybe we should ask a hard question: Can you get from point A (the page) to point B (the application) by just extending the browser model?
The ur-example of B, I'd say, was PointCast. It tackled issues such as content syndication and distributed application logic that are only now coming into the mainstream. And while it was distinctly an Internet application, it wasn't browser-based. Like more recent examples -- Napster, Jabber, Groove -- it wasn't built on an HTML/script model. All these are custom GUIs wrapped around special-purpose Internet-based infrastructure.
Recently in the newsgroup, John Faughnan called IE "the dog that didn't bark" with respect to .NET. It's not just Mozilla that has stalled. It's been years since any browser release felt like it mattered much, or had any kind of platform significance.
Microsoft, of course, has hedged its bets. The .NET framework offers two quite different UI technologies. WebForms targets the browser, while WinForms targets Win32. If the .NET runtime becomes pervasive, there could be a huge gravitational shift away from WebForms and to WinForms.
This is yet another reason why I've been agitating for the open source world to wrap its collective head around .NET. It's asking to much for the Mozilla project, alone, to define, implement, and promulgate a foundation for next-generation web apps. The browser-centric app dev model still makes sense for a lot of things. But for developers the focus needs to shift from the browser -- a container of a few kinds of components -- to the components and services themselves.
Collectively we're all better off when genetic diversity prevails, when there is more than one kind of container in widespread use, and when at least some popular flavors are open-source products. I continue to hope that Mozilla will be one of those flavors. But it's taken longer than anyone expected, the goal is still not clearly in view, and the next-generation Internet isn't waiting for Mozilla to figure itself out.
Jon Udell (http://udell.roninhouse.com/) was BYTE Magazine's executive editor for new media, the architect of the original www.byte.com, and author of BYTE's Web Project column. He's now an independent Web/Internet consultant, and is the author of Practical Internet Groupware, from O'Reilly and Associates. His recent BYTE.com columns are archived at http://www.byte.com/index/threads
This work is licensed under a Creative Commons License.