revenge[Note: This post is not about C. Its not about linux. This post is related to Front End Engineering. If you’re not interested, you may skip this post.]

Yesterday I was chatting with one of my friend. Like all other people who don’t understand the difference between Java and Javascript, he was cursing Javascript for its browser behaviors. To answer him, I told him one story. A story that was created real-time based on known facts. It goes as follows –

“Long long time ago, when the web, ‘the internet’ was young, browsers and web page authors knew only one language to communicate, that is – hypertext markup language (html). As it was new, neither authors nor browsers were fluent in speaking that language. Thus these browsers would just read whatever its written in that .html page n somehow try to render it.”

“After few years a community called w3c came up with standards for html and said ‘whatever you are doing is crap. do it this way’. Browsers agreed. They released newer versions with these standards enabled. The problem here was, browsers now were trying to render page considering html file is according to standards.”

“Obviously enough, all older pages broke apart because those were not standardized. Now the funny thing here is, people blamed these new browsers, instead of web page authors. To survive in such conditions, browsers started one technique called ‘quirk’s mode’ which will show page in older version on browser if its non standard page. Nice nifty trick does the job. Everyone was happy now.”

“Few years later pages started using javascripts, css. And before any standards standardize these new things, browsers adopted these techniques as they thought these should work. Some browsers supported same functions in different ways. ”

“Now after these many years, HTML, JS, CSS all these things are standardized now.. But browsers are still not adopting these standards. The main difference in two cases is, now people are blaming language/programmers now, and not the browsers that are actually causing these things to happen”.

This, I call, is browsers revenge on programmers.

– x –

Note: Ok. Agreed. JS is not perfect. but as Douglas Crockford says – If you neglect the bad parts of it saying they do not exist, Then all that remain are The Good Parts.


One Response to “Revenge”

  1. Twitter Trackbacks for Revenge « Tech Rants [] on Says:

    […] Revenge « Tech Rants – view page – cached Disclaimer: This post is not about C. Its not about linux. This post is related to Front End Engineering. If you’re not interested, you may skip this post. — From the page […]

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: