More HTML5 Games

More HTML5 Games

There were quite a few games built with HTML5 in the 10K Apart contest. The grand prize winner's submission was a game built using just canvas and JavaScript, measuring only 6.9KB.

HTML5 is indeed making it easy to develop games for standard web browsers while also providing a way for developers to reach mobiles and tablets with a single code base.

The Google sponsored HTML5 Game Jam has also produced some nifty games. Check the winning entries and also look out for Mozilla's Game On competition
Read More

Chrome silently auto-updates itself, integrated Adobe Flash Player & PDF viewer

Google's advertises Chrome features pretty well in its “20 Things I Learned about Browsers and the Web” guide. I didn't know about these till I read them up in that guide -

In Chrome, for example, sync saves all bookmarks, extensions, preferences and themes to your Google Account. Use any other Internet-connected computer, and all you need to do is fire up Chrome and log in to your Google Account through the browser’s sync feature. Voila! All your favorite browser settings are ready to use on the new machine.
In the Google Chrome browser, you’ll notice a little something extra in the Options menus: a direct link to the Adobe Flash Player storage settings manager. This link makes it easy to control local data stored by Adobe Flash Player (otherwise commonly known as "Flash cookies"), which can contain information on Flash-based websites and applications that you visit. Just as you can manage your browser cookies, you should be able to easily control your Flash cookies settings as well.
Chrome has integrated Adobe Flash Player and a PDF viewer into the browser, so that both these popular plug-ins are also auto-updated.
Another technique that modern browsers like Chrome use to fetch and load web pages much more quickly is called “DNS pre-resolution”. The process of translating a web address into an IP address through a DNS lookup, or vice versa, is often called “resolving.” With DNS pre-resolution, Chrome will simultaneously look up all the other links on the web page and pre-resolve those links into IP addresses in the background. So when you do actually click on one of the links on the page, the browser is ready to take you to the new page instantly. Over time, Chrome also learns from past visits so that the next time you go to a web page that you’ve previously visited, Chrome knows to automatically pre-resolve all the relevant links and elements on the web page

Microsoft's contribution to AJAX is cautiously acknowledged -
But the dynamic web as we know it today truly came to life when XHR (XMLHttpRequest) was introduced into JavaScript, and first used in web applications like Microsoft Outlook for the Web, Gmail and Google Maps.
Read More

HOW TO implement alphabetic paging on dynamic data with jQuery

A few weeks ago, I discovered how jQuery plugins make it easy to implement numeric paging & rating of dynamic data. Amazingly, there are jQuery plugins that can almost mimic any server-side slicing & dicing of dynamic data.

Continuing my experiments with the jQuery Template plugin, I implemented alphabetic paging on dynamic data fetched in JSON format using the Geonames.org webservice.

Check the sample showing cities of India fetched through the GeoNames Search Webservice with alphabetic paging & its source.

Read More
Rate your SEO skills with these Quizzes

Rate your SEO skills with these Quizzes

Did you know, for high-volume search phrases, the Search Engines usually will NOT differentiate between singular and plural versions of a term? Check it for yourself by seeing the search results on these phrases - cell phone vs. cell phones. I was under the impression, until I took the SEOmoz quiz, that this was a case of stemming & there should be differentiation.

Here is my compilation of all the interesting SEO Quizzes I have found (work in progress) -



Trivia: PageRank is actually named after Google co-founder Larry Page
Read More

Story behind “On the Internet, nobody knows you’re a dog” cartoon

In an interview with New Yorker magazine cartoonist Peter Steiner, CartoonBank blog (dead link; I picked this content from their feed) asked him: 
Your cartoon, “On the Internet, nobody knows you’re a dog,” is one of the best-selling New Yorker cartoons of all time – and, since it was published in the early days of the Internet (1993), it is considered a prescient sign of changing times. Can you tell us the back story of this cartoon? At the time, did you have any idea how significant it would become, or did the image of two dogs logging on just strike you as funny?

He answered: I didn’t even think it was that good. I put the two dogs there and then I put the caption, and it became this huge phenomenon.

So there is no story after all, behind this famous illustration in Internet history 

Peter Steiner is also a novelist & a former professor





Read More
Exaggerated tech terms

Exaggerated tech terms

"If you can’t dazzle them with your wit, bamboozle them with your bullshit." - Anonymous

My favorites from ComputerWorld's10 most exaggerated tech terms -

