And finally, I've taken a peek into the future, some 20 years hence, to see what the future of augmented reality might look like if we take the technology to its logical conclusion: Complete integration with the human brain, as depicted in the 1983 Douglas Trumbull film Brainstorm.
Human to cybernetic interfaces like I described in the last piece are probably a long ways off.
But if we are to take Glass at face value, and if we are to acknowledge that this is a potential path (of which I believe there are many) for personal computing, then we should probably explore what the near future might bring.
Today, we refer to Glass and other potential products that might emerge like it as "wearable computing devices". I include devices such as smart watches like the rumored "iWatch" and other wrist-mounted computing devices in this category as well.
I have a better term for this that I think might be catchy. Glass is a Cybernetic Headband, or a "Cyband" for short.
Today, Glass is the only Cyband on the market. But there could be others.
Google is attempting to set a standard with Glass by being the first product on the market. Sometimes, you succeed in that approach, and sometimes you fail. The market and consumer response is what determines the end result.
What if ... instead of there being different, competing Cyband hardware with embedded OSes and their own application standards, we were to take a completely vendor-neutral approach? What if Cybands were simply just peripherals that talked wirelessly to smartphones and other computing devices using open standards?
First and foremost, I beleive there should be certain basic design principles and assumptions about what Cybands should be.
A Cyband should not be a standalone computing device. Google Glass violates this basic principle out of the box by running on a sophisticated, power-hungry SoC with a complex embedded OS, with large amounts of localized storage, which in turn requires a smartphone or a wireless network to provide the necessary cloud connectivity.
This is wasteful, not just on power consumption, but also computing resources, and adds a layer of complexity and security risk that is currently unnaceptable.
A Cyband should be a Bluetooth 4.0/wi-fi device that acts strictly as an external sensor network and human interface controls for another computing device, such as a smartphone, which in turn provides the application logic and presentation layer to the Cyband.
It should use a low-power microcontroller, such as an ARM Cortex M, to provide basic firmware and control logic, nothing more.
A correct implementation of a Cyband as I define this today would be the Pebble smartwatch, for example, even though its capabilities are limited. Something a bit closer to a full-capability, vendor-neutral Cyband might be the soon-to-be released m100 by Vuzix.
Sensors on a Cyband would include cameras, eye and hand gesture detection, microphones, GPS, accelerometers, gyroscopes, heartbeat/pulse monitors, pedometers, proximity detectors, and photocells, induction charging components, battery monitoring, signal monitoring (such as to determine Bluetooth or wi-fi signal health), as well as RFID tags for "Antiglass" policy enforcement.
A human feedback control would include the monocular display, touch sensor(s), and buttons, as well as audio playback, among others.
To tie all of this together, you would need a published, open standard for a Cyband communications API that could be adopted by anyone that produces smartphones, tablets, personal computers, and the OSes they run on.
This means that if you had a Cyband, you could use it interchangeably on systems that ran Android, iOS, Mac OS, and any variant of Windows. Each of these OSes could have "Cyband presentation and interaction modes" for applications running on those platforms.
Today, we have similar open specifications for networking, microphone input, and audio streaming with Bluetooth 4.0. The various operating systems implement their support differently, however it's pretty much a given that if you have a Bluetooth device that meets a certain minimum specification, it works with all OSes provided that they also meet those specifications and support all of the device's capabilities.
Such would be the same with Cybands. And because Cybands would essentially be Bluetooth headsets (and wristbands) on sensor and feedback steroids, any of the usual suspects, such as Plantronics, Logitech, SONY, LG, Jabra, Jawbone, Bose, and Sennheiser could make them, among the obvious others.
This would bring the cost of Cybands down to reasonable levels, and allow all of the application platforms that support augmented reality, lifelogging, and wearable computing to win (or lose) mindshare on their respective merits.
Do we need an open specification for Cybands? Talk back and let me know.