My Comparison of Web Browsers

January 14, 2010

When developing Web sites, it is essential to test in more than one browser and on more than one operating system. That's how I've gotten to know the four major browsers on the PC and the two major browsers on the Mac. I thought I would share my experience.

My observations generally fall into the following categories:

  • Speed of operation - overall performance
  • Speed of JavaScript execution - very important with today's AJAX-driven sites and he plethora of JavaScript libraries available
  • The user experience
  • Developer features - support for testing Web sites, including JavaScript.

You'll note that I have not mentioned security. At this point all the browsers have become much more sensitive to the dangerous problems that plague the Web. Reports I read last year gave IE8 a slight edge over the other browsers but recently Chrome surprised by taking top honors. However, the gap is not so significant that users of the other browsers need be overly concerned. At the moment, it's a wash. That could change overnight.

 

IE8 LogoMicrosoft Internet Explorer 8

I want to say that version 8 of Microsoft's venerable browser has the company finally getting its act together. That's not entirely fair because even with the problems encountered ever since version 5.5, the browser has held the dominant market share by a significant margin. When you're winning, you have your act together by definition.

Firefox was a wake-up call to Microsoft in many ways. Mozilla rendered in much tighter conformance to HTML, XHTML, and CSS standards, something that IE found a struggle. That is the biggest improvement and it puts IE8 in a much stronger position. It also takes a lot of the wind out of Firefox's sails.

Standards compliance is a double-edged sword for Microsoft. While everyone welcomes it, developers like me have spent years working around limitations and bugs in IE's rendering. Our sites attempt to determine that IE is the browser being used and adjust fine points of layout accordingly. With IE8's more slavish obedience to standards, that strategy becomes flawed. Sites that rendered properly in IE7 may not render as well (or even at all) in IE8. I give Microsoft a lot of credit for toughing this out and getting it right even as IE8 more fully exposes the weaknesses its parents, IE7 and IE6.

IE8 CompatibilityTo deal with this problem, IE8 introduces a compatibility mode. If the site does not display correctly, the user simply clicks on the compatibility button, which places IE8 in IE7 mode. Although this is not foolproof, so far I have yet to encounter a site for which this did not immediately fix the display problem. Better yet, IE8 remembers the setting and will automatically use it the next time the site is visited.

Microsoft had a developers' toolbar for IE7 but it was a separate add-in, not widely publicized. With IE8 it is built-in and somewhat improved. It is still not quite to the standard set by the hugely popular add-ins available for Firefox but I would call it competitive.

Microsoft has historically done an excellent job in usability and user convenience. One of the reasons that IE became so popular, other than being free when Netscape was still charging, was its better user interface. Each successive version of IE brought new and better features. About the only thing that Microsoft missed was tabbed browsing, but that's been in place since IE7. I still consider IE both the most refined and most approachable browser with the broadest feature set.

IE8's biggest disappointment is JavaScript execution speed. IE8 is faster than IE7 but remains the slowest browser and looks absolutely pathetic next to Chrome. Although Microsoft has closed the gap with Firefox, it has apparently been wearing blinders and has missed the dramatic improvement in speed demonstrated by Safari and Chrome. Because JavaScript, AJAX, and other client-side technologies that depend upon JavaScript are becoming so vital to modern Web sites, JavaScript speed will become one of the most critical features of browsers.

I have had some annoying problems with IE8. One is that new tabs will open dead - they won't display a site, any site. However, odd behavior started with IE7 about a year ago, including printing becoming disabled. The non-printing behavior carried over after I upgraded to IE8 and about a week ago vanished. This is so peculiar that I attribute it to the fact that my Windows XP install is three years old, never having been rebuilt during that time. I plan to move to Windows 7 late this year, at which time I'll be rebuilding from scratch. If the odd behaviors persist after that, I'll report.

Despite the odd behaviors, IE remains my default browser.

 

Firefox LogoMozilla Firefox 3.5

Those who discover that my default browser is IE and that I develop Web sites think I'm nuts. They probably have good reason, but so do I.

