On the 21st of March I had the pleasure of participating in the Web Components panel at Edge Conf, and the privilege of giving the introduction to the panel. I’m a strong advocate of Web Components and it was great to be able to provide my opinion on them, alongside some real experts in the field, as well as hear questions and feedback from the community. The main concern which was raised is that, as developers create their own elements, some important considerations — accessibility not least — could get forgotten about.
At the recent unveiling of OSX Mavericks Apple also announced Safari 7, with greatly improved web standards support. It was left a little unclear as to which versions of OSX it would run on, but browsing through their developer area this week I found a downloadable pre-release of Safari 6.1, which I think clears that up: it seems Safari 7 will be exclusive to Mavericks, while 6.1 will run on Lion and Mountain Lion, with all of the web standards support of Safari 7, but only a limited set of new features.
As both versions are a major update for the browser, bringing almost a year’s worth of WebKit updates, I thought it would be useful to take a look through the new and updated features in each, as well as trying to identify where they differ.
There is a famous Portuguese-English phrasebook, published in the 19th Century, with the title “English As She Is Spoke”. It contains many unintentionally hilarious translations of words and expressions, including such familiar phrases as “that are the dishes whose you must be and to abstain”, and “I not make what to coughand spit”. The author, Pedro Carolino, had the best of intentions in producing this book, but suffered from one major drawback: he didn’t speak English. The book was apparently translated from an earlier Portuguese-French phrasebook, using a French-English dictionary.
The reason I bring this up is that I think this is a fairly common problem in coding. Many people know how to write code in order to get a result, but they don’t know the language at hand in enough depth to realise that the result doesn’t always make sense.
As you’re probably aware, the search is underway for a new responsive images syntax. Matt Wilcox wrote an excellent article looking at each of the proposals and assessing their strengths and weaknesses. Reading this article made me consider the problem, and I’ve put together a notional syntax based on the positives and negatives of all of the proposals. I’m going to submit it to the Responsive Images Community Group, but first I’d like to ask you to kick the tyres a little.
As I’m sure you’re aware, Opera recently released a preview build of their
browser Mobile Emulator which is notable largely because they’ve aliased a group of
–webkit– prefixed properties, effectively supporting another vendors supposedly proprietary code in their own.
On Tuesday I wrote a post for Ubelly.com on vendor prefixes; what they are, what they are for, their perceived successes and failures. This turned out to be incredibly timely as a few hours later the minutes of the latest CSS Working Group were released, showing that the misuse of vendor prefixes — especially –webkit–, and especially on mobile — has now become so serious that Microsoft, Mozilla, and Opera are all considering implementing –webkit– prefixed properties in their own browsers just to ensure that their users aren’t excluded from the web.
What a state we’re in.
This morning Daniel Glazman, chair of the CSSWG, issued an open call for urgent action by developers to stop this situation from deteriorating any further, and hopefully to improve it: Call for Action: The open web needs you *now*. I urge you to read this, and to act on it to the best of your abilities. If browsers support other browsers’ prefixes, the whole thing collapses. As Daniel Glazman says:
Vendor prefixes have not failed. They are a bit suboptimal but they also very clearly preserved Web Authors from chaos. We can certainly make vendor prefixes work better but we can only do that if vendor prefixes remain VENDOR prefixes.
Please read his post in full, and do what you can to turn this situation around. We made the mess, we need to clean it up.