qr code is about easily passing data to your smart phone.
The most common application is give url to your phone. android 2.2 got a feature to push links from chrome to android phone.
with qrcode, you can do it from any browser to any smartphone.
One could write an plugin for that... one js including all what is needed. display a small icon on the page. when the user click on the icon, a large qrcode open, and the user can scan it and go on on its phone.
A perfect example: printed tickets (for movies, live music, airplanes, etc.) Instead of having to rely on a service to generate a barcode (pretty common) you could generate QR-codes right in the browser, which makes it that much easier to switch over to a QR based system.
its a trade-off. the point of javascript is you don't have to download an image. i've heard of people inlining base-64 encoded images to avoid an extra request. is 4k javascript worth it to avoid a 2k png download hosted somewhere else? maybe.
Looks like it uses canvas to draw the qr. Using something like http://raphaeljs.com/ would have made it even better for backwards compatibility. Awesome job though!
It would be more convenient if it automatically wrote the canvas out to a Base64 encoded png, imo. Makes for easy saving because I can then drag it to the desktop.
I touched on this in another comment and zefhous is pretty much on the money. Where I'm at we have a web-based interface for our warehouse, inventory and CSR systems. QR codes are all over the place and with our web UI's we use Charts for QR generation. This causes a bottle-neck when things are moving really fast on the floor. I haven't looked at this yet but it sounds like something we need.
I had installed one of the numerous QR Code extensions for Chrome (press the button and it generates a QR code of the URL to continue reading on the phone). Unfortunately, I always wanted to send the URL to my phone _after_ losing wifi contact, so the image would fail to load. I was so annoyed that I downloaded the ZXing source and learned GWT so I could compile the QREncoder to Javascript for myself. This looks like a neater and more lightweight solution.
the technologies have overlap in many use cases but are complementary, QR Codes need to be visible and NFC (as the "Near" implies) requires a receiver to be near; you also need to program an RFID chip to do NFC, for QR Codes all you need is a printer or a screen, again very different use cases from the publisher standpoint as well; I guess Google's choice has more to do with what they want Google places to turn in to that with a choice of technology by itself
How well does it work (not in terms of recognition, but traffic generation, etc)?
I am looking for a use, but always come up with easier solutions that do not involved barcodes and image recognition on smartphones.