Firefox 1.0
A few hours from now, The Mozilla Foundation (also known as MoFo) will officially announce the release of Firefox 1.0, and the biggest marketing campaign any open source project has ever seen will be unleashed. The message will be simple and effective: download Firefox now, take back the web. Tens of thousands of firefox fanboys will ruthlessly converge upon the helpless internet, parroting a message they barely understand, talking about security and usability and a better browsing experience, working to convert millions of people. The underlying goal of MoFo's marketing people who'll be instigating this "community effort": to gain a significant amount of market share - for the gecko engine no longer to be a niche player, but for even the most clueless web designer out there to have to take it into account. Given this, mozilla.org (a different beast from the Mozilla Foundation, although the latter is working on behalf of the former) will hopefully finally be able to make some progress on its goals of advancing the state of web standards.At heart, the intentions are laudable. The execution of it all, however, has - in my semi-informed opinion - some major flaws. The biggest of these is Firefox itself.
So, against the hordes of jabbering fanboys with their simple message will stand little ol' me, with a more complex message. I do not for a moment think I can alter the outcome of the battle. Firefox 1.0 will be a massive success. This lightweight browser will receive rave reviews, and advertisements like a full page ad in the New York Times will make Firefox a household name.
What I hope to accomplish with this message is to reach you, the few hundred people who I personally have introduced to Mozilla over the course of these last three years, so that when the smoke and mirrors disappear and the magical "can't do wrong" shine will leave Firefox harshly exposed in the cold daylight, this will hopefully not affect your opinion of Mozilla proper, and open source software in general.
Let's start with the complex message:
If you are currently using Internet Explorer as your web browser, I strongly urge you to start using a different browser, such as Mozilla 1.7.3, Netscape 7.2, Opera 7.x, or Firefox 1.0. All of these come by default with features such as tabbed browsing, popup blocking, banner blocking and much, much more - showing you just how outdated IE really is.
If you are currently using Mozilla, Netscape or Opera as your web browser, I just as strongly urge you not to be taken in by the upcoming hype, and to just stick with it. Firefox, to be sure, is a very nice browser. It's fast (though despite claims to the contrary, not in any way - other than startup - faster than Mozilla), reasonably secure, and very, very highly polished. This last is its major feature. Firefox specifically and ruthlessly targets the market segment of clueless computer users. It's the browser to recommend to your grandmother. (No offense to those grandmothers who aren't afraid of computers.) ;) Everything in Firefox is as simplified as computer geeks who can only envision using a browser in one specific way - their way - can make it.
What Firefox is, is a rebuilt front-end on top of a stripped down version of Mozilla. The entire backend - specifically the layout engine, "gecko" - is the same. This backend has been developing over the course of many years, and received a massive amount of testing. All code checked into this backend has been extensively reviewed, with the important parts receiving a lot of thought about security implications. This has resulted in an absolutely rock solid product (Mozilla), harboring the most advanced and most standards compliant layout engine out there. Firefox gains all the benefits from this.
Unfortunately, the Firefox frontend has not received a similar amount of scrutiny. Code review is not necessary for Firefox's few developers, and security is not their main focus. More, because of its very nature of being targeted to less knowledgeable users, the testing is receives can be expected to be more shallow. (It might be that its higher popularity is offsetting this, but as hardly anyone seems to be migrating up the usual path of bug reporter - bug triager - developer on the Firefox side of things, I doubt it.)
Yet the Firefox message soon going out to the internet on the wings of its many fanboys will focus heavily on security. After all, Microsoft's Internet Explorer has been revealed time and again as one of the most insecure bug-ridden pieces of crap in existence, and if there's anything that will convince people to switch, it's the chance to be free from the endless deluge of popups, spyware and adware sailing in unimpeded through these holes in this "vital integrated part of the Operating System."
Now, to be sure, chances are that Firefox will be more secure than IE. But amidst all the upcoming hype, it'll be hard to remember the following: it's not perfect. For that matter, neither is Mozilla or Opera, but any claims of security by those two will be brought a lot more balanced. (And personally I think it's a safe bet that in the fullness of time, Firefox will be revealed to have several more security vulnerabilities than Mozilla, despite the large overlap in backend code.) Any program with which you handle content existing on the internet will have security implications: the only way to be completely secure is to turn off the computer. :P
Knowledgeable people will not be claiming that Firefox is completely secure. But I'm very afraid that knowledgeable people will not be heard all that much in the upcoming days, and that if the message from the fanboys is going to get through to people, any subsequent security problems in Firefox which will be discovered (and they will be discovered, you can be sure of that), will not only reflect badly on Firefox itself, but also on Mozilla, and all of open source software.
The other relevant problem with Firefox (for I have a lot more problems with it all which are not relevant to this message) is the simplification that I've shortly touched upon before. Currently Firefox is mostly used and promoted by users who're still slightly tech-oriented. "Bloggers" in particular have been raving about it. Yet Firefox is not meant for them. Many features they (and, I suspect, a lot of you) consider essential could be axed just like that. Have, in fact, already partly been axed. Spending all my online time active in various official Mozilla IRC channels, I've already seen the disillusionment start to spread amongst the people who started out as its greatest fans. Yet before this phase, they were its biggest proponents. They are the kind of people who'll have most chance to reach most of you and convince you to switch. So, the second part of what I'm trying to say - in my own longwinded way - is to be aware. If you consider yourself reasonably unafraid of your computer, this browser is not intended for you. It might at present still appeal. If so: great, awesome! Go and use it. But also give Mozilla proper a try. With the MoFo in control of the mozilla.org website, you will not see Mozilla itself promoted. Hell, we had to fight to keep even the smallest mention of it on the front page. But for me, it's still the browser (and mail client. and chat client. and web development tool) of choice. It's not as polished, nor as pretty (though personally I'd prefer Mozilla's "modern" theme over Firefox's "winstripe" any day of the week). But it makes it a helluva lot easier to browse your way, no matter what that way is. Preferences to change behaviour of the browser are actually exposed. Features that don't get in the way but make all the difference for the 10% users who know how to use them... have not been ripped out (*gasp*), and in the long run you can rely on this remaining that way.
So, in conclusion:
If you consider yourself not very knowledgeable about computers, if you see a web browser as just a simple tool for viewing websites, if you prefer simplicity and elegance and just want to get on with the job: stick with or get Firefox, and love it. Remember it's not perfect, and be aware that you'll need to upgrade it every so often, and you'll be very happy using it.
If you consider yourself a power user, if your web browser is a hub of activity which you use to quickly and efficiently gain access to a complex network of information, spending more time in this program than in any other one, if you prefer be able to slightly change the way things work to best suit your personal workflow, and you're willing to live with some extra clutter or less pretty icons to gain this: stick with or get Mozilla, and love it. You'll already know that it's not perfect, and upgrading to gain new features will come natural, so don't worry, and be happy.
If you're anywhere in between, you'll probably want to try both to see which best suits your needs. If that sounds like too much work, my recommendation is to go with Mozilla - but then, you'd probably guessed that by now. :)
That said, if you find yourself caring, some additional unsorted notes and explanations:
* Mozilla is an integrated web suite. It holds a web browser, a mail/news client, a chat client, an HTML Editor, a javascript debugger, a tool for inspecting the DOM-tree of websites (essential for efficient web development) and various other features which are usually not thought of in a stand-alone mode. You can choose not to install most of these components when you install Mozilla, so that the (minimal) amount of clutter their existence would cause won't even bother you. Personally I recommend just doing a full install, and slowly growing into the entire suite. When I first used Mozilla, I used only the browser and mail client, yet nowadays I use all these tools except for the HTML Editor. If they hadn't already been present, I probably never would have, and would have to deal with inferior alternatives.
Firefox is purely a web browser. The chat client, DOM-inspector, and (I think) javascript debugger can be installed separately as extensions, but where with Mozilla you can count on the common install having them available, with Firefox you can count on the common install not having them available. For mail/news, Firefox has a companion product called Thunderbird (currently at 0.9, with a 1.0 release being scheduled to occur in a few weeks). Thunderbird is much closer to Mozilla mailnews than Firefox is to the Mozilla browser, and is heartily recommended as a stand-alone mail client. The integration of Firefox with Thunderbird is however vastly inferior (in my personal opinion) to the integration of the different parts of the suite in Mozilla. A stand-alone HTML Editor is also being developed under the name Nvu, but although the improvements there are supposed to come back to the Mozilla tree, this has (as far as I'm aware) not yet happened, and the existence of any integration of Nvu with Firefox and Thunderbird is doubtful.
* Why I care: Firefox does not suit my browsing needs. (This impression is based on trying out an old version of Firefox, and general knowledge of features developed for Firefox. To be completely fair, I will give it another (quite serious and honest) try now that it's reaching 1.0, but based on factual knowledge of changes made, expect it to be even less suitable.) I use every single component of Mozilla (excepting the HTML Editor), and find the integration of these components to be essential to an efficient workflow. Yet... Elements in MoFo have been agitating against Mozilla proper ever since Firefox was still known as Phoenix. They've publicly and repeatedly stated the intention of ditching Mozilla itself. I also happen to be involved in Mozilla development. I'm far from a core developer, but still consider my overall contributions to have mattered. Mozilla is essential to how I work, and I've loved being able to give back something for that. If the Firefox proponents manage to kill off Mozilla, however, I feel a lot of my work will have been wasted. More, the work of a lot of core developers will have been wasted. Additionally, I believe that killing off Mozilla will mean an end to the long standing tradition of bug reporters becoming bug triagers becoming developers. Mozilla appeals to the kind of geek willing to go that route, and Mozilla development invites outside contributions. Firefox on the other hand, doesn't, and Firefox development is nearly completely closed, with user contributed patches all but ignored. In the long run, I see nothing but death, destruction and corporately-controlled development on that path. And the best way I see to help prevent this from coming to pass is to keep alive a significantly large group of people using Mozilla. (To be completely honest, I do not think MoFo will ever succeed in killing off Mozilla, as some of the most essential backend developers simply cannot do their work anywhere near as efficiently with Firefox as they can with Mozilla, but I'd rather help prevent MoFo from ever seriously trying, as any such attempt runs the risk of alienating these essential developers. Bela knows that MoFo has a history of alienating contributors and of sucking at communication.)
* Mozilla development is a meritocracy. You gain responsibility, respect, and influence to change development decisions by showing you deserve these things. User comments are listened to, particularly when the users are contributors on the field of bug reporting and triaging. On the field of user interface design, this has led to the unfortunate side effect of any change leading to whining from people who liked the previous way better, and user interface changes thus for a large part stalling, but (from my point of view), overall more good than harm has been done.
Firefox development is a dictatorship. The MoFo has hired a small number of developers, and these are absolutely in charge of all decisions. Not wanting to be exposed to whine-fests was one of the main goals for the way Firefox responsibilities were originally set up, with the developer being the one and final authority, with no possibility of appeal. A lot of good has resulted from this - see the very polished and clean user interface - but at the cost of ruthlessly ripping out important functionality and ways to do things whenever this one developer could not personally envision a use for them. Sad to say, a lot of Mozilla compromises that a lot of thought have gone into, weighing security versus usability versus uses cases from different work flows, have been completely ripped out or simplified far beyond reasonable limits, simply because the developer didn't know how to use features to their full effect, and would not listen to people pointing out such use cases. (The end result, ironically enough, is that a few of the most atrocious Firefox UI changes have - after the fact - given rise to even bigger whine-fests, several of which have been so completely overwhelming in nature that the bad decisions have been very hastily reversed. All without acknowledging that the decisions were bad, of course.)
* A lot of what I've said above is not 100% completely accurate. I've simplified a lot of things - sometimes because I am not aware of the exact details, mostly because they are irrelevant. I do in all honesty believe that I have stated no outright falsehoods, and that I have not grossly misrepresented anything. Any corrections on what I've written will be gracefully accepted and quite probably subsequently ignored. :)