Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Sorry to break this to you, but as a web developer you should only care about standards, otherwise you have no standards.

The standards are a single source of truth for your production, if you build solely to a single browsers quirks (in this case Chrome) then those quirks can change at any time.



My standard is the browser ~95% of my users use. It's the only meaningful one.

I still fix FF bugs when they come in (it seems to be a bigger offender than IE recently) but developing for Chrome first is the only approach which makes business sense.


95%? I haven’t seen less than 20% mobile Safari on any site I’ve worked on in the last few years, and that’s not even including Edge / IE / Firefox and desktop Safari.


Our users are almost exclusively professionals working on Windows desktops. Probably a fairly unique situation but the point is standards are relative.


only true in american markets


I was actually talking about UK and Sweden (haven’t been to the US in 15 years).


what's the difference? these countries are basically american markets, everything west of belarus is kinda a software monoculture


I get to mandate the browser the work system supports (which is Chrome because that was what the majority of users used when I started so I went with what would cause the least amount of pain) but every feature I rollout works with Chrome, Firefox and mobile Safari (I test all three).

It adds very little extra work with the advantage of surfacing edge cases/issues that might have bitten me even if it was just Chrome in the mix.

Also from a business risk point of view tying the entire platform to a capricious vendor is dangerous and I've been around long enough to remember the days of IE5 then 6.

Once bitten, twice shy.


You would have loved IE6 back in the day.


This point of view is as ignorant of reality as the grammarians that say Webster's English is the only true English. Every standard is a three-edged sword: the spec, the intent behind the spec, and the practical application of the spec in the real world (which all-too-often, unfortunately, includes things like "Yeah, that's what the spec says, but then scammers realized you could exploit that to use people's browsers to mine Bitcoin or something, so no browser actually does that").

A web developer codes against real machines, not the imagined, idealized, and non-existent machines the specs describe.


By your argument we should only need a single dictionary, Websters, because your language is real and not the imagined one people in other english places speak, Webster just happens to be the one that aligns closest to your usage of english.


If that were true then web developers would have never bothered supporting alternative browsers.

Regardless of browser matrices, it is the will of the developer to support the open web platform that made sure that Internet Explorer and thus Microsoft didn't own the web (browser) in the 2000s.

Anecdotally this point of view has done no harm to me and I'm not the only that shares it.


Web devs support multiple browsers for the same reason desktop and mobile software developers code against multiple operating systems: some of their customers prefer those systems, and when you ask a customer to switch their framework to support your product you risk they'll say "no."

The reason web developers care about those customers varies from dev to dev. Some believe there is value in a heterogeneous ecosystem of browser implementations. Some have a few high-value customers who refuse to switch (or, in the case of e.g. Microsoft, cannot switch because enterprise constraints are restricting what browser stack they're allowed to run).

But the point stands that when you support multiple browsers, you don't approach ideal user experience (in terms of performance and reliability) for all your customers by throwing your fingers in your ears and proclaiming "That browser is out of spec!" when you find a quirk---you do what you have to do to make your code run on, around, or in spite of the quirk.


The standards are the starting point for the code, that dosen't mean that a dev shouldn't then write code to support the quirks of the browsers.

Writing to support one browser first was exactly what got everyone down in the deep hole writing code for IE only to find that it didn't work the same in Firefox and Chrome early on.

Also the Dev should be well aware that anything they write to support quirks could well be invalid code such as IE conditional comments.


And if you build to the standards, it's possible that no actual browser implements them correctly.

And then what?


> And if you build to the standards, it's possible that no actual browser implements them correctly.

> And then what?

Build to standards first, then accommodate quirks last.

Building to Chrome first is just building to its quirks, and totally forgetting about standards.


I'm not sure what the difference is. It's not like people learn HTML from Chrome's source code. They learn HTML from places like MDN, which document web standards.

"Write HTML, test on Chrome" - what people do in practice - seems to fit "build to standards first, accommodate quirks last" just as well as "build to Chrome first".


You wait for them to do so, and are vocal whenever this happens.


"Wait for them to do so" is an answer that guarantees your team will get passed over in favor of a team that brought a working product to market today, to solve real problems real users have.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: