Home Development of Websites Different Reality

Different Reality

by admin

For quite a long time I want to organize my thoughts about the development of browsers, standards, technologies, perspectives, and in this regard, I decided to present them in the form of an article. There will be no innovations and revelations here, but there are enough reasons to think.
I’ve been doing client development for 8 years now, and in that time browsers have made a giant leap forward. First of all, there are so many of them now. There are currently 10(!) major browsers in the developer’s zoo – IE6/7/8/9, Fx 3.6/4/5, Opera, Chrome, Safari plus mobile and specific ones. Fortunately, the veteran IE6 will die out soon and IE7 is already losing ground. Firefox has changed its approach to versioning following Chrome and let’s hope that soon we will only work with the latest release without looking back at the numbers. Opera has also matured and is moving towards auto-updating.
Why am I talking about browsers and not standards in the first place? Because browser companies are the primary developers and evangelists of modern web development standards. They are all active members of the W3C and help develop standards and implement them, often without waiting for the specification to be approved. This creates a clutter of redundant syntax with vendor prefixes, but this is a temporary phenomenon.
Implementing standards in browsers is like an arms race. Who’s faster, who’s stronger, who’s bigger, etc. In fact, we developers benefit from it. But as always and in everything, sometimes there are kinks. When you see a link to a particular showcase with oohs and ahhs and you go to the page and it says "Best viewed at latest Chrome" – you immediately remember the days of IE6 and get nauseous. Standards are great, promoting standards is even better, but not this way.
At a certain point, the developer gets lost in what and who supports what, and is no longer quite sure how to write code that will work correctly in all major browsers, which are present in the application. This is where all sorts of emulators, libs and scripts that "enable" support for a particular property or functionality in the "lagging" browsers come to help.
Sometimes it is an absolutely indispensable thing which saves you from red eyes, long hours of code writing and threats of reprisals from managers, and sometimes it leads to jungle and comes out sideways from absolutely unexpected direction. To give you an example, I’ll tell you that such a lira is CSS3PIE which emulates such CSS3 properties like border-radius , box-shadow , RGBA and gradient support in background for IE6-8. For simple static pages and pages with little elements it works fine and the developers are excited, but when you apply PIE to elements involved in animation or generated with Javascript, you start dancing with tambourines.
But this refers to things used as is. Modernizr for example, takes a different approach. You first check if the browser supports a certain standard and then decide what you want to output. In the output you will either have to provide the missing functionality with JavaScript or use superfluous code and images. Either way you pay for it with performance.
What do we have in the end? Some browsers get nice, semantic code and all the goodies, and some browsers shut up and load the processor, or eat up traffic. As you know, you have to pay for everything, but I suggest that you think about what exactly and whether it’s worth paying. There are good old tried and tested solutions.
By the way, if you remember all sorts of beautiful things such as rounded corners, shadows and gradients, it is worth noting that the browser manufacturers have implemented them first, partly because their implementation was not too difficult and partly because of marketing. The implementation of a new box-model to replace the blatantly obsolete existing one is still lagging behind. Also such parts of standards as local storage, indexed database api, page visibility, Cross-Origin Resource Sharing and many others, which are really important for developers, but are not Eye Candy, are lagging behind, which reminds the well-known phrase that people demand bread and circuses. The main thing is for it to be beautiful.
In relation to the previous passage about visuals and whistle-blowing, I’d like to mention the purpose. All sorts of games made with HTML5 and CSS3 came out of nowhere, like mushrooms after the rain. Their developers are very proud of their creations and they can be understood. After all, they agonized so much to make an application using technology that was not designed for it. But why? HTML is and always has been a hypertext markup language, although it has expanded and evolved with the real world.
In conclusion. Dear developers, please remember that standards and technologies are just tools, which can not necessarily be used for good. And our job is to create good and working interfaces that other people will use and not necessarily that our users will be geeks and accept our reservations. Use technology and approaches wisely, keeping the main goal in mind. Think, think, think.

You may also like