I remember when Firefox was released and the excitement it generated. Deservedly so; it came at a time when Microsoft was slow with updates to IE and recalcitrant about Web standards. Firefox changed that. I still have a copy of the newspaper ad the Mozilla Foundation ran listing the names of all the supporters who contributed cash; my name is in that list (nothing extravagant, I assure you).

That glow is off. At this point, Firefox has to prove itself against a seriously rejuvenated effort from Microsoft and potential competition from Google and Safari. That may be a tough assignment. I have always felt that Firefox's appearance and user interface were somewhat unrefined, no competition for IE. Polish has come not from the browser itself but from add-ins, the better of which IE has adopted as standard features of IE8 (an example is color-related tabs). Technically, Firefox has been eclipsed in technical areas such as JavaScript performance by Safari and Chrome. It is not a stretch to suggest that Firefox is now the browser that is lagging.

One of Firefox's biggest problems is a blend of user interaction and technology - it loads very slowly the first time. And saying "slow" is generous; it literally crawls. After this initial load, Firefox will open quickly as long as memory has not been purged of its supporting files; if sufficient time elapses between program sessions and much happens in between, starting Firefox is again a slow affair. My observation is that those who don't complain about this tend to keep Firefox open all the time and thus keep its resources at hand, in memory.

What sets Firefox distinctly apart is its add-in architecture. It is an open system that thousands of developers have adopted and for which thousands of useful (as well as frivolous) add-ins have been developed. From this rich pool of contributions have come a number of important add-ins, especially for Web developers. These include Chris Pederick's excellent Web Developer Toolbar, the first really useful tool for examining and testing CSS,  and the brilliant Firebug conceived by former Firefox developer Joe Hewitt, best known for its terrific JavaScript debugger but equally facile around CSS, HTML, and the DOM.

These and other excellent add-in tools have turned Firefox into the best Web site debugging tool available. If something is haywire on the client side with a Web page I'm developing, waiting for Firefox to grind to a start suddenly becomes worthwhile.

So what's that "good reason" Firefox is not my default browser? Simple: it's #2 in market share, not #1. In the market I serve, the share of IE is much higher than its worldwide share, nearly 90%. I don't really have any choice - if I want to understand my client's needs and see things as they do, I have to be an IE expert.

 

Google Chrome LogoGoogle Chrome 4

Despite the fact that I have been using Chrome a lot lately, I can't recommend it as a mainstream browser.

Where Chrome shines, and the very reason I use it, is speed. It loads unbelievably fast, even the first time. I can launch Chrome and within a matter of seconds, sometimes before I'm even ready, I can start typing my search or entering a Web address. Only IE comes close to this performance and that is because IE and Windows have, how shall I put this, a "close relationship."

The second dimension of speed is JavaScript execution, which is blazing. In an online world in which every major (and most minor) sites are using JavaScript for all manner of user interaction and features, running JavaScript fast is just essential.

Version 4's performance exceeds version 3 - not by much, but enough to be noticed.

Another thing I really like about Chrome is the integration of the Web address and search text boxes. The other browsers have one place to enter a URL and another to enter a search term. To be fair, Safari and FireFox will perform a search if they can't parse the entry as a URL (IE doesn't). But Chrome's integrated, single field is much easier to use. Google seems to have done an excellent job parsing the entry because Chrome has rarely done the wrong thing with my entries.

Unfortunately, that's where the good user stuff ends for Chrome. The most annoying absent feature is a way to control tab behavior - every other browser has options for that. Speaking of options, Chrome has the fewest option settings of any browser and is thus the least configurable of the lot. IE and Firefox cater to customization; it's absence is keenly felt in Chrome. As I use Chrome more, I find other minor (but once accumulated annoying) user interface behaviors.

An inexplicable absence is a feed reader. All the other browsers can handle RSS feed files natively (see this Atom example). Chrome displays such files as text. The fact that Chrome is up to version 4 without this capability is mysterious.

