A History of Firefox
chrisd writes "Firefox module owner Ben Goodger has written what I think is a very interesting post about how Firefox came into being. It goes into details unheard of to date about the inner workings at Netscape and he fills in a timeline spanning from the open sourcing of Netscape to the release just recently of Firefox 1.5. Especially interesting and poignant are comments like this: 'I was told I could not expect to use Open Source tricks against folk who were employed by the Company (all hail!). I held true to my beliefs and refused to review low quality patches. I was almost fired. Others weren't so lucky.'. Anyhow, I consider this required reading for any fan of the Firefox browser." Or even just a programmer. Worth reading.
I think Netscape's mistake came earlier: when they thought that people would each pay $40-50 to buy a standalone browser. IE cut the floor out beneath them and Netscape went down hard after that.
Someone arriving at Netscape at 1999 would have been someone boarding a sinking ship, it would seem...
It already does. I've been running this browser instance in single-window mode (tabs only, never a new window - ever) for 2 months now and it's only using 95MB of memory. Which granted, is a lot, but it's fairly normal for Firefox with 10 tabs open. If it didn't release memory when I closed tabs, it would be way, way, way beyond that.
Random and weird software I've written.
Unlike Mozilla, Opera has always had make money, and that in a situation where they've had less than one per cent of the market. So Opera hasn't been able to take "shortcuts" and rely on donations until it turned out that searches could actually pay for development, alongside other deals of course.
That hurt Opera a bit, I think. You have to pay for Opera while the others were free. Then you could choose ads instead, but most people don't like those. So Opera never got a huge following.
Opera was also a power user program for many years. It is not until recently that Opera has cleaned up the default user interface to make it easy for newbies to start using it as well.
While the payware, the ads, and so on were necessary to keep the company afloat, it has also hurt Opera. Firefox could come around to steal the thunder at exactly the right time, and backed by a massive marketing campaign. Firefox's timing was incredible. They released 1.0 when everyone was talking about how dangerous it was to use Internet Explorer.
While Firefox was free as in beer, easy to use, and ready for the masses (more or less), Opera still had to rely on ads, and had to charge for the browser. But they cleaned up the UI, and last year Opera was released for free-as-in-beer.
Some may say "too little too late", but Opera has never been huge. There isn't much of a market share to lose! Opera has a small but loyal following, and it's still smaller, faster, and it has more functionality out of the box than Firefox.
Now that Opera has simplified the UI and removed the ads, it can only grow. It will need proper marketing, though, and it will need to differentiate itself from Firefox and establish an identity which gives people a clear vision of what Opera is about, and why they should use it instead of something else.
Opera has always been the "browser innovator". Most features in Firefox were available in Opera ages before Firefox did it, and some were even invented by Opera. But these days Firefox takes all the credit, and that's partly because it can rely on others who have done everything, so it can simply pick and choose from other browsers' innovations. And it can avoid the pitfalls too, because Firefox already made those mistakes back when it was "Netscape". Firefox obviously benefits from being Netscape's "successor". All web designers know about Netscape, after all. So they can't ignore it when designing pages.
Opera has done a lot, but one wouldn't think so just by looking at its market share. It's a pity, really. Opera was the only independent browser, and they put real money into open standards. IE was Microsoft and Mozilla/Firefox was AOL/Sun/Nokia/IBM/etc. Everyone else was in some major corporation's pockets, but not Opera.
Now Firefox has stolen the thunder, partly deserved, partly undeserved. But I think Opera can make it too. They just need to get the marketing right.
But we had a lot of fun :-)
I work with the Mozilla code every day. It is complicated, yes, but that doesn't necessarily mean it is all badly written. I think you probably don't understand the reason for the complexity, and therefore you incorrectly consider it to be terrible code. I'm not saying we don't have some bad code in there, but to say what you are saying about the entire codebase is very naive.
well, and i'm really not making this up, i came home from work about a week ago and opened the laptop on my coffee table (that had been on for about a week, probably, with an instance of firefox running constantly) and i found that it had stopped responding almost entirely. I checked task manager (took a while to open) and I was running at 1.2GB of memory/page file usage (this is a laptop with 512MB of RAM). Checked Firefox process and that was well over 300MB. I killed the firefox process (this took about 10 mins to finish cleaning up) and memory usage dropped to around 300MB total - meaning i had recovered around 900MB from the firefox process. I'm not sure why there was a discrepancy between the reported memory usage and the memory recovered but there you go. The memory leak didn't seem to happen gradually either, as it was fine the evening before. Unfortunately I have no idea what the cause was so i haven't submitted a bug report (maybe i'll try and reproduce it sometime - probably not though) but i'd say there's still at least one big memory issue floating around.
Hi Berger,
:) Sour grapes don't help anything, and like others here, I enjoyed this article as a persuasive essay on why software engineering doesn't have to be as dispassionate as most people think.
I appreciate the nod. Richter made a similar comment on the post itself. I attempted to respond with the following about an hour ago, but it seems it didn't make it past the moderation filter, so here it is:
"Hi Richster,
I'm not sure either. My post on Firefox Religion from this time last year did mention Ben. But to be fair, Ben's article does begin with a discussion of perspectives
I haven't lost interest in Firefox by a long shot, but coding-wise I prefer to work in leaps and bounds in small teams on fledgling products. Firefox no longer fits that profile--which is mostly a good thing! So I've been working with Joe Hewitt (another of the original Firefox guys) on a new project that will complement Firefox.
I think when we release, it will become clear that I never actually strayed too far from the fox. But I also know that the kinds of things we're working on could never be achieved--or achieved quickly enough, at least--if attempted in a project that has grown as large and mature as Firefox. Thus, our new project is in many ways a realization of where I would take Firefox today were it still as pliable (and thus immature) as 2 years ago.
Given that there are only two of us on the project right now, it consumes about all the coding time I can muster...so I allocate my Firefox time on SpreadFirefox and its campaigns, such as our newest, Firefox Flicks.
Thanks,
Blake"
I don't know where you got that idea, and I'm not going to argue with you here, but that is definitely not a given. An issue with your comment that makes me think you don't know much about standards compliance in rendering engines is that Acid2 is an almost meaningless test. It does not in any way measure overall standards compliance. It is an interesting test that has been turned into a tool for marketing these days, and it worked on you.
http://en.wikipedia.org/wiki/Tabbed_browsing According to that article in wikipedia, tabbed browser wasn't invented by opera but by InternetWorks back in 1994.
Will I get up today? Prolly[.org]
Maybe you were looking at the user identification string, which says "Mozilla/5.0" for Firefox and the other major browsers. For example, mine identifies itself as "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.1) Gecko/20060202 Firefox/1.5.0.1 (mahowi)" when I check Help->about Firefox Community Edition