Every once in a while, I come across a project or piece of software that really puts a smile on my face. About a month ago, I found Asirra (Animal Species Image Recognition for Restricting Access) from Microsoft Research. It is a CAPTCHA system that asks the user to decide which photos are dogs and which photos are cats.
Why does Asirra make me happy? Well, it does some pretty neat things. It brings a significantly stronger CAPTCHA methodology into play, while simultaneously making it much easier for humans to use. (By stronger, I mean that it is less likely that software can fake it out.) I also like the connection Asirra has with Petfinder.com: The photos are from Petfinder's database of animals, which have already been identified as dogs or cats by the animal shelters. This provides a database of more than three million photos to draw from. Best of all, each image has an Adopt Me link that goes to the Petfinder site. You can see an example of Asirra in action below.
The "strength" of the photo CAPTCHA compared to text is pretty clear to me. Computers are still really, really bad at any kind of image recognition, particularly when it is trying to match an image to a concept instead of a known image. For example, computers are just now able to compare two photos of the same person and identify them as the same person even if the clothing, facial hair, glasses, etc. have changed. It's still not possible to match a photo of a cat with the word cat with any kind of reliability. Compared to the typical text CAPTCHAs, which are easily hacked, photos are definitely stronger.
In terms of usability, Asirra is an improvement over the text CAPTCHAs. CAPTCHAs still have usability problems, such as not working for blind users and being a fairly confusing and workflow breaking part of a process. After all, signing up for an e-mail account or trying to post a message does not involve "trying to read some squiggly text" or "identifying photos of cats" as part of the process that a business analyst would draft. That said, I believe that the photo CAPTCHAs are a bit less difficult than text CAPTCHAs, since instead of struggling to read something that is intentionally obscured, you are simply making a binary decision based on a clear image.
Finally, the Adopt Me link is nice icing on this cake. It is always great to see a project that can do a bit of good in the world, and this one does it in a way that I am not used to seeing in the IT industry. It is fairly easy for me to feel a little jaded by the dozens of open source projects that promise to bring peace and harmony to the world by freeing the bits, or to be a touch sarcastic when a megacorporation donates a few leftover PCs to some poor African village that lacks running water. I hear a lot of rah-rah about "giving back to the community" but, frankly, it is tough to do so when you work 50+ hour workweeks and have a family waiting for you at home. So when I learn about a project or software that is free and has the chance to do some good in the process, I get a bit warm and gooey on the inside.
If you have a need for a CAPTCHA and are not set on one in particular, please give Asirra a chance. You'll be getting a more usable, less hackable system, while helping a dog or cat find a good home.
Justin James is an OutSystems MVP, architect, and developer with expertise in SaaS applications and enterprise applications.