Thursday, January 31, 2008

Browser popularity

John Resig estimates that IE7 will be the most popular browser next year, followed by IE6, Firefox 3, Safari 3 and then Opera.

I agree that IE6 will stay on the scene for quite a while because of corporate intranets and legacy systems, but I'd think Safari 2 will stick around for a similar reason. Mac owners aren't all necessarily going to upgrade to OSX 10.4.9 because that might cause their old expensive software to stop working.

Overreacting

Excellent article on the psychology of modern risk assessment.

Tuesday, January 29, 2008

Land of Freedom eh?

Schneier wrote a really nice article on security vs privacy. To me, this whole talk about monitoring people's activities sounds like data mining, ultimately so that the guys up there know where to invest their money.

Monday, January 28, 2008

Instant behavior optimization

Today I was working on a site that uses behaviour to attach javascript unobtrusively. Incidentally the site also uses Extjs.

So, I decided to see how much css query engines have improved over time, and replaced the document.getElementsBySelector with Ext.DomQuery.select and launched firebug's profile.

The homepage loading time dropped from 297ms to 47ms. Pretty neat :)

Friday, January 25, 2008

iPhone sales numbers are way off

Apparently, there are a good 1.3 million iPhones that were sold, but not activated via AT&T. Like most Apple products, one the drawbacks of the iPhone is that by default it doesn't give too much flexibility to users (in this case, carriers).

Vista slump? I think not

Microsoft's Q2 report is out and exceeded expectations.

Business and other enterprise customers are done experimenting with open-source products and are turning to "trusted vendors" like Microsoft to deliver complete systems that can give them a competitive edge.

The thing that is interesting to note is how PC sales and Vista sales are so strongly related. At the end of the day, FUD wins.

Microsoft js leak detector

A Microsoft employee released beta tool. It seems to install fine in IE6 (the tool will be listed in the explorer bar submenu), but the example didn't leak any memory (perhaps thanks to the js 5.7 patch that was pushed to IE6 in december.

This war on terror thing is getting more stupid by the minute

Some kid got arrested for planning to hijack a plane. Airport security is such a joke.

Wednesday, January 23, 2008

HTML 5 Working Draft

The WHATWG released this yesterday, for those wondering what's new in HTML5.

Thursday, January 17, 2008

Testing and politics

John Resig wrote an interesting piece on testing and its politics.

He poses a rather challenging question: how do we test real-world situations? Obviously that will depend on the applications themselves, but there are some things that I think are fairly global:

  1. Speed of loops. I've talked about this a long time ago, it's really easy to improve looping speed and brings about enormous performance boosts.
  2. Scalability. DOM querying sure can speed up development time, but speed degrades as more DOM nodes are present on a single page. There are tons of things that can be done about it: using native specialized code where possible (e.g. document.evaluate), passing the callback directly to the query function so that you only need one pass through the node list, instead of a get/use pair of passes, etc. There could also be more API functionality to avoid redundantly scanning nodes (e.g. updating events after an ajaxed DOM insertion). One idea I got from playing around with D is to inline stuff to deal away with function calls (thinking about those nested loops hidden within APIs again), but C-style macroing isn't supported by Javascript. Maybe someone will come up with a workaround.
  3. Animation FPS. Game developers have been striving for high frame rates for ages. It's quantizes smoothness of animation and in a slow language like Javascript, every frame counts. Pre-computing tween paths sounds promising.

There are probably more things that can be done in terms of speed optimization on the web development front, and I think that server-side code is going to become more and more important in the speed optimization field (I'll leave that discussion for another time).

Tuesday, January 15, 2008

JQuery and speed improvements

So, JQuery 1.2.2 is out with a headline of 300% speed improvements on DOM queries. I suppose that's a really great thing for them and kudos all around, but it does make me wonder what is the correlation between triple digit speed improvements (twice) and the quality of the code that was /still is there.

Oh well, better late than never.

Thursday, January 10, 2008

Open Source Bugs Uncovered

Go Open Source!

The neat thing about open source sponsoring is that anyone can invest as much or as little money they want into the effort, whereas in proprietary software, you're stuck with paying the cost of the product and hoping the majority of their customers need the same features as you. Think man hours.

Thursday, January 3, 2008

MD5 and a playstation 3

Now this is an interesting way to use your Playstation 3: for cracking MD5 hashes

Essentially, a single PlayStation 3 performs like a cluster of 30 PCs at the price of only one. In our experience, one chosen-prefix collision can be constructed well within 2 days of computation time, using one PlayStation 3 and a quadcore PC.