Monday, June 5th, 2006

Browser Warfare, Supporting Safari, and the Future of Macs

Category: Accessibility, Browsers, Firefox, Mac, Programming, WebKit

<p>Leland Scott from Musings From Mars has a couple posts highlighting the never ending browser debates, in particular the Safari issue we have covered before.

Scott called out a WordPress plugin that was linked to from Max Kieslers popular roundup of Ajax tutorials. The “shelf” plugin, similiar to the accordion widget in Rico and other libraries, displays fully expanded in Safari and also throws multiple javascript errors.

His most recent (long!) article covers the latest browser market-share figures, and compares browser performance and usability on the Mac. He points to the overall drop in IE market share over the last few years:

The accompanying chart shows the change in shares from October 2004 (shortly after Firefox 1.0 was released) to April 2006, and though the drop in IE share looks small, it’s actually almost 10 full percentage points. Likewise, though the increase in Safari’s share looks small, it’s actually more than doubled over this time period–from less than 1.5 percent to over 3.0 percent. Firefox has gotten the most attention, and deservedly so… it’s gone from about 2.5 percent to over 10 percent since October 2004–a quadrupling!

You can debate the reliability of such statistics all day long, but I don’t think anyone would disagree that Firefox has changed the game and given all web developers some hope IE will eventually “just work”.

The Safari issue, and overall Mac market share, is very interesting. I know everywhere I go I see more and more Macs used by two important groups of people: prominent hackers and college students. Go to any tech conference and you’ll probably see 75% of the speakers using MacBooks. Don’t underestimate the power they hold over both newer programmers, who look up to the hackers, and non-programmers, who often turn to their “nerd friends” for advice on future computer purchase. As for college students, a whole generation of iPod and MacBook devotees become middle aged Mac loving adults with a lot of disposable income.

As Safari is the default on Macs, it will becoming increasingly more important to support for larger organizations as well as programmer-targeted sites and tools. Hopefully, it will become easier as certain annoying bugs in Web Kit get wiped out (try to find an open source rich text editor that completely works in Safari – I dare you!).

Of course, the common complaint from open source developers or lone programmers is “How do I support Safari when I already own linux/winXP pcs and can’t afford a Mac.” There are some remote VNC service options, such as BrowserCam, though I can’t imagine trying to debug and iterate over a remote VNC connection. Maybe it will just become a requirement for a web programmers to have some sort of cross platform setup, whether its Parallels on Mac OS X or some sort of emulator on Windows. Or maybe a win32 port of WebKit is the answer. Is Konqueror on Linux close enough to substitute for true Safari testing?

So there aren’t any easy answers to the Safari problem right now for PC users, and I think the issue will only grow with time. Has your team added Safari to its list of “first-class supported browsers”? Do you see it happening in the next three to five years? Who out there can port Firebug to Safari, and by the end of the week, please?

Posted by Rob Sanheim at 6:30 am
31 Comments

+++--
3.8 rating from 35 votes

31 Comments »

Comments feed TrackBack URI

I agree with the comment that Safari should be supported because it is the default browser on Macs. A certain Australian government agency has went to the trouble of certifying their web site as compatible with Opera, which has less market share than Safari!

While BrowserCam would be a slow way to debug, why don’t organisations include their customers when testing browser compatibility? Medium to large organisations with significant web sites (eg banks, government bodies, schools, etc) could contact Mac organisations that fall withnin their target audience (eg user groups) to recruit testers. Application software programmers routinely do, yet we have organisations/web developers offering the equivalent of desktop software without doing real testing! Another alternative for medium-larger businesses is to rent a Mac for a day or two and do some internal testing (business do rent Macs).

Comment by Dale — June 5, 2006

Hmm, aren’t most (prominent) programmers and college students using FireFox anyway? I mean, yes they might have a Mac, but why does that imply that Safari support is essential?

Comment by tawm — June 5, 2006

@linb: try this: http://pearpc.sourceforge.net/ I set up an osx image and use it on a daliy basis for safari tests under winxp. it’s a little bit slowish but still usable on p4/2,8.

Comment by .mario — June 5, 2006

It would be a lot less work if Apple simply got the JavaScript working better. The Mozilla team has had to spend years working around Web site’s problems that were built for IE. You can have the Safari team fix the problems or have every web developer in the world work around and throughly test on Safari. Which is the best solution?

