I've been trying out Google's Chrome web browser on and off over the past week or two. As things currently stand i don't think i'll be switching on a permanent basis, for two big reasons and a lot more little reasons.
The #1 reason why i'd like to find a better browser than Firefox is the memory usage. They've claimed they've improved memory handling in recent versions, in fact i think they've made that claim in just about every significant release, but for my use case i really haven't seen any improvement. To be fair i open a lot more tabs than is probably wise, but it's the way i browse the web (on a desktop anyways,) and it seems to work for me. My "usual" starting setup consists of two different windows, one with 13 tabs open and the other with 22 tabs. This will often expand dramatically over a couple days before i have to close Firefox and restart it.
My issue with Firefox isn't that when i open a lot of tabs it uses a lot of memory. The main issue is that after opening a lot of tabs closing those tabs again doesn't free up the memory. I also had a suspicion that the amount of memory consumed was increasing even when i wasn't opening new tabs. Thanks to the comparison process with Chrome that suspicion is now confirmed. For those who care about the details, the add-ons i'm using are AdBlock Plus, Ask Toolbar for Firefox (er, why do i have that one? It's not even compatible with the current version *uninstalls*) Microsoft .Net Framework Assistant 1.1, NoScript, and Xmarks.
After starting up Firefox and opening up the "usual" set of tabs, Firefox was consuming 254 M of private bytes and 362 M virtual bytes. (My "megs" are inaccurate, but consistent. I'm taking the number of kilobytes reported by Process Explorer and rounding to the nearest 1000k.) Near the end of the day my usage had expanded to 55 tabs in one window and 37 tabs in the other, and the memory usage was up to 671 M private and 796 M virtual. However when i came in the next morning the memory usage had expanded to 911 M private and 1,038 M virtual. (I'd opened up a couple more tabs after my check the evening before to check traffic on the way home, but not enough to account for the discrepancy.)
I terminated the trial at that point since i wanted to get on to the comparison with Chrome, but that describes what i've generally observed with Firefox. Opening more tabs increases the memory usage, and leaving it open increases the memory usage, but there's nothing you can do to significantly reduce the memory usage other than shutting the whole thing down.
Chrome handles memory usage a little differently. It starts up a new process for each "kind" of tab you open. (All "google.com" sites are assigned to one process, but "slashdot.org" has a different process.) In theory this is to prevent a bug in one website from bringing down the whole browser. My initial set of tabs resulted in 34 different "chrome.exe" processes. Individually each was fairly moderate in usage (a median of 12 or 13 M private and 110 M virtual) but when i added them all up it came to a total of 528 M private and 3,728 M virtual! Twice as much private memory as Firefox and ten times as much virtual memory!
After using it for a day i was up to 38 tabs and 29 tabs in the two windows. Less than i'd gotten up to with Firefox, but 44 processes were now using 872 M private and 5,259 M virtual. When i came back the next morning the total was 886 M private and 5,275 M virtual.
I also did some per tab calculations:
Start: 10 M private, 14 M virtual
End of day: 7 M private, 9 M virtual
Next morning: 9 M private, 11 M virtual
Start: 21 M private, 149 M virtual
End of day: 13 M private, 78 M virtual
Next morning: 13 M private, 79 M virtual
So the short version is: Firefox starts out with a comparatively small footprint, balloons fairly quickly with more tabs, and grows slowly over time. Chrome starts out with a large footprint, grows moderately with more tabs, and almost not at all over time. At the end of the one day period they were both using close to the same amount of private bytes (911 M vs 886 M) but Chrome was using five times as much virtual memory (1,038 M vs 5,275 M.)
If i'm feeling bored i might try a future experiment where i have them both open at the same time and open exactly the same set of tabs.
I'm going to digress slightly to talk about the minor complaints i have about Chrome now, which mainly relate to the UI and design. I generally don't like change for the sake of change. I think it's great when they enable new functionality or make things easier to use, but just changing things so they look different doesn't usually sit well with me. For purely cosmetic changes i'll usually grumble about them and either re-skin it to the old way, or just get used to it over time. So although they bug me, i know these complaints aren't all that important.
I don't like the lack of the title bar at the top of the window. It bothers me that it looks significantly different from every other window i have open.
I don't like having the tab bar above everything else. The designers explain it as the tab being the primary "container" element in the browsing experience. (More on this later.) To me however it grates aesthetically. It seems like we've moved from a file cabinet with 15 file folders in it to 15 file cabinets each with a single file folder in them. Each tab does not need "it's own" refresh button, it's own URL box thing, it's own text search box, etc. That last is an aesthetic change that actually impacts usability. When switching between tabs the text search box disappears because it is an element of the tab. If you hit ctrl-f it will repopulate the text box with the last search you did, but it's still inconvenient. If i've just done a google search for a term and opened up a bunch of tabs in Firefox i can find the term in each page by doing "ctrl-pgdn" and then mouse-clicking on the "next" button of the text search. In Chrome it's "ctrl-pgdn, ctrl-f, mouse click." So their aesthetic improvement has increased the steps to (what is for me) a pretty common task by 50%. (This is totally aside from the usual personal "change to the UI" complaint that i've gotten use to have the search bar at the bottom of the window and Chrome has moved it up near the top.) And apparently a few people have actually run into usability problems with the tabs being right at the top. It seems that without the title bar and menu bar providing some space, there are some other programs that put some kind of status bar along the top of the desktop, which covers up the tab bar when Chrome is maximized. This would definitely be a case where the designers made an aesthetic choice that is just plain wrong under certain conditions that they didn't foresee (again, more about that later.)
I also don't like the fact that new tabs are opened right after the tab you opened them from. I'm used to having a set of tabs on the left that i refresh and recheck fairly constantly and new "temporary" tabs accumulating on the right. I don't want new tabs getting opened amidst my "regular" set of tabs and messing the ordering off. This is apparently a common enough complaint that they added the ability to "pin" tabs to the left side. Apparently at least some people refer to such "regular" tabs that you check regularly and open links from as "anchor tabs." However for me once you've got a significant set of tabs anchored/pinned on the left it doesn't make sense to then have new tabs getting opened in the middle of your tab bar, so i found an add-on to always open them at the end of the bar, just like with Firefox.
However along with a lot of minor aesthetic gripes about the new tab system, this also brings me to my next big complaint about Chrome. It just doesn't handle tabs well in general. It's just fine if you have a very small number of tabs. However every time you open a tab it shrinks all the tab headers a little to make them fit in the window. If you open enough tabs then soon you can't see any text in the header at all, just the icon. Open up some more tabs and then you can't see even that. You can mouse over the tab headers to get info about what each one is, but that's a real pain if you're looking for a specific tab.
I remember Firefox having this exact same problem in the early days of tabbed browsing. I remember complaining about it, i remember reading forums where other people were complaining about it and making suggestions about how to fix it. I remember it taking a long time to get all the issues ironed out. But eventually, with feedback from the users and a couple different trail runs Firefox got everything working. Now tabs have a minimum width, and if you add more then you get a scrolling task bar. There are scroll buttons on right left and right side or you can scroll it using the mouse wheel, and at the very right edge there's a drop-down menu that will list all the tabs you have open so you can jump directly to the one you want if it's off screen.
Chrome did not implement any of those features. They recreated what Firefox had in its must "buggy" state, when tabs were first introduced. Why did they do that? The designers actually made a blog post explaining why. Their answers are dumb.
The really short version is. "We are always right, we always know what is best for the user. If we don't think a solution is good enough for the user we won't implement it, even if we can't think of a better way to do it right now. We'd rather have you use a product with a major usability problem rather than include a workable solution that we don't think is good enough. And once we've decided what the right way to do something is, the user isn't allowed to do it any other way, because we are right and the user is wrong."
I think a couple key quotes are: "We chose not to go with an overflow menu or scrolling tab strip like in some other browsers because we think there are other usability problems with those approaches."
and: "We're aware that the prompt has saved people (including ourselves!) using other browsers from losing tabs, but we have been trying to come up with a more creative system for helping this scenario that doesn't interfere with the window's close button."
and finally: "In all of these areas we've resisted adding options to control behavior. Keeping our set of options minimal is a good forcing function for us as user interface designers to come up with the right approach, since we never rely on the crutch of making the user decide what we were unable to."
I've worked with designers like this on projects before. *cough*the lead designer of Red Alert 2/project lead of Starcraft 2*cough* They can be great people and great designers, but like great people in pretty much every area of expertise, they sometimes (often?) become a little too convinced of their ability to determine what is "the best." Not like, say, "Uwe Boll," who is convinced that pure crap is solid gold just because he made it. They are talented and can usually judge the quality of something properly, but they'll often abandon the "good enough" in search of "the best," and if there are two or more contenders that are equally good then once they've decided which one is "the best" you can have a gods-awful time trying to convince them the other method has any merits. They'll often become convinced that giving the user options to change elements of the game only allows the user to screw up something that's already been designed to be the best that it can possibly be.
Obviously it's possible for a product to have _too_ many options (well, i might debate the point, but i'll grant the theoretical possibility for the sake of argument) but i think there can be a happy medium between overwhelming the user with options and having absolutely no options at all. If for no other reason than because (to me at least) not allowing the user to have any options about how they interact with the product seems like a sign of hubris from the designers. My aesthetic sense does not necessarily align with the designers' aesthetic sense, and that doesn't mean my aesthetic sense is wrong. I don't think a vertical drop-down list aesthetically clashes with a horizontal tab scroll bar, to me it seems like more of a counter-point. And even if i did feel the same as them i still don't think implementing _no_ solution to a known problem is better than implementing a solution that is aesthetically less than perfect.
I know that it's possible that a solution to these issues could be created through one of the add-ons, and in fact there already are a couple such add-ons that try to correct things. However none of the ones i've seen do an adequate job of recreating the simplicity and functionality of the Firefox system, and i find it absurd that we have to seek help through add-ons because the designers are actively avoiding implementing a merely adequate solution.
And note that this blog post is now over a year old. They have spent more than a year putting off the implementation of tried and true solutions to known problems on the theory that they're going to come up with something better. Eventually. Something so awesome that no one will want to use the old solutions that have worked perfectly well at solving those problems for the past couple years. (And if they still insist that they want to then they're just wrong and not letting them do that is for their own good.)
Maybe they're right. Maybe the will eventually come up with something so wonderful that i'll never want to use those crappy old Firefox methods again. But until they either come up with that better solution or at least implement an interim solution that's at least as good (and possibly fix the memory issue) there's no reason why i should be using Chrome now. They've already stated they're not interested in my ideas of how they should do things unless it happens to align with their own ideas (since there can be only one solution) so i'm not that interested in helping them test an inferior product.