Safari vs Internet Explorer :: Round 1
In a previous Enginerd post, Clint Milner talked about how lucky we are that we don't have to support IE 8. But that post got us all talking about a browser that does give us a few headaches: Safari.
At Craftsy, we support Safari. A lot. As of last count, it's the browser that our customers use the most, due in a large part to how conducive our site is to mobile and tablet devices. So, as we develop, we encounter quirks and hiccups in Safari that we don't usually see in the other standards-compliant browsers (namely, Chrome and Firefox). And at the end of a development cycle, more often than not we hear the words "it's broken in Safari." So much, in fact, that we've begun to joke that Safari "is the new IE." And then we stopped joking about it and seriously wondered, can Safari legitimately be compared to that bane of browsers, Internet Explorer (versions 6 and 7, predominently)? So, I decided to look into it.
First, realize that when IE 6 came out, it actually fixed a lot of problems--like IE 5.0's even-more-broken box model--and killed off browsers that I’m sure we’re glad we don’t have to support today ( Netscape Navigator, anyone? Incidentally, it was the death of Netscape by way of IE6 that led to the rise of Firefox. Put THAT in your pipe. ). So, before we get all high and mighty with our IE bashing, the browser that we loathe to support did, indeed, bring some good into this world.
In order to compare the two, some benchmarks are necessary. Saying that Safari is equivalent to IE 6 or 7 carries some serious weight. It's more of an accusation than a comparison, if we're being completely honest. It would be like comparing an iPhone to a Walkman, or a Segway to a pogo stick--while their respective ends are similar, they were built using different technology and with different goals. With that in mind, we're going to compare the two browsers based on five facets: history, feature support, conditial CSS implementation, speed / performance, and debugging.
A LITTLE HISTORY IS IN ORDER
When Microsoft released IE 6 back in August of 2001, web applications weren't anywhere near where they are today. Internet Explorer was intended to support the desktop client and further enhance Microsoft dominance in the desktop OS arena. After the browser was released, Microsoft disbanded the development team because why would they ever need to create another browser? Explorer would continute to be bundled and upgraded with the OS, but it would cease to be distributed separately from Windows.
A couple years later, Apple first released Safari. It was late 2003 and AJAX web applications were already on the rise. And although the browser had a bit of a slow start, by the time OS 10.3 (Panther) came out, Safari was the default desktop browser on Apple computers. Sound familair? In many ways, the first release of Safari and the earlier release of IE6 allow us to view the browsers as "the same, but different." Safari had better support of web standards, but by that time we in the web development community were already building sites and pages based on IE6's support. The phrase "Have you checked it in Safari?" could make an entire office grumble.
Yet this is really where the historical comparisons end. Sure, Safari and IE6 had similar circumstances surrounding their initial release. And yes, nobody liked supporting Safari back then, just like few developers look forward to testing their application in IE today. So, does historical context equate Safari with IE? Not really.
In part two, I'll get to the meat of the issue: feature support, CSS implementation, speed / performance, and debugging.