Comment by Chris Felton — June 5, 2006

… when they fail to include Safari in their compatibility testing, they are basically thumbing their nose at Mac users. In my world, that’s not just a nasty thing to do, it’s also illegal.

I don’t have access to a Mac, so I don’t test on Safari. If I had access to a Mac, I’d probably support Safari. The question of the legality of wheter or not I support Safari is laughable. I also don’t directly support the Pendragon browser. Or Lynx. Unless your website claims to support a browser, or is required by law in your location to support a particular browser, no one is going to sue you. My advice is support what you can, try to include everyone, but don’t go nuts over fear of legal action. Its this sort of absurd fear-mongering that drives me mad.

Comment by Dan — June 5, 2006

As Dale said, I agree with your comment on Safari. Providing an interface which is compatible with the most important browsers of the Web : IE, Firefox, Opera, Safari and Netscape.
Even if most users will install Firefox or other on Mac, a novice will not be able to do it. Therefore, a web site which doesn’t work on Safari is not usable.

In term of usability, all users have to be taken into account in the design of web site, especially for RIA.

Comment by matt55 — June 5, 2006

I bought a G3 400 mhz DV iMac for $75 and a G3 333 mhz iMac for $30 for my kids last year for xmas. Both iMacs run OS X 10.3.9 without issue (the DV even dealt with 10.4 well enough for a while), and I would suggest a machine like these to anyone who “can’t afford a Mac”.

Comment by Bill Grady — June 5, 2006

If Safari supported only 256 colors whilst the rest of the browsers supported millions of colors would build a website with only 256 colors? Isn’t it unfare to ~95% of the visitors?

Safari and Opera has not implemented XSLT…if the browser vendors does not implement offcial recommendations why is it expected to make efforts for that particular browser? Why should the minority vendor decide what standards to be implemented?

Comment by Hakan Bilgin — June 5, 2006

Currently, Safari is not on our list for supported browsers. Due to standards-based development, *most* things work with Safari anyway. But the more complicated CSS and JavaScript gets, problems occur.

I have the possibility to work on a Mac computer from time to time, but haven’t got a development environment there. So all I can do is trying to identify the problems and send the fixes to my computer via e-mail, and hope that they work.

I hope that one day, Apple will port Safari to Windows. Through search-box-contracts, they could earn quite a lot money through this.

This is what I’m hoping, currently ;)

It’s clear that there are cheap Macs out there, but far not all people will afford one. And especially for smaller projects, Safari will remain what it is currently: a nice-to-have, but not a must.

