Internet Explorer 6 must die!

noIE

As a professional web developer I have the authority to say this, Internet Explorer is a pain in the ass to support. IE 6 is the browser that shipped with Windows XP, so it was pretty wide spread. Every year on the web is like 10 years in any other industry. This makes IE 6 about 80 years old in practical terms, a literal antique. Microsoft is now on version 8 of Internet Explorer. IE6 is not considered a “modern browser”. Modern browsers honor web site development standards and promote a consistent visual experience are users. The most notable of these modern browsers are FireFox, Chrome, Safari, and even Opera.

In a nut shell, a web browsers is an interpreter of code. Programmers write the code to power a website, but the displaying and presentation of the site is up to the web browser. Modern browsers will all react the programmers code in a similar manner, this gives users a consistent experience and lets programmers worry more about making cool stuff instead of worrying about how to make their pages look consistent on all browsers. IE 6 doesn’t play by the modern rules, it does its own thing, which is often unpredictable. This means that programmers have to write special code just for people who use IE 6 to look at their site.

Despite IE 6 being a horrible browser that is full of security holes, people continue to use it which is mind blowing to me. Upgrading to IE 7 or IE 8 is free, and mandatory if you have Windows XP service pack 2 or 3 installed. Better yet, IE 6 doesn’t come with  Windows Vista or Windows 7. Get with the time people and upgrade your computers!

Because IE 6 is still widely used but doesn’t play by today’s rules so to speak, and it is old, the decision has been made, IE 6 MUST DIE!

Major website announced this week that they would be displaying special messages to IE 6 users telling them to upgrade to a modern browser or lose the use of the site. Some of the big boys behind this effort include Twitter, Facebook, Digg and YouTube. In time these sites are going to stop worrying about IE 6 users all together.

I think this is an amazing step towards the future and would like to see some of the larger websites join together to solve some of the webs other problems.

youtube-ie6.png

Controlling Twitter SMS notifications through code

twitter sms

It’s not secret my current favorite tech toys are my iPhone and Twitter.

I follow several hundred people of interest, and regularly use TwitterFon Pro, TweetDeck and Twitter.com to keep up with them all. For an elite group of people I follow on twitter I choose to have their updates pushed to me via SMS (text message) to my phone.

Sometimes I’m in area where I dont have reliable service to my phone (most of the meeting rooms at my work for some reason), and Twitter will try to send me an SMS message telling me that one of my good friends just made a tweet. If Twitter cant deliver that tweet for some reason, like the phone doesnt have service, Twitter simply stops sending message to your phone. There has been many times where i have thought to myself “damn Twitter is quiet today”, then I log onto Twitter.com and see a “is you device have trouble?” error. If i don’t go check the website, I have no idea that Twitter turned off SMS updates to my phone. Twitter is cool but they aren’t cool enough to send you an email saying “Hey your phone is screwed up, we are going to stop sending you SMS message until you fix it”. Atleast then the poor bastards like me who are addicted to twitter would know what we have to do.

Because I am such a Twitter addict, I have come up with a plan to end my frustrations with this problem. The solution? Use some evil “robots” to do my bidding. I have blogged about them before, I am talking about Cron and Curl. okokok, so they aren’t evil robots they are software running on my computer.

Twitter has an awesome API (Application Programming Interface) that allows you to do all sorts of sweet things using REST based http requests, including turning on and off SMS notifications to your phone.

cURL is an application that allows you to connect to web addresses from a command line.

cron is an application that allows you run application at scheduled intervals.

Can you guess where this is all going? Here is mathematical representation for you
((Twitter API + cURL) * cron(30 minutes)) = Happy Josh Highland

I have cron run the following command every 30 minutes (replace username and password with your own of course)

/usr/bin/curl -u user:password -d device=sms http://twitter.com/account/update_delivery_device.xml

I will never need to log onto twitter to turn on my SMS notifications ever again. In the event that Twitter disables notifications to my phone, every 30 minutes my evil robots enable MS messages to my phone. At most I will have 30 minutes of down time. I can live with that.

This is a perfect example of what one of my Computer Science professors told me… “If you have to do it more then 2 times write a script to do it for you”.