The reason this post came about was that a few days ago Roger Smolski over at 2D Code posted about Color Card Administrator (CCA) setting up a QR Code Test Suite to determine the accuracy and sophistication of QR code scanning apps.
The test suite presents an array of QR codes containing a variety of data types and is intended to set a benchmark standard of readability and interpretation that all scanning apps should aspire to. Testing begins on 01 May 2011 and is open to all QR code scanning app developers. Apps that pass the test will be given an official CCA seal of quality to indicate that it’s able to properly deal with the various established standards that are currently being used in QR codes.
After reading the article, I thought to myself “about time!” and recalled the regular emails I get from users of the QRStuff website that begin “I made a QR code on your website and my scanning app won’t read it”, with the immediate assumption being that the QR code is broken, and no consideration given to the possibility that scanning app was at fault by not being standards compliant.
Further investigation usually leads to the same outcome each time – the scanning app used was one of several “suspect” apps that lurk amongst the majority of reputable apps in the iTunes App Store or Google Play, the developers of said app not even appearing to be able to spell “standards compliance” let alone put the concept of it into practice, and which stumbled badly when confronted with a QR code that had anything more complex than a website address in it.
Now when I say regular, I mean out of the 100,000 people that used the QR Stuff website last month I probably received about a dozen emails, but I’m sure there were others who didn’t bother emailing. It concerns me when the blame for someone else playing loose-and-fast with the technology behind QR codes (either by design or through ignorance) is dumped on an innocent third party, so….
MEMO TO (SOME) APP DEVELOPERS:
Just thought I’d drop you a few suggestions on how to give your users a better experience when using your scanning app:
- There’s an ISO standard for QR codes – please familiarize yourself with it.
- There are RFC’s for the main data types used in QR codes – please read them. They aren’t suggestions, they’re actually the rules.
- QR codes will often contain more than just a simple URL, contact details or a phone number – please make your app smart enough to cover the possibilities.
- People have been using colour in QR codes for ever – please make sure your app scans (and also interprets) in colour rather than in shades of grey. In a black and white world many colours look the same.
- If there are apps on the smartphone you’re coding for that handle different types of content better than the default browser, please use them – there’s a native YouTube player available for a reason, and Twitter sucks in Safari on an iPhone.
- If you choose to use an in-app browser please make sure it’s up to the task of correctly displaying the wide variety of content that a QR code could link to.
Oh, and learning what “UTF-8” means, and the significance of reserved characters in URL’s, would be appreciated as well.
One final matter – I suppose error messages that indicate that your app didn’t understand the QR code, rather than blaming the QR Code for the failed scan, are out of the question, but then again if you were to follow the suggestions shown above, the actual content of the error messages would become a moot point because there would be significantly less of them to display.
There are indisputably many fine apps out there that are a credit to the expertise and diligence of their developers, and definitely worth every cent you pay for them (even the free ones!). While I’m not going to name the apps that are usually mentioned in conjunction with scan failures (although a quick flick through the review scores in the iTunes App Store and Google Play is quite telling), I am going to take the opportunity to highlight a few that I very rarely hear anyone mention anything negative about – they’re also the ones I use myself for my own in-house testing.
- Scan for iPhone, Android and Windows Mobile
- QRafter for iPhone
- Optiscan for iPhone
- QR Droid For Android
This post was never intended to be a rant – it just ended up veering in that direction because there’s not enough hours in each day as it is, and having any of them sidetracked unnecessarily because someone else didn’t do their job really annoys me.
It would be great if app developers took advantage of the CCA QR Code Test Suite now that a compliance standard has been made available.