Mix 10 Impressions – Keynote Day 1
Walking into the Mix 10 keynote, it felt nice to be among the core Microsoft developer community. Scott Gu was speaking on stage and I felt a sense of camaraderie with the audience.
Although the theme of the day is “Windows Phone”, the keynote started with a demo of the EBay Silverlight application. EBay was on stage to demonstrate how easy it was to download Silverlight and get their application up and running. The installation was lightning quick and in seconds, the application was deployed to the desktop. The user interface was very slick and useable. Interestingly, it was created from freehand sketches that were imported directly into Expression Blend 4. The sketches were then transformed into a pixel perfect UI through a design process that certainly must have involved a tablet PC. The main asset in this process is definitely artistic talent, which many programmers lack. A graphics designer is required and not just any graphics designer - a graphics designer that specializes in XAML and Expression Blend.
This is where I start thinking about the cost of development of Silverlight Apps and XAML apps in general. Our competitive advantage is in being more productive than our competition, taking less time to produce higher quality results. Delegating design to designers and code to coders is great in theory, but in practice, unless a company has the resources and sufficiently high-budget projects, it is hard for a small company to convey value and stay competitive.
Like most developers, I am technical first and artistic second; however, combining the two skills, it is possible to be highly productive and deliver exceptional value to a client. There are many operational efficiencies in working alone. This is where the cost of the design and development process with Blend and Visual Studio is hard to justify from a business perspective when the MVC, JQuery, HTML, and CSS stack is a viable alternative.
On the topic of the new Windows phone, Joe Belfiore was on stage demonstrating the new capabilities of the Windows Mobile 7 platform. The platform is very developer friendly, as is the custom with Microsoft platforms and it runs Silverlight 4. The standardized hardware platform also makes testing easier with just two screen resolutions to take into account – portrait and landscape modes. The phone device emulator looks robust, even dropping calls and simulating running out of batteries.
Scott Gu ran the development based Silverlight development demo. He is just so good at disseminating information and his presentation is always very effective, concise, and easy to follow. I identify with his development first approach and it is usually how I prefer to work. I find that writing XAML freehand is cleaner because it produces the most readable markup, with the least amount of unnecessary attributes on all of the page elements. I can also encapsulate the controls more easily.
Jon Harris was up next running the design-based approach. In this demo, Expression Blend 4 was the center of the process with designers working in Photoshop producing the graphical resources and developers working in Visual Studio developing the data models. The “User Experience Integrator” (the job role of the team member using Blend) sits square in the middle of the development process, ensuring adherence to the Model-View-ViewModel (MVVM) pattern. All the cross-team interaction would really require the Blend user to know development, have artistic talent, and act as a cross team liaison. It is a definitely tall order for a single individual.
After the Mobile 7 Silverlight development walkthroughs, a few mobile phone applications were demo-ed.
· Netflix – looking good! As good as the Xbox-Live version.
· Graphic.ly – a comic book reader
· Foursquare – a social networking app that uses phone geo-positioning
· Marionette – a phone camera application that works with pictures. A picture can be super-imposed on a puppet body and utilizing the accelerometer, the puppet with a picture of Bruce Willis’ face was shaken up to the amusement of the audience
· Seesmic – a social network aggregator
What I like about the phone is the pluggable API architecture. By implementing a certain interfaces, an application can identify itself to the phone as a service provider. For instance, implementing the interface to be a “picture provider” tells the phone the application is able to process images from the camera. Not to mention, the applications built for the phone are developed using Silverlight, which also runs on other platforms such as Mac, Xbox, and Zune.
The best part of the keynote was next. Scott Gu brought out a remote-controlled robotic cannon on wheels. Using the phone’s touch screen he guided the robot around the stage. Tilting the phone caused the turret to swivel and he proceeded to fire out t-shirts into the audience. I wonder who has the job to interface with the robot’s hardware API. That would be a very fun project. J