views:

487

answers:

16

I'm building a website for a small non-profit org. and I was wondering at what kind of browser marketshare a browser should have before I support it. Chrome looks like a major contender, but it's still less than 5%, as is Opera.

What browsers do you think I should completely support for this kind of project?

+3  A: 

The obvious answers are Firefox and IE. I would suggest starting with standards-compliant XHTML and then go from there.

Robert S.
Yeah, I definitely will keep to valid XHTML, thanks.
Eric Wendelin
+2  A: 

Well, since Chrome is based off of WebKit, if you test for Safari, chances are Chrome will work as well.

I tend to ignore Opera altogether. That probably makes me a bad person, but I'm ok with that.

swilliams
I have not found that Chrome and Safari have identical rendering experiences at all actually. I was actually surprised that they both use Webkit, but I don't think it is safe to say testing for Chrome == testing for Safari.
Geoffrey Chetwood
Really? What sites in particular? I wonder if it's perhaps javascript related since they do have different js engines.
swilliams
@swilliams: I can't remember any examples ATM. But I know I had nothing but problems using Safari (on Windows) and I have had pretty much none on Chrome.
Geoffrey Chetwood
Agreed that Opera isn't worth it. It's a shame though since it is a good browser.
Eric Wendelin
The biggest issue (with Chrome) that I've seen has been Facebook, which is disappointing since it relies very heavily on javascript. Safari does fine though.
swilliams
You would be surprised how many sites *do* work in Opera, even if Opera-specific debugging is not economically justified.
finnw
+2  A: 

it depends how critical the application is.

for a small non-profit, I [personally] wouldn't bother testing with browsers with < 4-5% share. However, you should still aim to develop your code as browser agnostic as possible

Corey Goldberg
Yeah, I don't think I'm going to test on IE 5.5 or Opera too much...
Eric Wendelin
+8  A: 
  1. Firefox, IE7 and IE6 are enough to cover more than 90% of the browser market share.
  2. It is a good idea to read the new web standards and take in account what Microsoft prepares for IE8.
  3. Then you can try to be compatible with Google Chrome.
  4. Finally, there should be a very specific customer request to invest the time and money making support for the other browsers like Opera, Safari e.t.c.
m_pGladiator
Chrome (once it's finished) will be almost the same thing as Safari.Supporting Opera is easy. If site works in Firefox and Safari (and you haven't done something stupid like checking User-Agent string and serving hackish code), then in 99% cases it works perfectly in Opera too.
porneL
borisCallens
+4  A: 

It's not a matter of market share. It's a matter of what our customers use.

When you customers are public schools that are often underfunded, then you eschew a lot of flash and Flash.

Andy Lester
Agreed. The tough thing is that it's hard to measure what browsers my users will use until I get some site analytics back.
Eric Wendelin
A: 

IMHO the more important thing to do is do a good job of separating your presentation tier from your business logic. Try to be as flexible as possible and allow the users to decide the direction. You might now say, Webkit doesn't have enough users, but a month down the line your client decides to buy iPhones for all their employees. (I know you said non-profit, but I think example still holds) Just try to put yourself into a position to be flexible.

Jeff Mc
+12  A: 

I'm going to second Robert S's answer, and expand a bit.

If you take the time, from the initial concept forward, to be standards-compliant and emit clean XHTML with CSS, you'll save yourself the majority of the pain. You'll probably be fairly close to your intended output across all the browsers right out of the gate. Sure, there will be some pixel-level wonkiness due to the way the box model is implemented, but you'll probably be "close enough" that no extra expense is needed.

I wouldn't go so far as to intentionally "tweak" my site to be sure it works with every browser -- not only is that expensive (in terms of time), but it's also doomed to fail as browsers come closer and closer to clean support for the standards.

FWIW, Chrome is a browser you absolutely should test with. As others have mentioned, it's based on Apple's WebKit. Testing Chrome and the Windows version of Safari will give you a very good handle on your site's user experience on the Mac platform, at least if you don't have a Mac available for testing. :)

John Rudy
If I weren't out of votes, I'd give this answer a +1 for sure. That said, thanks to IE's support for conditional style sheets, if you design clean and have things working on Firefox, it's not too much to get it working on IE7 and 8 as well.
Chris Charabaruk
A: 

I personally agree with Andy Lester in that the true key is to understand the platforms of your target audience. Yes globally Chrome might have a 3-5% market share, or something like that, but if your not-for-profit organization was targeted towards developers you might have a much higher rate of adoptions. So in addition to what everyone has said here, know your audience.

I know with my website targeting technology people, I see about a 30% FireFox, 55% IE, 12% Chrome, and the rest are others for my visitors. Vastly different from the norm due to my audience.

Mitchel Sellers
+6  A: 

Here's my testing/bugfixing priority list:

  • Absolutely essential to fully support Firefox 3 and IE7
  • Highly recommended to fully support Opera and Safari (no missing functionality, slightly degraded interfaces are acceptable, but only if absolutely necessary)
  • Interface degradation is acceptable with IE6 and Firefox 2 as long as it is still usable (I consider these as 'end of life' browsers, and frankly, rarely worth the effort), also here are older versions of Opera and Safari, but I rarely see significant problems with these.
  • If the interface does not rely heavily on Javascript then it must degrade gracefully enough to be usable in text based and mobile browsers such as Opera Mobile, Links/Lynx, iPhone, etc (this includes any necessary optimisations for the screen size)
  • Informational (i.e. non-application) sites must be at least tested with a screenreader
  • I will put no significant effort into supporting Firefox 1 and IE5.5 or below.

  • New functionality must be tested and at least working with upcoming browsers such as IE8 and Chrome. It's pointless ignoring these, as they are both likely to become very popular in the coming months and years.

