Microsoft Surface Video: Touchscreen, Multi Touch Coffee Table…and parallel programming!
Thomas Menguy | June 6, 2007Checkout this amazing Video from : Microsoft Surface Video – Touchscreen, Multi Touch Coffee Table – Behind the Scenes – Popular Mechanics
Ok, it not new, but really not so far from production
Diagram by Intoaroute
(1) Screen: A diffuser turns the Surface’s acrylic tabletop into a large horizontal “multitouch” screen, capable of processing multiple inputs from multiple users. The Surface can also recognize objects by their shapes or by reading coded “domino” tags. | (2) Infrared: Surface’s “machine vision” operates in the near-infrared spectrum, using an 850-nanometer-wavelength LED light source aimed at the screen. When objects touch the tabletop, the light reflects back and is picked up by multiple infrared cameras with a net resolution of 1280 x 960. |
(3) CPU: Surface uses many of the same components found in everyday desktop computers : a Core 2 Duo processor, 2GB of RAM and a 256MB graphics card. Wireless communication with devices on the surface is handled using WiFi and Bluetooth antennas (future versions may incorporate RFID or Near Field Communications). The underlying operating system is a modified version of Microsoft Vista. | (4) Projector: Microsoft’s Surface uses the same DLP light engine found in many rear-projection HDTVs. The footprint of the visible light screen, at 1024 x 768 pixels, is actually smaller than the invisible overlapping infrared projection to allow for better recognition at the edges of the screen. |
Something that really buzz me about those new kind of interfaces is obviously the “home” and “personal” application and services, but I see also some possible tremendous change for the software development : with the raise of multi-core, parallel programming will be mandatory, and to leverage this horsepower, a paradigm shift is needed, to break the C/C++/C#/php/ruby, etc sequential view. And this new paradigm may be graphical programming. See this LabView/QNX article or this one at DevX:
The U.S. government, through DARPA, had previously awarded contracts to proposals for High-Productivity Computing Systems. A major premise of this thrust is that the performance of computers is outstripping our ability to harness the power through programming. It is logical to conclude that we need better methods to program them, and DARPA had funded three research languages. All three programming languages are textual X10, Chapel, and Fortress. It seems that the research has run its course, and the answer is that the breakthrough opportunities fall short of the grand hope of catching up with computers. This just makes me wonder all the more if a graphical approach will ultimately be an avenue for a programming breakthrough.
Technologies like those multi-touch screen may bring a lot to the developer ability to dig and build his system….and it is needed: look how poor are the current graphical languages in the “graphical” and above all the user interaction aspect: (below a LabView screenshot)