Valued Partner: Except when that partner decides not to renew its licensing agreements, and then the vendor treats that valued partner the way Michael Corleone treated his valued brother Fredo.
Don't Be Evil: How 'bout just a teensy, weensy bit evil when we feel like it, because we have good intentions?
Facebook Privacy: FB's privacy policies (automatic opt-in!) seem to change as often as Zuckerberg's T-shirts. 
Thought Leader: If you've ever had a decent thought (or perhaps even two or three insights) that you Tweeted or shared on Facebook, that does not make you a thought leader (or guru or influencer or expert). 
Generally Available: If a vendor's product is still having its "tires kicked" by a "select set of customers" (otherwise known as beta testers) and has got more bugs than The Roach Motel, then it's not close to GA, folks.
Read More

How the Internet thing works


20 Things I Learned about Browsers and the Web”  is an online illustrated guide from Google aimed at casual users. You can browse though it to catch up on the buzz-words or pass it to friends & relatives who want to know about the Internet thing. It is also available in PDF format for offline reading.

It covers the following topics in a lighthearted, non-techincal way -
  • What is the Internet?
  • Cloud Computing
  • Web Apps
  • HTML, JavaScript, CSS and more
  • HTML5
  • 3D in the Browser
  • A Browser Madrigal
  • Plug-ins
  • Browser Extensions
  • Synchronizing the Browser
  • Browser Cookies
  • Browsers and Privacy
  • Malware, Phishing, and Security Risks
  • How Modern Browsers Help Protect You From Malware and Phishing
  • Using Web Addresses to Stay Safe
  • IP Addresses and DNS
  • Validating Identities Online
  • Evolving to a Faster Web
  • Open Source and Browsers
As it is built using HTML5, JavaScript and CSS3, it is best viewed with a HTML5-compliant browser.

A user named Nephron reports (in the comments section of this post) that the source is about 3500 lines of code & utilizes jQuery. Google plans to open source the entire code soon. The code for this web book is now open sourced on Google Code (2-June-2011)
Read More

HOW TO move items between Lists with jQuery

Moving items between list-boxes is a common UI pattern in Windows applications.

To simulate that in web applications with jQuery, check my no-frills code sample which uses an Unordered List instead of list-boxes. When items are moved back to the original List, the sequential order is maintained. This sample can be extended to have multiple Child Lists whose items can be moved to a single Master List.

When an item is moved from the parent List, it is only hidden & its clone is added to the second List. When the same item is deleted in the second List, that element is removed explicitly & the corresponding hidden item is shown in the List where it originated from.
Read More

Debug JavaScript with Firebug & IE Dev Tools Console commands

Instead of debugging client-side code with the JavaScript alert command, using the Firefox Firebug extension & Internet Explorer Developer Tools' (F12 keyboard shortcut) Console commands makes debugging less distracting & simpler.

The following Console commands work in both IE & Firebug -


  • console.log
  • console.info
  • console.warn
  • console.error
  • console.assert


To use either of these in place of an alert in your JS code, make sure you have the Console enabled.

Trivia: Firebug was initially written by Joe Hewitt, one of the original Firefox creators. He now works at Facebook.
Read More

Prevent identity theft with HTTPS browsing

The grave risk of Internet users unwittingly letting out their private & sometimes confidential details while using unencrypted networks has been brought to focus by at least two startling incidents.

Back in May, Google candidly admitted that its Street View data collection cars inadvertently collected and stored "payload data from unencrypted WiFi networks, but not from networks that were encrypted". More recently a Firefox extension called Firesheep exposed the vulnerability of HTTP browsing in aiding identity spoofing.

Analyzing the Firesheep extension, Jeff Atwood makes the following recommendations to protect yourself -
  • We should be very careful how we browse on unencrypted wireless networks.
  • Get in the habit of accessing your web mail through HTTPS
  • Lobby the websites you use to offer HTTPS browsing.
Gmail enabled default HTTPS access for everyone in January this year. Hotmail lets you turn it on from your Account settings (go to Hotmail Options > Managing your account > Account details & in the Account overview page, choose the "Connect with HTTPS" link under Other options)


Read More

Competition drives Search Engine innovation

The hot pursuit to get the most relevant results faster & in an appealing way is evident from the way competing search engines are building on each other's strong points.

Before I buy a book, I like looking up Amazon to see not just how many stars it has got but how many people rated it (popular books have a large number of reviews) and also what some of the folks who gave it the highest & lowest rating have to say about it. This kind of opinion aggregation has also been the topic of several academic dissertations.

I was happy to see that both Bing & Google show the user ratings & total reviews that a book has received on Amazon in the search result itself.

Bing introduced the preview search result feature ...

.. and now Google has improved upon that to show visual search results called “Instant Previews” which may include text call outs in orange to highlight search terms in the image-based snapshots
Read More

