JotSpot live
Jotspot live, collaborative live note-taking. Think subethaedit as a web-app, with all that entails – cross-platform, yay!
Shining, in new light
Utterly brilliant remixed trailer for shining. Imagine all you’d heard and seen of this movie was this trailer and you went to see it…
Tagging Vienna
Had a great time meeting Alexis Rondeau of semapedia fame today. We spent the afternoon tagging vienna, so make sure to have your semacode reader installed when going out.
At the academy of fine arts vienna we somehow landed at the 6th international congress on lasers in the conservation of artworks. The stuff there was way over my head and we left pretty soon. Had some brochures for pretty impressive looking image reconstruction software there, though. After dinner we busted into a roundtable discussion about the sixth sense @phil (not the movie but the, uhm, actual sixth sense, whatever that means). I didn’t really get into the discussion which apparently had been going for a while, but they talked a lot about networks & (visual) media and one guy frequently referred to Marshall McLuhan, which was kinda funny after his massive presence at this years ars electronica symposia two weeks ago. McLuhan still dead? Apparently not.
Anyway, i guess what i’m trying to say is that semapedia tagging is a great way for rediscovering the city even if you’ve been living here for a few years. Looking forward to doing this again.
Matrix Codes & Visual Code Recognition on Cellphones
As mentioned briefly before i’m currently doing some work in the area of visual code recognition, on cellphones to be more specific. After some research i’m a little overwhelmed, lots of activity in this area and it seems that most people are happily working on their own funky standards/implementations/platforms (it’s often difficult to figure out what they’re actually doing behind all the marketing-speech) for quick & easy profit.
Anyway, this is a list of 2d barcode standards and platforms which are used for applications on cellphones, with brief commentary and roughly in order of usefulness to me. This list is by no means complete, suggestions and corrections are more than welcome. I’ll update this list as i come across new stuff.
A few words of caution: if you don’t think that barcodes are totally hot & sexy this will all seem a bit dull.
Before we get to the bulletpoints, a few introductory words about 2d barcodes. I guess we’re all familiar with traditional barcodes as they’ve been plastered on pretty much all consumer products for the last few decades. 2d codes basically take the concept of barcodes to a new dimension: by storing information in 2 dimensions it’s possible to increase storage capacity. 2d codes typically fall into one of two categories: stacked barcodes and matrix codes. Stacked barcodes are just what the name implies, several traditional 1d barcodes stacked on top of each other. Matrix codes use a 2d matrix to encode information in both horizontal and vertical directions for improved storage density. Most of the things on this list use matrix codes.
So let’s start with the two established, well-documented, more-or-less open, widely adopted standards that you’ll come across repeatedly when researching this topic:
QR Code (wikipedia) was developed by denso wave and released in 1994. The specification is disclosed and the patent right owned by denso wave isn’t exercised. It has been approved by various standards bodies over the years, most notably it’s an approved iso standard (ISO/IEC18004) and availabe for purchase in their store (search for 18004). QR code symbols comprise of three position detection patterns located at corners of the symbol, a data area and a quiet zone outside of the symbol. The symbol size ranges from 21×21 to 177×177 modules (increases in steps of 4 modules per side) and it supports four error correction levels using reed-solomon code. Symbols are square in shape. QR codes can store up to 7089 numeric characters, 4296 alphanumeric characters or 2953 bytes, a comprehensive table showing maximum data capacity for each version & error correction level is available here. Another related standard developed by denso wave is micro qr code. Micro qr code sacrifices storage capacity for a smaller print footprint. It has only one position detection pattern, supports fewer levels of error correction and ranges in symbol size from 11×11 to 17×17 modules. Micro qr code is an approved JIS standard (JIS X 0510) and just as qr code its specification is disclosed and the patent right owned by Denso Wave is not exercised.
Though originally intended for inventory management and logistics, qr codes have become popular for consumer-oriented applications in japan due to increased inclusion of qr code readers in japanese cellphones. Typical applications strive to ease the burden of data-entry on cellphones by encoding urls or contact details. Encoding schemes vary between different operators but are typically just direct qr code encodings of text following a special syntax; docomo’s encoding scheme is described here (of note: only qr code versions 1-10 are supported) and this tool creates qr codes compatible with various operator schemes. Because of qr code’s widespread adoption in consumer-oriented applications they’ve garnered quite a lot of attention in the last few years, even though there’ve been few signs of adoption outside japan.
Some promising open source software projects for encoding and decoding qr codes exist, typically of japanese origin and unfortunately mostly lacking english documentation. Two promising projects are this java library for both encoding and decoding qr codes and these scripts for creating qr codes (the japanese version of the site seems to be more extensive).
Data Matrix (wikipedia) was invented by rvsi acuity cimatrix and has been placed in the public domain. It’s an approved iso standard (ISO/IEC16022) and availabe for purchase in their store (search for 16022). Data matrix symbols comprise of two solid borders as handles for alignment, two broken borders on the opposite corner as syncs for module sampling, a data area and a quiet zone outside of the symbol. Additional handles and borders are added with growing matrix dimensions. The symbol size ranges from 10×10 to 144×144 modules and it supports reed-solomon error correction. Symbols can be square or rectangular in shape. Data matrix codes can store up to 3116 numeric characters, 2335 alphanumeric characters or 1555 bytes.
Data matrix codes haven’t garnered the same public attention as qr codes and rvsi acuity cimatrix seems to primarily promote their use in industrial, military and governmental fields. However if you look under the hood of several visual code recognition projects in the cellphone area you’ll find data matrix at their core, the probably most prominent of these projects being semacode. Another example is active print which uses data matrix as well as qr codes.
Unfortunately i’m not aware of any open source software projects for encoding or decoding data matrix codes.Mike Laughton is developing an open source library for creating and decoding data matrix codes. A bunch of closed-source applications and tools by semacode and active print are out there, but we’ll get to these later in this post.
If you’ve made it this far i have good news for you: it’ll be a bit less technical and a bit more practical from here on. Now that we’ve covered the two most prevalant matrix code standards used in visual code recognition applications for cellphones it’s time to move on to a few concrete projects. Some are based on above standards, others use their own formats. Some are commercial, some are research projects, some are both:
- Active print is a project led by hewlett-packard and originated from hp labs in bristol under the name active posters in 2004. Its focus seems to be on research and like many of the projects listed here it explores linking of printed materials to online resources. It uses both data matrix and qr codes as underlying standards for encoding urls directly. They have a series60 application named glass available (download) which i couldn’t try yet, but it seems it reads both data matrix and qr codes. They also have a simple web tool for creating your own data matrix or qr codes. A list of projects using active print is available here. They mention in their faq that they may add support for other code formats in the future and their faq is actually a very worthwile read giving a good overview of use-cases and hardware limitations with visual code recognition on cellphones. Their website makes me like them and their work a lot. Mhh, warm fuzzy feeling inside, must be all the pink.
- Semacode is probably one of the best known projects in this area. They’re positioning themselves as a platform provider for linking the physical to the virtual and you can get a lot of information about the underlying technologies in this technical overview. They’re using data matrix codes for direct encoding of urls, basically the same as active print without qr codes but with added media buzz. They have a simple web tool for creating semacodes (data matrix codes) as well as a free tagger sdk (java) for writing your own code creation tools. There’re also several standalone readers for java and symbian phones and reader sdks in free and commercial versions, though i’m not quite sure about the criteria for qualifying for one or the other of the two versions. A list of applications using semacode is available here and there are other noteworthy applications missing from that list, such as semapedia, eruv and semanote. There’s also a guide for creating your own applications on their site.
- Kaywa offers a reader application for decoding both datamatrix and qr codes. You can also create your own qr codes and datamatrix codes.
- Visual Codes is a research project and there are several interesting demo applications for series60 phones available. It uses its own matrix code format designed and implemented by Beat Gfeller and Michael Rohs. The code format is relatively simple (though in all fairness highly appropriate for its applications) and encodes 83 bits or 76 bits using hamming code for error correction. There’s also a (proposal for a?) naming service for visual codes, but i’m not quite sure what to make of that.
The interesting thing about visual codes is that they’re not just trying to create printable hyperlinks, but also explore visual code recognition as an input mechanism beyond mere data entry. Matrix codes are not only great for storing data, they’re also comparatively easy to recognize in a picture. Reading a matrix code can give you immediate feedback about the distance and relative position between code and camera, and analyzing a stream of pictures allows you to track tilting, rotation and relative movement of the phone. Of the many papers available at the visual codes site i found the following particularly interesting: using camera-equipped mobile phones for interacting with real-world objects is a nice introduction to the whole project, a conceptual framework for camera phone-based interaction techniques defines interaction primitives and proposes a framework for combining these primitives to create more expressive interactions and real-world interaction with camera-phones presents some technical details of the recognition algorithm.
The accompanying sourceforge project hosts symbian/c++ and java source code for encoding and decoding visual codes, and encoding scripts in various scripting languages. - Shotcode was originally developed by high energy magic under the name spotcode and later sold to op3. Instead of a 2d matrix it uses circular barcodes for data encoding, which are arguably more esthetically pleasing than traditional matrix codes. Once again it’s aimed at linking printed materials to online content (sounds familiar by now, right?). They’re also positioning themselves as a platform provider, but with a much tighter grip on the whole process than for example semacode it seems. Juicy technical details are scarce and their code format seems to be closed so far, but i believe i read somewhere that shotcodes encode only 42 bits of data, which suggests that a central lookup service is needed to resolve shotcodes. If you want to create shotcodes you have to sign up for a free or pro account, with the free account being very limited in use and pro accounts obviously not targeted towards individuals with their pricing – this is not the mobile web i’m anticipating. Reader software is available for several phones, alas not mine so i couldn’t try it myself so far. Despite the closed nature of shotcode there are signs of openness – the people behind shotcode have recently released phonifier, an open source project for optimizing web pages for mobile phones.
- Colorcode, another attempt at linking the physical and virtual, originated in korea and uses multicolored matrix codes. This suggests higher data density, but i imagine it also increases demands on camera quality. The service seems to be based on a central lookup model.
- PaperClick is interesting because it kinda turns around the “established” approach of linking physical objects to online data. Where most other projects seem to be mostly concerned with issuing new codes for tagging, paperclick goes the other way round: you register your existing barcodes (and they support several standards) with them and augment these existing barcodes with additional information. An interesting approach and one where a central lookup model actually makes sense.
- scanLIFE – i can’t say much about them because their website not only lacks technical information, but is barely functional yet. They’re affiliated with scanbuy.
Their so-called “eZcodes” look suspiciously like the visual codes developed by Beat Gfeller and Michael Rohs (11×11 modules, same guidebar pattern). Seems like a shady operation to me…I retract that last statement – someone from scanbuy got in touch and informed me that they are the worldwide exclusive licensee of visual code and have renamed it eZcode. My sincere apologies to scanbuy.
So that’s it for today, thanks if you’ve made it this far. As mentioned above, if you have any suggestions, corrections or other feedback, mail me at christoph [at] engadgeted [dot] net, i’ll update this post. Many thanks to Chris Heathcote whose qr codes update got me started on these tracks and provided many invaluable pointers.
Separated at birth?
Exhibit a: flock.com. Exhibit b: haughey.com. I’m not suggesting that someone ripped off someone else’s design, but they do look strikingly similar, no?
Nintendo Revolution Controller revealed
Everyone’s writing about the new nintendo revolution controller and it sure enough looks revolutionary. Check out the video of the controller in use (via Matt Jones). I just wonder whether there’ll be any trouble with this sony patent which looks eerily similar. I guess it all boils down to implementation details, you can’t patent ideas yet, right?
You know you’re getting a bit carried away…
…when you start editing your css stylesheets to accommodate some small details of a blog-post you’re writing. Expect a longish post about barcodes and cellphones in the near future, with bulletpoints no less. If i ever get it finished that is…
Semapedia – linking meatspace and cyberspace
Semapedia is a project striving to link physical entities to their corresponding wikipedia articles. It uses semacodes for this, which are 2d barcodes for encoding urls. You’ll need certain reader software to decode these semacodes. It seems that semapedia originated in vienna as that’s where most of the action is right now. I should probably try to get in touch with the people behind it as i’m doing a lot of work in the area of visual code recognition myself these days, i could probably learn a lot.
Related: eruv, semanote
TextDrive lifetime hosting spots
Textdrive is offering a select number of lifetime hosting spots again. This has been up for a few days, so if you’re interested better hurry as nobody really knows how long the offer stands. As far as i can tell the deal’s the same as last time, much goodness for $399.
Now before my recommendation a few caveats: textdrive is a hosting company by geeks for geeks, with all that entails. No shiny cpanel or equivalent here in the foreseeable future, so if you aren’t comfy with snuggling up to scary old webmin this is probably not for you.
Be aware that you’re rather signing up for their lifetime than yours, so if they go down in flames tomorrow you’re fucked. They’re afaik growing leaps and bounds and hosting several high-profile sites (a list apart being a recent addition), but still you probably don’t wanna bet your rent money on this.
Uptime hasn’t been perfect, but i’m probably only saying this because they’re so damn transparent about downtimes and problems, which in itself is a good thing.
All that said, having been with them for a few months i’d toss them my money without a blink of hesitation. Getting quality support by actual real and above all knowledgeable human beings is probably worth the money alone.
Ars Electronica: Design for Digital Communities
(This should’ve gone up yesterday evening, alas i couldn’t get online)
Toshio Iwai’s participation in today’s afternoon session “design for digital communities” came as a bit of a surprise and he totally rocked. He showed some of his projects and early influences in his life on his works. He mentioned that he welcomes the mass-market commercialization of his creations because it allows him to spread his ideas further and reach more and more people, especially outside media arts circles, a sentiment i really liked and sometimes missed in other exhibited works – obscurity isn’t a virtue or quality, imho.
Bradford Paley’s talk was fast and all over the map, nevertheless fascinating if only because close to my heart & interests. Cognitive & cultural aspects of usability engineering, that kinda thing. He showed some of his stuff that didn’t particularly impress me, but i really liked what he said and envy his students for having a chance to work with him. He also did trace encounters, an interesting social network analysis project in meatspace at last years ars electronica and received a prize for it this year.
Axel Thalemmer’s talk baffled me. It wasn’t bad, but the connection between design for digital communities and taking design clues from nature for material science and its applications isn’t obvious to me. I was expecting something completely different and didn’t know what to make of it.
Anyway, Toshio Iwai – he’s awesome, building beautiful and original toys and getting them into the hands of as many people as possible. I can understand now why Regine is so fond of his work. If you’re curious to experience his work firsthand, electroplankton, a playful musical game for nintendo ds is probably the best way to do so.