Chrome is also unconventional in its handling of tabs, which it places at the very top of the browser window. Chrome does away with the customary title bar. The result is a browser that consumes very little vertical space, leaving considerably more vertical viewing area for content. Although I have a logical but minor quibble with this (because it isn't hierarchical), I find it a convenient and useful arrangement.

Chrome has the developer tools that are part of the Webkit engine (see Safari below) but they are not enabled to the same degree as in Safari. I haven't used these as thoroughly as I've used Firebug or IE and thus cannot provide much of a report.

It is not clear to me from reading at Google what the company's intentions are for Chrome. If the user side improves, Chrome could become an important browser. Until stupid omissions like option settings for tab behavior are resolved, it's hard to take the browser seriously.

 

Apple Safari LogoApple Safari 4

My use of Chrome has driven me to look more critically at Safari because both Chrome and Safari are based on the Webkit browser layout engine. Apple used Webkit long before Chrome adopted it, so Safari is actually Chrome's daddy. My deeper examination has caused me to change some of the observations I made in my home page note on July 6.

I started using Safari for Windows before I owned a Mac so I could test the Web sites I develop and of course today I have the "real thing." I installed Firefox on my Mac, again for testing, but I never use it - I always turn to Safari. The reason is very simple: Safari provides a more refined user experience and loads faster on the Mac. Version 4 even brings us Apple's iconic cover flow feature in the form of the "Top Sites Page," a design that just screams Apple. And where I first thought of Top Sites as fluff, I find I use it more and more.

Safari could be considered relatively Spartan compared to IE yet it does not appear unfinished. It has a full set of the user options settings so lacking in Chrome. As with all Apple software, Safari seems polished to me. There are a few odd things in the Windows version that I attribute to the style of use of the Mac not translating perfectly to the PC, but I have not had a problem adapting.

In presentation, Safari does a very nice job with fonts, the best of all the browsers. That is most true on the Mac itself but it applies to Windows. On first blush that doesn't make sense; fonts are a system-level thing, aren't they? Yes, but if you want to see this in action run Safari for Windows and IE at the same time and point them at VisiBone's Font Survey Test Results page (warning: HUGE page). Once loaded (be patient), slide down the list with both browsers and you'll notice that Safari a) seems to render some of the fonts more nicely and b) substitutes more aggressively.

For whatever reason, Safari for Windows does not launch as fast the first time as Chrome. Nonetheless, it does launch much faster than Firefox and the wait is less annoying than waiting for Outlook or the other Office programs. In JavaScript execution it is very fast, indistinguishable from Chrome without technical measures and much faster than either IE or Firefox. Safari 4 is faster than Safari 3.

Safari's developer's tools are more extensive than Chrome's and there are a number of features I have not yet tried. I plan to use Safari in my next debugging session and will update here accordingly. My impression is that the experience will be good.

I took an opportunity to use Safari on my son's iPod Touch. When I was developing the Fiction 20 Down Web site recently, my client reviewed my progress on his iPhone. This worried me because I was not sure he could actually see the nuances that we were discussing in email. Now that I've experienced the same thing on the Touch, I have to say that I am very impressed. I need not have worried - F20D was seeing the site in extremely high fidelity. It's another feather in Safari's cap.

 

Conclusion

Apple Safari Logo IE8 Logo Firefox Logo Google Chrome Logo

I am not the typical end-user of browsers because I do development and support work. This means that I will always use multiple browsers and that I need to be attentive to browser market share in my client base. Were it not for that, however, I am inclined to believe I would adopt Apple Safari as my default browser.

That conclusion surprises me; for one thing, it means that I'll probably use Chrome less. And if the developer tools pan out, I might use Firefox less. The only minor consideration is that Safari's "view source" option, used heavily by developers and other users alike, does not display the source with syntax highlighting. Chrome and Firefox natively display source with highlighting; IE does not because it uses Windows NotePad, but it is easy to connect a third-party program to IE that will (I use Flo's Notepad2).

I think that Apple has a formidable competitor to IE and, with some of the company's legendary marketing, could easily make Safari the #2 browser.

I hope the above notes will be of help as you make a browser choice. There is one recommendation I make with as much insistence as I can muster: Dump IE6. The sooner, the better.

Anything But IE6!

 

0:

Article Copyright ©2009-2010 by Will Fastie. All Rights Reserved.
Use the suggestions and recommendations herein at your own risk. No warranty, implied or otherwise, is given.
Technology changes rapidly; information in this article could be outdated quickly.