It is a long time I did not find any time to post something due to big amount of work ( I will not complain on that), so I decide to come back shortly with Kinect V2.
Kinect V2 SDK Beta is out for public so it is time now for those who did not get the chance to play with the sensor on the preview developer program to make a first dive. Ben lower (Kinect Program Manager at Microsoft) offers you a smart approach within a presentation
Check his video :
That is done. Build 2013 start on June 26 and Steve Balmer reveal the new Windows 8.1 preview version that will suppose to like. A lot of things has change and improved based on customer and developper feedback on previous version.
Microsoft formally unveiled Windows 8.1 to developers on Wednesday, with executives promising a “rapid release” schedule to keep the pace of new innovations coming.
For those who have read PCWorld’s hands-on of the Windows 8.1 preview, Microsoft’s announcements were nothing new. Executives confirmed the reworking of the Start menu, new boot-to-Desktop options, as well as a slew of updated apps that take advantage of Windows 8.1, which can be downloaded in preview form from preview.windows.com.
For Microsoft, the Build 2013 developer conference represents a chance to connect or reconnect with developers, luring them back to the Windows platform. Although Microsoft is nearing 100,000 Windows 8 apps, that still falls well short of the millions of apps that have been written for the Apple iOS and Google Android platforms.
See full article for more information
This year I will not be able to attend the TechDays 2013 in Paris as previous year but I will fowllow this event closely at my own rhythm and when I need and especially when I have time.
For those of you which are like me, far away from the live event you will have the possibility to follow this event as if you were on site but in your most comfortable place : Your sofar 🙂
To follow the live from the TechDays Tv :
A bit of history
More than 20 years ago, I get my first job as a HMI (Human Machine Interface) developer and designer in the industry world. My goal was to build touch user interface to control machinery devices in Pipes & Cable industry (already running under Windows 3.11 and C++). At this time touch technology was already there, present in devices purely dedicated to the industry. First technology I was using was based on a screen cover made of IR LED’s. Then few years after comes capacity and resistive touch screens. Could you imagine yourself 10 years ago interacting with your friend around a table responding to your touch and being able to collaborate on different content content?
If we look today, this is definitely not the touch technology which is new and important to note, simply because now it has been introduced worldwide to public, but more the way we are using it in our daily life. Apple has been of course a real actor to bring that technology to home but behind that Microsoft was working on the first version of Surface, bringing the technology to another level. With the touch technology, for not saying multi touch, we enter deeper in the NUI world which is in a permanent move. Touch is everywhere, multi touch is everywhere. Screens manufacturer have understand that they must be present in this world, start to implement touch on any screen and invest a lot and trying to be innovative at the same time ( Not that so easy I would say).
But wait a while, who says that touch can be only on screens? Actually it can be and it will be on any type of Surface.
For those who miss what could be the world, or what will be the world we are going to live, I drop you the link to the vision of Corning in a world of glass:
Touch is also being adapted for non-screen applications as well. For example, Microsoft is working on a touch interface called “skinput” that allows users to interact by tapping their own skin.
I think (hope I am not wrong and do not hesitate to correct me if I am ) that the Wii-Mote of Nintendo have shown the way of interaction with a simple remote control, and it has been the start of a lot of different ideas from different companies.
Gesture is the way to track user motions and translate those movements to instructions. Nintendo Wii and PlayStation Move motion gaming systems work through controller-based accelerometers and gyroscopes to sense tilting, rotation and acceleration. A more intuitive type of NUI is outfitted with a camera and software in the device that recognizes specific gestures and translates them to actions. Microsoft’s Kinect, for example, is a motion sensor for the Xbox 360 gaming console that allows users to interact through body motions, gestures and spoken commands. Kinect recognizes individual players’ bodies and voices. Gesture recognition can also be used to interact with computers.
The Kinect, and this is only my own opinion, is still consider by a majority like a toy to simply have fun interaction. Still some effort needs to be done to be converted to a real business added value. But I am sure it will come. They area actually some area where Kinect could bring some added value if we think for instance in medical sector where doctor’s hands, that once washed, must not touch any other surface to avoid bacteria’s in white rooms.
It’s a long time that I heard about speech recognition and I think, this technology is one of the most difficult one. Not only by the fact of translating word to action, but also by taking in account your voice variation and the learning curved. Let’s imagine a funny thing. You just finish installing at your home front door a voice recognition system device which replaces your traditional key lock or finger print device. You test that all works well and you are really happy that, once you pronounce your name or other word your door gets open by magic. Unfortunately few days after you get sick and try to get in your home in the same way but this time the system did not recognize you. Huston we have a problem. We start to see it coming on some smartphone or even the Kinect but we cannot say it is usable for having tried for instance on latest Iphone, more a gadget so far.
It allows users to guide a system through eye movements. I have recently seen on TV a broadcast showing a company which was monitoring with eyes tracking system on pilot customers, in which way their customer was selecting a product from the store, what they were looking at first and where customer’s eyes were placed most of the time. This type of analysis comes to help of the marketing team to arrange the way they were presenting products in the store.
For UX interaction with eye tracking, I will drop you to a nice article from UX magazine
Touch interaction on any support. It’s just the beginning
Few days ago I have been dropped to a place where Andy Wilson of Microsoft Research (initiator member of Surface V1) gives an interview of what could be the world of tomorrow in touch interaction. He is talking about our future kitchen, and the way we could interract with our home devices , but more generaly speeking on having touch projection on any support. Check the video and the prototype of what you could have integrated in your next buttons shirt.
The future will reserve a lot of more cool stuff but let’s step back on earth and dream presently what could be tomorrow.Some might be frighten, some others excited. There is so many to say in each of those technologies but my intention was not to write a novel but simply drop few words of it.
It reminds me all the time when I show to my kids an old video tape and they simply ask me:
“Daddy what’s that…”
Every geek or developper like me would like to keep informed of the latest developments with Surface.
That’s done, just got the info to my mail box today that Surface is available for pre-order today
starting at 9am Pacific Time on Surface.com. Get your order in today!
Surface is coming soon. Officially annouce ofr the 26th of October 2012. We are all impatient to get one and play with it, buidl great app with it, and more..
But before that ddo you have any idea of the long path before it comes to your door ?
Here is a nice article to gives you more need :
Before being able to order your application, the first mandatory requirement is to get all your application you have built that are installed on a device made for Surface must have a corresponding ApplicationName.xml which is used to register you application to Surface Shell. If you do not do the registration process for all your application, they will simply not be visible by the Launcher.
Let’s review briefly how an ApplicationName.xml looks like
From the sample application.xml file above, we will concentrate on the Title, Description, and ExecutablFile entries. As you can see there is no absolute path to physical executable file. The reason for this is that the application.xml file of each application resides in the installation folder of the deployed application.
How the application gets register to Surface shell then?
This operation is done by having a shortcut of that file copied to the %ProgramData%\Microsoft\Surface\v2.0 folder
After you have registered your Surface applications with Surface Shell, they appear in Launcher. By default, all registered applications display in Launcher in alphabetical order (by application title) from left to right.
Application ordering in launcher
By default, each application are organized in the Application Launcher in alphabetical order.
In order to organize application in the launcher the way you want it, there are two different approaches:
- Through the Surface configuration Editor
- Manually by editing the ApplicationOrder.XML
In this post I will describe the scenario we have used in our projects in order to bring some sample use of that ordering process in a flexible way.
Setting up the ApplicationOrder.XML File
Order of application is define by an xml file call ApplicationOrder, that if exist will be available in the %ProgramData%\Microsoft\Surface\v2.0 folder.
In the ApplicationOrder.xml file, you can specify one the two mode:
- The SpecificApps
- The AllApps
We will concentrate on the SpecificsApps in our scenario. The AllApps mode is a combination of SpecificsApps mode and all application registration.
Let’s create for our sample a first file dedicated for kids application for instance and let’s name it KidsOrderApp.xml:
In this file sample we can see that we have register and order 3 applications that will be displayed in the launcher from left to right, in the same order as in the xml file.
Let’s create now a second XML file dedicated to business users and we will name that file BuisinessOrderApp.xml
A flexible Launcher management approach
Now on what we just described you are going to say why the file is not named ApplicationOrder.xml?
You are right in that sense, but the approach that I would like to describe here is to show you the flexibility you can have by playing with different custom files based on your audience.
Let’s imagine the scenario where you want to get visible on the Surface Launcher some application at a certain time period and the others to another time period. The hard way would be that you connect remotely to the unit and then change files you want to see.
A better scenario you can use such file is to use the company domain policies to publish those files automatically. Sure for that approach you need, or your customers need to get the device as part of the company domain.
Once the device is part of the domain you can easily define different scripts which then deploy the corresponding file KidsOrderApp.xml or BusinessOrderApp.xml at the proper time.
The KidsOrderApp.xml could be deploy from 3 PM to 6 PM into an hotel lobby
– The businesOrderApp.xml could be deploy from 8AM to 4AM and 6PM to 7AM
You can then have a vb script file which does following operation:
– Rename the corresponding file to ApplicationOrder.xml
– Publish the file to the %ProgramData%\Microsoft\Surface\v2.0 folder of the device
– Optionally restart the device or wait for a new session start on the device.
The vb script file will be executed in the respective domain policy rule suitable to cover the need.
I hope that this small post on the approach to ordering application and deploy custom scenario brings you more deployment flexibility. A simple thing that when use efficiently can save your time.