First time I heard Quirksmode curse like a sailor. Regardless, the reason I can't develop for a Nokia, Blackberry, or HTC is because I don't have a Nokia, Blackberry, or HTC. I have an iPhone. It's pretty easy to develop webapps for it because if it looks good in desktop Safari, it will probably look good in iPhone Safari. I don't even know the browsers that other phones have. I know Opera Mini is on many phones and Firefox too. I try to make my sites work well with desktop versions of these browsers. But there's no way I can guarantee that my sites will work well on all the browsers everywhere.
Already I have to worry about:
* Firefox 3+ (all OSes)
* Safari (OSX, Windows)
* Opera 9+
* Chrome 3+
* IE7+
* iPhone
There are just so many browsers I have to worry about. And even though I code for standards, every browser still treats every little thing slightly differently. I realize making something work in Opera if it already works in FF/Chrome is probably not too difficult, but sometimes little things can take up hours. So sorry Quirksmode, despite your well-written article, I will not even bother with any other browsers just because you say so.
You know when I will bother? When my users tell me that my app doesn't work well in platform X, browser Y and they would really want it to. That's when I will go beyond my basic list of browsers. Otherwise I'm just wasting resources developing for yet another platform.
I think this article is aimed directly at you then. And clearly you disagree, sounds like because you don't feel like it.
A lot of us don't really want Apple (or Google, or x, or y, or z) to be a monopoly though. And perhaps the people who do follow the advice to consider the other browsers and will help keep things on an even keel.
I disagree not because I don't feel like it but rather because I'm not certain it is the best use of my resources to develop, test, and debug my app in every browser out there. I just don't have the time/money/resources to do it. And I highly doubt most startups do either. So you target the top 5-10 and stick to it till someone complains.
Top 5-10 what? Browsers? Because if Quirksmode is right, the fact that most mobile users of your site are iPhone users is a result of your decision only to do your mobile webdev for the iPhone, not a cause of it. As for sticking to it until someone complains - that's exactly what this article does.
But in the end, the loser is you, the web developer, because you're pushing potential visitors away from your site.
Users who use platform X and browser Y where your app doesn't work will simply switch to another app which does the same thing that was written by someone who _does_ care about all browsers.
Those users won't complain to you, they'll just switch.
If the effort to provide compatibility and an additional set of browser work-arounds exceeds the benefit given the insignificant share of traffic these other browsers provide then it isn't really a loss, is it?
> Those users won't complain to you, they'll just switch.
In my particular case, I only make things that don't exist already i.e. I'm not making yet another twitter-posting app or social bookmarking app. So I highly doubt my target users will switch simply because my app doesn't work nicely on a browser I don't even know about.
Also the solution to this would be to show a small notification if my app is being run in an untested environment and let the user complain with a 1-click form if they wish. I think most people who have a bad experience will let me know that is the case.
That bit of snark ignores the reality that a developer has resource constraints, and they constantly have to decide how best to deploy their time, money and energy.
Failing to address some platforms might well be a big win. Claiming it's a definite loss is absurd.
The original article's point was about progressive enhancement. If you're starting a project that requires, say canvas, it is your loss. If you start with tables and images, the site will work on a lot of browsers.
Already I have to worry about: * Firefox 3+ (all OSes) * Safari (OSX, Windows) * Opera 9+ * Chrome 3+ * IE7+ * iPhone
There are just so many browsers I have to worry about. And even though I code for standards, every browser still treats every little thing slightly differently. I realize making something work in Opera if it already works in FF/Chrome is probably not too difficult, but sometimes little things can take up hours. So sorry Quirksmode, despite your well-written article, I will not even bother with any other browsers just because you say so.
You know when I will bother? When my users tell me that my app doesn't work well in platform X, browser Y and they would really want it to. That's when I will go beyond my basic list of browsers. Otherwise I'm just wasting resources developing for yet another platform.