Mozilla is seriously starting to piss me off.

It has such potential to be awesome, but it falls short in so many little irritating ways that it's difficult to "stay in love" with it.

In this rant, I am referring to this build and version of Mozilla Firebird: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.5a) Gecko/20031010 Mozilla Firebird/0.6.1

  • It crashes all the damned time. -- Okay, not incredibly often, but at least once a day. It crashes when I have a bunch of tabs open, and it never remembers what tabs were open or what URLs they pointed to when it starts up again. And the tabbed browser extension is supposed to fix that, but doesn't. The crashes are usually random, in that specific URLs crash it, but which URLs will crash the browser changes on a day-to-day basis.
  • It's dog slow. - Yes, I know it's a much faster engine these days, but it's lagging way behind some other browsers. One of them is our friend Internet Explorer, but Opera, Links, w3m, Dillo, etc., also load pages faster. IE always loads pages faster, and for months I thought was just slow until I used it a bit in Links. Then I realized "oh, Mozilla's just slow." Loading any page takes a minimum of five seconds. Anything more complex than a plain HTML page with no tables or frames takes exponentially longer. I work daily on a project with complex layouts (not by choice; I'd have gone with lighter-weight HTML) and each page load can take upwards of twenty seconds. This is on a notebook with a 1GHz CPU and 256MB of memory. Nothing else running, Linux 2.6.x underneath it (2.4.x was the same way). I shouldn't grow gray hairs waiting for pages to load. I hate to compare like this, but if IE can render a complex page in under one second, surely the technologically "better" browser on a superior platform should render it faster still, yes?
  • It professes its standards compliance, but fails spectacularly when faced with non-compliant HTML. - It doesn't just render the page wrong, or anything else management; it fails in the most unusual way possible, going so far as to render the page unusable. My favorite is when a submit button is accidentally nested inside an anchor tag, as in <A NAME="foo" > My spiffy form! <INPUT TYPE="submit" NAME="submit" VALUE="you can't click me in Mozilla!" /></A> ... I am not a standards guru and do not know the "official" position on what should happen in this case, but c'mon -- it's "syntactically" valid even from an XML perspective, and certainly no illegal nesting is happening here. So, while every other browser treats the submit button as normal, Mozilla won't let you submit the form with that submit button. That makes things a real pain in the ass. Even does this sometimes, making it impossible for me to reply to private messages when Mozilla spots this construct and gets a burr up its ass about it.
  • It's a memory hog. - Even Mozilla Firebird chews through memory like a baseball player chews through tobacco. I don't expect it to stay really small ... well, yeah, actually I do ... but it's sure not doing that now. I have two tabs open. Firebird has a virtual memory size of 136 megabytes according to top. It has 47 megabytes resident in memory. Um ... these are not complicated pages. Closing one of the tabs just now caused no change in the virtual image size, but increased (!) the resident size by seven megabytes. This notebook already has a limited amount of memory, and Mozilla isn't helping matters when it grows to the size of a gorilla.

The sad part is it's still the best browser for Linux. Galeon is built from Mozilla's guts just like Firebird is, so you're just trading one set of quirks for another, built on top of the same engine that renders slowly and chews up lots of memory.

The alternatives out there just don't do what Mozilla does right ... tabbed browsing, HTTPS support, graphical mode (text-based browsers are great but I find reading proportionally spaced fonts much easier), JavaScript support (as much as I hate JS, work requires it), antialiased fonts, the DOM Inspector, the plugins (adblock, googlebar), etc. I could deal with the memory hogging if it were faster, didn't crash, and handled dumb HTML mistakes with a bit more grace ... but right now it's just a big fat mess.

End rant mode.