Buying a laptop? Check tips from Microsoft

As with other consumer products, there are plenty of options when it comes to laptops. Zeroing in on the one  that's right for you can take a little planning & research.

Is a matte finish better than glossy? How to compare processors? What are the VGA, DVI, HDMI ports for?

Microsoft's has some useful tips, answers & facts on laptops that can help you make a good purchase.

If you are a power user constantly on the move, get a laptop with a 14 inch or lower screen size.

Smaller screens .. tend to use less power, so you'll gain battery life and reduce the need to pack a power cord for jaunts to the coffee shop, further lightening your load.


Read More

HOW TO view size of files in Google Docs

Google Docs has some amazing features but there is one small detail thats conspicuous by its absence. File sizes are not shown in the summary view. If you are running out of space, there is no easy way to know which are the bulky files in case you wanted to remove some of them.

Thankfully, there is at least a roundabout way that a nice person on the forums has identified & shared -
  • Create a folder for the files whose size you want to know or better still, cultivate the habit of saving files into specific folders (at least till Google adds a Size column to the file listing in the tabular view)
  • Right click on the folder and select Show Details to view a column with the file sizes

Read More

Free MS Press ebook: Understanding Microsoft Virtualization Solutions: From the Desktop to the Datacenter

Do you feel left out & tongue-tied when your colleagues talk about Hyper-V, Private clouds & other virtualization jargon? If you always wanted to know about Virtualization but didn't know whom to ask,  the MS Press book, Understanding Microsoft Virtualization Solutions: From the Desktop to the Datacenter is for you.

The freely downloadable ebook (10.6MB) has 450+ pages & the following six chapters -

Chapter 1 - Why Virtualisation?
Chapter 2 - Server Virtualisation
Chapter 3 - Local Desktop Virtualisation
Chapter 4 - Remote Desktop Virtualisation
Chapter 5 - Virtualisation Management
Chapter 6 - Cloud Computing
Read More
5 reasons why Windows Phone 7 is hot

5 reasons why Windows Phone 7 is hot

According to Scoble, here are the reasons why WP7 will be successful -
1. It’s a sexy new OS that gives app developers more capabilities.
2. Developing for it is easy and consistent across the devices that it runs on
3. There are a ton of bored developers who are familiar with .NET
4. Almost every developer I’ve met lately has been approached by Microsoft’s evangelists
5. The hooks with Microsoft Xbox have developers intrigued
Read More

Client-side paging of dynamically generated records with jQuery Template & Pagination Plugins

I'm amazed at the sheer number of jQuery plugins that developers worldwide painstakingly build & voluntarily share. There is a vibrant, responsive jQuery community online that offers feedback & support to those seeking it. This community is one big reason which makes jQuery special when compared to other JavaScript libraries.

To display dynamically generated records with client-side paging, I recently tried out Microsoft's jQuery Template plugin (minified version: ~6KB) alongwith G Birke's jQuery Pagination plugin (minified version: ~3KB) . I've shared my code sample on JSBin (see source).

This sample is an adaption of Stephen Walther's Templates plugin example & a Pagination plugin example by StackOverflow member brianpeiris. The help I recieved from the StackOverflow forum has been invaluable.

Some of the things I learnt from working with jQuery plugins are -
  • Note which version of a  jQuery plugin you are using & if it needs a specific version of the jQuery library & any other dependent files.
  • Pick Plugins which have good documentation & demos. If you pick a popular one, the chances of getting quick help from online forums will be higher.
  • Find out if the license policy for that Plugin suits your needs. Plugins hosted on Github generally have liberal licensing.
  • Rate Plugins on the jQuery Plugins site so that it can help the author & potential users (requires login)
Read More
jQuery videos for ASP.NET developers

jQuery videos for ASP.NET developers

As a convert to jQuery, I'm glad to see the support that Microsoft is lending it. Today, I went through possibly the first video tutorial exclusively on jQuery on the official ASP.NET website's training video series. Video content is sometimes easier to absorb than flipping through books or reading online articles. I plan to list all the good jQuery videos I find -

(work in progress...)
Read More
Find a bug on Google Web Apps, win up to $3,133.7

Find a bug on Google Web Apps, win up to $3,133.7

Based on the success of their vulnerability reward program for Chromium open source project, Google has now announced a discretionary (Google Security Team decides if a bug is eligible), experimental (can be cancelled at any time) new vulnerability reward program that applies to Google web properties like -
  • *.google.com
  • *.youtube.com
  • *.blogger.com
  • *.orkut.com
More info in the FAQ

Also see:
Crowdsource your supplemental learning with Stack Overflow
Read More