Of course, the only way to know for sure what will work for you is by looking at your own usage statistics. You may find that a significant proportion of your users still use IE6 (many businesses have yet to upgrade), or that mobile device use is particularly high, etc. Check your own stats!

Dan
IE6 and Firefox 2 are not "end of life" because as you say some people are stuck with them due to IT departments being slow to upgrade. They have at least a year to go yet.
finnw
That's what I mean by 'end of life'. They're not being updated, no new users are selecting them as browsers. All we have to do is make sure stuff vaguely works in them until they shuffle off and die and we can finally get on with supporting browsers that aren't awful.
Dan
A: 

I personally like to group browsers in two broad categories:

  1. IE: You should always aim to support IE, given its market share.
  2. Others (Firefox, Opera, Safari, Chrome): If you strive to write standards-compliant HTML, CSS and JavaScript, what works in either of these browsers will most probably work with the rest.
Ates Goral
You really should say which versions you are referring to.
finnw
+3  A: 

I don't make this decision based on marketshare alone, or even primarily. My support list (in order of priority) currently looks like this unless a client expresses a need to expand it:

  • Safari 3
  • Firefox 2
  • Firefox 3
  • IE 7
  • IE 8 beta
  • public-facing functionality works, looks correct, in IE 6
  • Chrome

The reason I take this approach is that, first, it's best to work in a standards-compliant browser before tweaking to broken engines. Second, Safari has the greatest standards support combined with a marketshare which isn't negligible (Opera is just hard to justify for cost:benefit reasons). Third, in my experience going from Safari to Firefox is usually less problematic than the other way around. This is subjective but it's my experience.

Also a side effect of targeting Safari first, IE is likely to be less painful, as the Webkit team has gone to great lengths to comply with existing practices wherever possible.

Chrome comes last because it's so likely to "just work" if Safari is good to go.

Edit: Firefox 2 comes before Firefox 3 because its support set is more restricted. The same is true for IE 7 before IE 8b.

eyelidlessness
A: 

I would recomend that you will try to comply with the standards issued by w3. If your application comply you will also be safe for future versions of browsers.

Make your design using FF and make fixes for IE in the end, that way you will save work.

Regarding JavaScript use a framework such as JQuery or DomAssistant to make code that will work on all browsers. But be aware not to make navigation or content dependant on client script, provide an alternative to support almost 7% that is not java enabled.

HAXEN
+1  A: 

Start with Firefox and IE. If you have any time left, which you probably wont, you can check out the others :)

AtliB
A: 

Do the standards-compliant engines first: WebKit (Safari/Chrome) and Gecko (Firefox). Opera usually works okay, too. Then go and add IE support. Any browser whose preview release doesn't support the full CSS2 spec doesn't deserve A-grade support, IMO.

Bill Williams
A: 

Firefox 3, IE 7, IE 6

Firefox is the most important primarily because it runs on OSX and Windows and has a high market share which means if your site runs on Firefox it will also be available to mac viewers. Follow this closely with IE 7 which is important because of its browser share and being packaged by Windows means anyone with a new windows box will have it.

Unfortunately there are people running older versions of windows (anything before 2000) who cannot update from IE 6 to a more modern browser. This ensures there should be for the next while there should be a lower cap of about 10% of people using IE 6. Realistically there are about 20% average who still user IE 6 and so this indicates that even some with modern operating systems have not upgraded.

Safari and Chrome come hand in hand as both working off a similar engine which makes them the next logical step for compatibility tests. Because they both use webkit and safari runs on both windows and mac (as the default browser) Safari is more important to test for by a small margin. Chrome is a logical choice because if you get it on Safari it will work on Chrome and it has a pretty strong start in browser stats for being so new.

Opera is completely optional unless you decide that you want to develop a website that must be viewable on a Nintendo Wii. Anyone on a computer who can use Opera is most likely savvy enough to also have another browser installed which they can view your site with. Opera uses its own custom parser and it has low browser share and so there isn't a compelling reason to go to lengths if your site shows well on everything except for Opera. The onus is really on them to make their browser work on your site honestly considering the low numbers and the other stronger browsers.


Unfortunately IE 6 and IE 7 both require a filter hack to get opacity to work and IE 6 has many incompatibilities and still requires a box model hack when not in strict mode and has float bugs regardless and so following web standards to the letter isn't an option, but wherever possible if you do follow web standards and use conditional IE comments you will most likely have a site that runs cross browser with minimal headache.

A: 

I like to keep a close eye on Yahoo's Graded Browser Support page. I generally only spend time on worrying about getting everything perfect on browsers they consider to be 'A-Grade'. I generally try to progressively enhance, instead of gracefully degrade which means in most cases I get basic functionality on 'C-Grade' browsers.

http://developer.yahoo.com/yui/articles/gbs/index.html

Zoredache