Archive for the 'google' Category

All the Cool Kids use bitly.tv

It was a huge week at bit.ly. At the beginning of the week Google and Facebook launched URL shorteners at the same time we were launching bit.ly pro. As if that wasn’t exciting enough, I also launched my first product experience for bit.ly known as bitly.tv.

The response to bitly.tv has been very exciting and positive. It launched as part of labs.bit.ly, where I hope to be involved in many future experiments with bit.ly data. The bitly.tv User Interface is very fun and extremely different from anything I have built in the last few years, I had the opportunity to really flex my AJAX application skills.

The app uses quite a few of my favorite libraries and JavaScript projects, including jQuery, SWF Address, SWF Object and a few plugins I wrote specifically for bitly.tv. I also got my first taste of writing Python for a production level project as well as using the Tornado framework. In addition, I got the opportunity to finally use the new Google Closure Compiler. All in all, I think all of these technologies are excellent and make writing apps fun.

I also learned some extremely valuable lessons about the jQuery animation code and DOM interface. During the prototyping phase of bitly.tv, I noticed that jQuery was consuming a considerable about of memory because my architecture was not caching references to DOM elements. Essentially, I was crawling the DOM looking for the correct rows and columns to transition on every mouse over and mouse out. This was very slow in FireFox, but not very noticeable from a user experience point of view in Chrome and Safari. To help alleviate this issue, I began storing the references to each row and column in an array then did a simple jQuery.inArray(); check to skip the DOM API completely. This reduced the number of internal jQuery calls from around 32,000 to around 4,000.

In addition to the above, I also helped speed up the jQuery animation code by skipping the standard jQuery().animate(); and going directly to jQuery.fx();, which also had a considerable impact on the number of internal calls jQuery needed to make. I don’t recommend doing this, however, as it could cause compatibly issues with future releases of jQuery.

Take a few minutes and check out bitly.tv. We are already planning bitly.tv 2.0, and I would love to include your feedback.

Open Letter to The Makers of Google Chrome OS

Dear Google,

Thank you for your latest announcement to modernize and webize the P.C. operating system through the introduction of Google OS Chrome. As a web developer and software engineer I welcome the news with open arms. I am happy to see another company compete with Microsoft.

Microsoft Internet Explorer (I.E.) has caused me grief for over 10 years now. From when I built my first web page back in 1998, optimized for Netscape, and my friend called to tell me it was broken in I.E., to my latest projects, Internet Explorer has been both the source of both hours of frustration as well as a steady paycheck for many years now.

When Mac released OSX, I happily switched from Windows to Mac. But I was one of the few and I continued to need a P.C. running Windows so I could test my work in Internet Explorer. As Linux grew from the relative obscurity of the ubergeek to common enough that even my doorman uses it, I happily installed it on my P.C. as a dual boot with Windows so that I could continue to test my web applications in Internet Explorer.

As Firefox was released, I happily used it. But I still needed to test my work in Internet Explorer. As Safari and Google Chrome was released for P.C. I gladly used both of them. But, I always keep my trusty copy of Internet Explorer so I can test my web apps for the large number of users who either refuse to switch away from Internet Explorer or are unable to download and install anything on their computers.

So Google, I ask you, heck I’ll even beg or plead, please write something that doesn’t just emulate Internet Explorer, it is Internet Explorer for Google Chrome OS so that I can actually ditch my ‘trusty old copy’ of Window and Internet Explorer.

I know this is not a trivial ask. I know it doesn’t serve Microsoft’s interest at all to allow Internet Explorer to run on another operating system, but unless I can continue test my work in Internet Explorer, Google Chrome OS will be just another competitor in a crowded space to me.

I realize that allowing Internet Explorer to run on another operating systems might give it more of a boost than it deserves, but please understand the perspective of a web developer – I must test all web applications in Internet Explorer – regardless of how I personally feel about that browser, people use it and will continue to use it for many, many years.

I wish you the best of luck Google in your endeavor to compete with Microsoft. I will gladly try the Chrome OS, just as I have tried Ubuntu, CentOS, RHEL, Mac OSX and many more Operating Systems. But Google, please be know this, if you really want me to ditch my ‘trusty old copy’ of Windows in favor of Google Chrome OS, you will have to build something so that I can test my web apps in Internet Explorer.

Thanks
-gregory tomlinson
Web Developer