It seems that a lot of people are talking about vendor prefixes recently, and that is no coincidence. With Mozilla, Opera, and Microsoft all talking about implementing at least a subset of Webkit’s vendor prefixes, one has to wonder how we got to this point.
Truth be told, I don’t really care how we got here, but what I do care about is that we don’t go down this same, old, forgotten road again.
Yes, it sucks that your new browser doesn’t render the same as it does in Webkit because the developer didn’t implement your prefix. I understand where you are coming from.
What do don’t need to do is break things all over again. Giving into the current “one browser” isn’t going to make things better. That is only going to get us back here again with the same issues.
Take some of the blame for this Microsoft, Opera, and Mozilla. You decided that mobile wasn’t as important, you decided to just let things go and Webkit, especially Mobile Webkit has eaten your lunch.
Webkit browsers need to shoulder some as well (there is plenty to go around). Experimental features are just that, experimental. Touting those features is a dangerous thing to do, especially if you are in the position to really push for a single browser. Google, Apple, I’m looking at you.
Hey standards groups, take some of the blame as well. Technology moves quickly and has a tendency to leave standards behind when they don’t move … at all sometimes. That’s the position the web has been in and when Webkit started to really pull the top off of things, and then became popular, people jumped onto the bandwagon because the vendor prefixes provided relief and … fun.
Developers, we need to take some blame as well. We’ve been lazy and will always be. If we see an easy way to make something pretty, we’ll do it. This is what got us Flash for so long. We need to quit shooting ourselves, our users, and other developers in the foot by implementing half-baked ideas because they look cool.
Look cool and works well are two different things.
Finally, let’s not throw away all of the work that has been done by going the “easy route”. We have work to do, but Flash wasn’t killed in a day.
The way to fix this problem isn’t to give up, but to move quicker, innovate faster, and provide the “new hotness” for everyone.