Microsoft Surface is an impressive execution of multi-touch HCI concept. In particularly, they've extended the idea to embrace not just fingers but objects to the repertoire of interaction.
However, I can see several issues that prevents surface computering from being practical for personal and general uses.
- Internal camera provides object identification and location info but it's too bulky.
- Flat horizontal viewing-angle could be too stressful for prolonged use and for reading detailed info which means, even in retail setting, information will have to be provided in paper form. Inclined viewing-angle is more comfortable but not for reading.
- Traditional laptop designs will tend to tip over. Tablets are better but tablet's are typically held in one hand into inclined position so two-handed multi-touch will be less handy.
- I've yet to see several multi-touch applications running simultaneously and I suspect windows metaphor as-is will be confusing for multi-touch use, particularly when mixed with multi-touch's tendency to use 'real objects'.
- Multi-touch enabling legacy applications will be difficult to say the least.
Given these and other issues, it's undersandable why Microsoft Surface is being initially targeted to be used in retail and casino settings. Both settings use a handful of domain-specific hand-integrated applications. In contrast, personal computers support open set of applications integrated through general window-based GUI support. But then where would we engineers be without problems? ;-p