:(

Comment by Sebastian Moser — June 5, 2006

We do not currently officially support Safari, and tell our Mac-based clients to use Firefox. Getting a Mac to test on has been on our list of things to do for awhile now, but it is a pretty low priority, and I wonder when I’ll see one. Actually, I know when I will see one – not until one of our clients demands it.

Comment by Lindsey Simon — June 5, 2006

There is only a few things that I can find that Safari does not support. One is XSLT. I didn’t know it was that popular. Next is that using the Label tag on a form element makes the text of the form element activate. No big deal since the checkbox or radio works anyway. Next is TinyMCE having problems. I notice the multiple javascript errors it throws off. I would not trust it until it has no errors. I have FireBug and Tidy validator installed on FF, I also have Tidy installed on Safari. All my sites show greens and I never have compatibility problems…except with MSIE.

Is there a web site somewhere that will tell me what Safari does not support? So far everything that I’ve done just works on Safari.

Comment by Phill Kenoyer — June 5, 2006

Hakan and Phill – Safari does support XSLT, though it’s not hooked up to a Javascript API. Either you didn’t know this, or are being purposely vague.

Why is it a frequent response in these comments to say ‘I have a PC and can’t test Safari’? Why aren’t you testing your web sites with real users? Not only could you support Safari but you could get real feedback during the development of your sites. All application/desktop programmers do this. Why don’t many web developers?

Comment by Dale — June 5, 2006

Once again, I see the knee-jerk reply from some of those commenting here: Why not just use Firefox? I suggest you read the article to understand why, but in a nutshell, the answer is: Safari is a much better, faster browser on the Mac than Firefox is. It provides functionality to Mac users that Firefox doesn’t. It’s about one-half as fast on a Mac as it is on a PC. In CSS parsing, Safari is the fastest browser available. In JavaScript on both platforms, Opera is the fastest, though Safari isn’t far behind. The issue isn’t so much supporting Safari as it is avoiding IE-specific, proprietary JavaScript and CSS. If you avoid those things and stick to standards, you’ll likely be fine with Safari. (The one big area is XML and Content-Editable, but those are coming.) However, it wouldn’t cost anybody very much to just do a quick run-through with Safari. It only costs $20 for a day of remote connection to a Mac through browsercam, as just one possibility. I don’t know how close Konqueror is to Safari these days, but that would be better than nothing.

Comment by Leland Scott — June 5, 2006

In all honestly, if you are developing (public) web sites for a living you can drop the $500 or so on a Mini and use it as a testing platform. This is called an operating expense in most countries; you may think that not many people use Safari but the gains that Apple is making in the hardware market should be enough to justify the expense.

I’ve been based primarily on Windows since 3.1, and recently I bought a MacBook Pro with Parallels, and use that to do an awful lot of development now. While I wouldn’t suggest to anyone that spending that kind of money is necessary, I would say that it’s possible now to be working cross-platform without a huge outlay, and that means there’s no real excuse to not develop for Safari, shortcomings of the browser non-withstanding.

Comment by Tom Trenka — June 5, 2006

Unfortunately, there’s just enough differences between Safari and Konqueror that testing with one doesn’t mean it will work with the other. They come from but no longer share the exact same codebase.

So I went and bought a Mac (I always wanted one). True they’re not that expensive, but it’s money, it’s time, it’s a lot of energy spent chasing minor nuances, and not all projects can justify that expense.

I’m impressed with Safari, I think it’s a good browser. But does the world really need another browser?

Comment by assaf — June 5, 2006

Leland, I’d say that such metrics are largely moot, but I’ll agree with you that Safari is the default browser on OS X and should therefore be supported by public websites and applications.

That said, I also find Safari isn’t the greatest browser for JavaScript-based applications. At least Firefox/Gecko is cross-platform and has far less issues.

Comment by Mark Wubben — June 5, 2006

The answer of “just use Firefox” just doesn’t work. The typical college kid who has a MacBook because its sexy will not care (and may not know how) about getting Firefox since Safari is there and it works. I’m sure most developers have multiple browsers installed, regardless of platform (I think I have 5 or 6, though I only use the “holy trio”), but for your typical user Safari will be it.

Comment by Rob Sanheim — June 5, 2006

+1 for the mac mini. It’s inexpensive and compact (I use synergy as a virtual KVM switch).
If you need a workaround for the lack of XSL support in Safari (scriptable XSL that is..), check out Freja (http://www.csscripting.com/Freja).

Comment by cedric — June 5, 2006

Also, for some of those asking what Safari lacks – one thing I’ve been bitten by is the rich text thing. Safari has very limited support for the API that 99% of the rich text editors use (I think its “contentEditable” ?) – not sure what progress is made on this in the nightlies.

So that means that TinyMCE, Dojo’s Editor, FCKEditor, whatever – all of theme have very limited support or none at all in Safari.

Comment by Rob Sanheim — June 5, 2006

Yup. Gotta have Safari as a first class citizen.

For a custom intranet web-app I’m building, over half of the users are Mac based. They have been relegated to “also ran” for far too long.

The downside is the development effort seems like torture…

Comment by Kris G. — June 5, 2006

What’s up with Mac users supposedly not knowing how to install a different browser? You mean they also cannot install Adium or TextMate? Can’t drag-n-drop?

Comment by Mark Wubben — June 5, 2006

Since Apple has made Safari open source, in my ideal web application developer fantasy world the KHTML guys would retire Konqueror and put all their effort fully behind Safari. I doubt that will ever happen, though. Still, I look forward to the day when we can download Safari for Windows, Linux, or OS X.

Also, expect Opera share to rise some in the coming year or so, what with the Nintendo Wii deal and all.

Comment by Matthew Ratzloff — June 5, 2006

Mark: Its not that they don’t know how, its that they have no reason to. The same reason that so many IE users never install Firefox – inertia. And with Safari, there is even less of a reason to install FF or anything else, because Safari works fine and doesn’t have security issues like IE does in the win32 world.

Comment by Rob Sanheim — June 5, 2006

Rob, fair enough. Then the question becomes “is this site worth installing a different browser for”, which unfortunately perhaps is a business decision/risk the site owner makes.

Comment by Mark Wubben — June 5, 2006

Being around mac people all day at work I know that very few who stray outside of Safari. Being on a Mac myself, I can crosscheck my work in firefox and safari…never letting either one get out of step with the progress of the app. When Im to a stable and well developed place, then I will switch over to a PC and do my IE testing. Believe it or not, there are even consistencies in Firefox across the two platforms, so its absolutely mandatory to check both. You can choose not to support mac, but judging by the large mac web-developer base these days, you will alienate most of your peers who’se opinions you mostlikely will value the most. Mac people have accepted cross-os testing for years so join the crowd and make the web better.

Comment by Chris Iufer — June 5, 2006

As a marketer, I feel I should pipe in.. I find that consistently about 10% of ‘average’ urban samples are on safari.. this is middle and upper income brackets. For a public audience, safari is essential.. for an enterprise audience, you have more lattitude.

Comment by Alexei — June 5, 2006

As a product manager, I’ll chime in that Safari support is worthwhile, and it’s a great service differentiator. (Your market may vary.) Safari is the default Mac browser, and it’s the most Mac-like browser. I’m surprised that there’s not a debate about Opera support. ;-)

Comment by btn — June 5, 2006

The Safari developers seem to be using Mozilla’s Javascript test suite ( http://webkit.opendarwin.org/blog/?p=27 ), so I have hope that the 2 Javascript implementations become equally robust in the future. Every little bit they could do to make their Javascript implementation Just Work ™ would be appreciated.

Comment by John Beppu — June 6, 2006

It’s really amazing the arguments come up with for not supporting the third-largest used browser in the market. It’s kind of deja-vu

“Why should we develop for Netscape 0.9 if Mosaic already works for everyone and hasn’t got enough market share?”

Replace the above with any of several combinations in the past:
Netscape/IE
IE/Netscape
Firefox/IE
IE7/IE

Oh, wait, I know what it is this time. Firefox is the new darling and IE is “the cousin that won’t leave”, we want to support the former because we like it and we have to support the latter because we need a job. We justify not supporting Safari with the same insipid, fanatical, shortsighted arguments that were used in the past(*) for browsers that are now the norm.

Safari is a better-than-average browser and engine. It’s better than IE (and some would argue than Firefox) in a lot of aspects and just because it’s not the “fashionable” browser is not reason enough. Tell it like it is. You don’t want to bother with it, you don’t know how to adapt to it, you care not for competition to your chosen browser (choose any that fits) but please, please, stop with the whining about Safari. Having more than two browsers is a GOOD thing. If you can’t hack it enough to adapt to Safari then provide suitable degradation (which you should be doing anyway) as for most users the level of compatibility provided by Safari is more than enough (gosh, that means you may lose all the nifty web2.0-ish stuff you’ve shoved into your website without proper degradation, I guess that must be Safari’s fault then).

If your website doesn’t work at all in Safari then you’re a mediocre programmer. Users of Netscape, Firefox, IE on the mac and Safari are more than used of having limited functionality from sites that cater only to IE for Windows (and, to a lesser degree, other combinations).

Get a grip, be professional, degrade properly, stop whining.

And please, PLEASE, stop with the insane suggestions of “let Safari use Gecko, which is so good I’d go to bed with it”. It’s childish and makes you look like a bigoted fanboy.

(*)Arguments I’m so glad others didn’t pay attention to, as in the end most of new standards and the new generations of browsers that pushed them are what have pushed the evolution of HTML, CSS and JS to their current level.

Comment by Eduo — June 7, 2006

I think that Apple has to (and will?) update Safari to work better with Ajax stuff that are compatible with Firefox. That would save a lot of work!
However, in my opinion, Apple is aware that intel based macs that will soon have great software for virtualization, as well as being the only computers to run natively OS X, Windows and Linux, will be the best machines for cross platform developpment. So maybe Apple is playing with that to force web developers to switch to an intel based mac in order to install Windows on it while keeping the ability to test everything on OS X without the requirement for another machine.

Comment by feeef — June 7, 2006

La versión más última del browser 2 del firefox del mozilla está en mi opinión muy buena. ¡Caí a Internet Explorer 7 y el firefox y yo de la transferencia directa nunca iremos detrás!

Comment by Firefox Descargar — January 6, 2007

Leave a comment

You must be logged in to post a comment.