Hey guys!

This week I brought a topic to the forums and people seemed to have shown great interest so thought about bringing this here in a more concrete way.

If you remember, internet as a mass media device is pretty young, (perhaps even younger than you!), and it really wasnt until PCs came into the everyday life that we would become interested in "e-mail" and from there we took the leap to "webpages", "websites", "forums" and more recently "blogs" and "blog radio" etc etc etc...
So, being internet such a young kid it is only natural that the rules for him are not all that clear yet. Or if they then not being followed so strictly.

An organization was founded in 1994 to regulate how the interpretation of information should happen, this organization saw the need to standarize the behavior of those programs that were able to understand and show "html", which back then was pretty much internet was. This organization is called the W3C, the World Wide Web Consortium. Basically its responsibility is set the rules for any device that is capable of interacting with "internet", with this I mean mostly to web browsers but their reach is not at all limited to this.
Ok they set the rules, but what does it mean? it basically means that if an html document has the tag "<div> text </div>" then every device displaying this document should render this piece of code in this specific way.

The problem became obvious in their specifications for HTML 4, where they rellied too much on the word "should" and "should not", in general terms they were setting the rules in terms of these words, so instead of saying "the web browser must render this in this fashion" or "this will be interpreted by the web server in this way", they said "this should be shown like this", so this left room for "ok but I wont" because its a recommendation, its merely a suggestion of what was expected. So then it was possible to write W3C standards compliant web browsers which didnt render a page in the same way. And you could write standards compliant html code that would not look the same way depending on the web browser you used.

This lead to web developers actually having to write "IF browser is X do this ELSE IF browser is this other..." In fact it could have been seen in terms of IE vs The rest.

Not that long ago however (around 1998), Mozilla was founded, in the basis very much opposed to those of Microsoft's, believing in "not to making money but to improving the way people everywhere experience the Internet". Thats probably why you didnt hear of them until 2004 when version 1 of Mozilla Firefox was released.
Mozilla Firefox came to the world with a whole new set of features that Internet Explorer lacked at the time, and ever since Microsoft has been following the steps of the Firefox project, not too well I reckon. And guess what, they understood the way everything should be shown and sticked to the standards more roughly, mainly because its based off programmers.

Little by little IE's reach to the market has decreased, and I guess we all know why, IE is not as safe as other competitors, not as user friendly, not at the head of the wave with features, and not as nice looking as others. It lacks add ons or themes and whenever you install one of these you fear its packed with viruses.

Perhaps it is only more evident the inherent security issues with IE after this patch release.

Still it is IE the most widely distributed internet browser and I believe it is only due to the fact it comes built into the most widely distributed OS, which for better or for worse is not a linux flavor ;)

Hope you liked this small article and helped you understand a little bit why we (web developers in general) feel this way about IE :)

Interesting facts:

Firefox sends 2 requests
Posted February 4, 2009 by Raymond Benc in Web Browsers

We ran into a very odd issue earlier today. The problem at hand was that Firefox was sending 2 requests on each new page it visited when browsing a site. We tested on all the popular browsers and none replicated the same behavior. First we thought that it might have been a plug-in we installed for our browsers. After uninstalling every plug-in the problem was still there.

After an exhausting research we found that very few stumbled onto the same problem. The odd part is that this worked fine for us on our live server, however it did not on our local servers. We tested on different Apache setups and all the same outcome with Firefox. We also tested Firefox on windows and the same problem would come up.

The solution was rather odd and there seems to be no explanation as to why it needs to work this way other then the fact that it organizes the block structure. The fix was to move a certain JavaScript block of code after the meta character set.

So instead of:

HTML:
<script type="text/javascript">
<!--
var oModules = {};
// -->
</script>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />


We switched it to:
HTML:
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<script type="text/javascript">
<!--
var oModules = {};
// -->
</script>


Problem solved.

I have never come across such an issue based on the ordering of meta or script blocks nor can we find it mentioned on W3C.

Overall, glad the problem was solved; although still need to find why ordering of blocks within an HTML header would cause such a problem. In the end glad we ran into this problem as we got the ordering of blocks out of the way since it was something I wanted to look into at a later time.
Tags: Firefox, HTML, WC3

While working on phpFox2 today I noticed the following JavaScript error on each page:

:
userAgentButton is null

I first thought it was a compatibility issue with jQuery and some new JavaScript code I added, however looking over the logs I didn't add any new JS code so that did not seem to be the problem.

Many problems I have faced in the past when dealing with Firefox was because of plug-ins so the next thing I checked was if I had any plug-ins related to modifying user agents, which I did. I installed the add-on User Agent Switcher a few weeks ago. I disabled it and restarted Firefox and everything was in order. I didn't bother to look for an update for the add-on as I haven't used it since the first time I tried it out, however I am sure there is another fix if anyone plans on using the add-on.