Fronteers considered harmful ============================ Monday 22 March 2010 20:54 Addendum: By "fronteers" I don't mean the dutch professional organization "Fronteers", but more generic people who very passionately try to make the impossible possible by pushing the envelope of web standards in a pioneering, front running, frontenders way of using HTML, CSS and JavaScript in their struggle with the browsers. All I remember is ppk inventing this label that covers this area exactly how I see it, but apparently around Amsterdam the term has since gained more popularity as the name of that organization. (Addendum 2: If I want to refer to that organization I'll use the term "bunch of unprofessional HTML monkeys" instead.) The problem with some front end developers is that they believe everything that is related to HTML, CSS and JavaScript should be aimed at making their job easier, because it's the hardest job in the world. They see standards as solely written for their line of work, totally ignoring the fact that there are actually real developers who have to implement those standards into a browser first, and not every situation the standards have to cover has the convenience of upgrading to the latest mozilla release candidate to fix some issues. Consider the following scenario. Some manufacturer of a piece of hardware wants to have a fancy user interface on the thing. The piece of hardware could be a television set, a fridge, industrial cleaning equipment, whatever. The manufacturer can slap a little LCD touch screen on it and put a cheap board in it that provides the user interface. In a perfect world, shouldn't that user interface be build with open standards like HTML, CSS and JavaScript? So the manufacturer sets out to embed a browser in the thing. The manufacturer can buy the required software components that are already available and put them in. But because the embedded browser is limited to that specific device it could take advantage of features specific to that device. The embedded browser can be extended to handle CSS that isn't standard so the developers of the user interface have a few extra properties to easily implement the specific features. The CSS standard takes care of this by allowing vendor prefixes. Without vendor prefixes there is a chance that a newer version of the standard would introduce a property that has the same name as something the vendor has invented, causing a conflict and confusion. So vendor prefixes are a good thing. We can't get away with generic -draft- or -beta- prefixes because our manufacturer could then implement their features as a -beta- property, and the upstream provider of the CSS engine for the embedded browser could suddenly also introduce that same -beta- property for something else, causing the same conflicting situation that could occur without vendor prefixes. So the upstream provider should use something like -upstreamprovider- and the manufacturer something like -manufacturer- as vendor prefix. And when the manufacturer then sells the code of it's embedded browser to another manufacturer they can do the same thing and every update from the upstream provider passes the workflow without problems. The only problem is that currently a large part of the browsers used for surfing the web on desktop and mobile devices is based on open source engines, which makes it possible for web developers to find out what all their vendor specific features are and what they do. Adopting all these vendor specific features to do cool things before they become a proper standard - and the competition does the same cool things - web developers walk straight into the trap that was fueling the browser wars in the 90s. Vendor prefixes aren't defined as being latent standards and it's just wishful thinking to see dropping them as a solution for easier web development, or speeding up some standarization process. But apparently web developers have to waste the time they gained from dropping support for Internet Explorer 6 by setting up the next self induced mess that makes their job so hard. by Roland van Ipenburg http://www.xs4all.nl/~ipenburg/blog/posts/work/2010/03/22/fronteers-considered-harmful/