There were a lot of announcements at MIX this year! I’d really encourage you to watch the day 1 keynote and day 2 keynote videos, but if you don’t have time here’s a visual summary of the key headlines…
Day 1 Keynote, Dean Hachamovitch, Scott Guthrie
SVG animated movie in IE9
Hotmail jumplist and live icon using IE9
There were many demos of HTML5 sites – for example pinning Hotmail to the Windows 7 taskbar gives you a cool new mail notification. There was also a great SVG demo where an entire animated movie was rendered live in SVG showing that SVG in IE9 is fast enough to do some awesome things! Dean also defended the decision for IE9 not to support XP, a ten year old operating system that shipped with IE6. Windows 7 usage is now exceeding XP deployment in many countries including the US.
Then there was an announcement that the Platform Preview for IE10 is now available. IE10 improves performance even more over IE9 and adds new CSS3 features. The test drive site has been updated to show the new features and show how improved implementations of the standards have been achieved. The new updated fishbowl looks really nice and really shows off the performance differences between the browsers.
Updated Fishbowl demo running in IE10
Steven Sinofsky also demoed a new laptop from Samsung which some are dubbing the “MacBook Air killer”. Click the picture for details.
Samsung 9 series laptop
Next up was Scott Guthrie talking about server technologies such as ASP.NET MVC3 Tools Update. Open source integration was a major emphasis this time, and the tools update brings important developer features such as HTML5 project templates and support for jQuery 1.5 and Modernizr. Modernizr is a cool open source technology to allow you to write applications using HTML5 but have them render in older browsers that don’t support HTML5.
There was then a really cool demo of “Code First” by Scott Hanselman, where he typed the definition of some POCOs (Plain Old CLR Objects), then using the new NuGet Open Source Library Plugin for Visual Studio 2010, installed SQL Server Compact edition and generated a database and tables automatically for the POCOs.
Installing SQL Compact Edition with NuGet.
Automatically Generated tables in SQL Server
Scott also announced that Microsoft is contributing to Orchard, which is an Open Source project that allows developers to easily integrate CMS and Blog functionality into ASP.NET sites. There was a really stunning demo of building a Florists web site from scratch. First he picked a theme for the website, then added Amazon purchasing functionality and an Amazon shopping cart. This integrates tightly with the Amazon buying experience and used all the familiar Amazon dialogs. He also added Blogging functionality for user feedback.
A Florists web site built from scratch with Orchard templates and fully working Amazon integration for purchasing
Scott then changed gear and talked about Windows Azure. There are some great tools from vendors such as Umbraco that allow you to build Azure hosted websites that cope really well with peaky web traffic such as the Take That website which shows a lot of activity when the band is on tour and fits well to the Azure model.
Take That runs on Azure
MIX11 Day 2 Keynote, Scott Guthrie, Joe Belfiore
Day 2 was all about Windows Phone 7 and Silverlight. First off was a great video from a keen community member Brandon Foy who made his own Windows Phone 7 advertisement and posted it on YouTube.
Windows Phone 7 fan homemade video.
Joe then gave a review of what was delaying the “NoDo” Cut & Paste update for Windows Phone 7. There have been many difficulties getting this update out, but we think we have learnt from the exercise and can avoid the issues in future.
The major part of the talk was devoted to talking about “Mango” which is the next update for Windows Phone 7, expected in the fall of this year. Mango adds new features which increase the opportunity for developers to make money developing applications. Gartner and IDC have both predicted that by 2015 Windows Phone 7 will be the second largest Smartphone ecosystem in the world, helped by the Nokia deal. Marco Argenti from Nokia came on stage to emphasise Nokia’s commitment to WP7. Nokia want to bring mobile billing for apps to the party.
Marco Argenti from Nokia on stage talking about WP7
Mango will support 16 new languages and will allow developers in more countries to submit applications.
Mango improves discoverability of apps and offers new integration points for developers.
List of apps in Mango has Jumplist support and search
Marketplace has been improved and will be a fully “pivot”ed experience so if you are looking for an app you don’t get music tracks that match your search (yay!). It also shows more metadata and will support podcasts.
New pivot view in Marketplace (note the manicure)
In Mango Apps are highlighted in Bing searches on the phone so that if you are searching for video for example, related video apps are shown in “Search Extras” and you can deeplink into the video you were searching for into the app. This gives developers more opportunities for integration on the phone and allows greater discoverablity.
HTML5 Music web site also playing audio in Mango IE9
HTML5 will support background audio from web sites so they can play audio without being in the foreground.
HTML5 video tag playing H.264 in IE9 in Mango
Head to head performance comparison of iPhone 4 (left) WP7 (centre) and Google Nexus (right)
Joe then listed a whole bunch of developer enhancements coming to Mango such as the ability to update live tiles without using push from a server, multiple live tiles per application and even a SQL database on the phone for storing data. Also better sensor access to things like camera, compass and gyro. Also announced was that Skype will be coming to WP7 in the fall.
Skype comes to WP7 in the fall
Scanning a book barcode from Amazon app using new camera access in Mango
Augmented reality of Tweets using Gyro and Compass access in Mango
Spotify comes to WP7 in the fall and will use background audio feature.
Angry Birds is coming to WP7 May 25th
Fast App switching in Mango
Joe then demoed a Quantas application that takes advantage of many of the new Mango features including Live Agents which are tasks that run in the background. The app has multiple live tiles that update according to the status of your flight and even check your location and if you are too far from the airport at a given time, start giving you popup alarms and warning you that you are not going to make the flight. It can than manage this situation and the app starts offering later flights.
Quantas app updating flight information and using your current location to help you catch your flight
Mango tools will be available next month. Scott Guthrie came on stage to talk about them.
New development tools have accelerometer and location emulation
The new tools will be free and include a new performance analyser that can identify hotspots in your app and show memory usage and what is holding onto memory. The way this works is very cool, in that it identifies the exact lines of code causing the issue and lets you navigate directly to the offending lines in your source code.
Windows Phone 7 Performance analysis jumping to poorly performing source code
Mango also brings many platform performance improvements that will come to apps for free, as it is the system code that has been optimised. This includes ListBox scrolling and deferring image decoding to a background thread to make the UI thread more responsive. Also the system code has been optimised to use 25-30% less memory.
WP7 platform performance improvements showing defered image decoding making UI responsive using 30% less memory
As mentioned earlier, Mango includes support for SQL CE and querying the database with Linq. This makes offline applications that want to index data much easier to write. There’s also IP Socket support, which is the same as the support in .NET, so it is very easy to port your code. There was also a demo of Kik messenger for WP7.
Depositing a cheque into your bank account using the camera API on WP7
You can now mix Silverlight and XNA into the same app and Scott demoed a Silverlight app that used XNA surfaces.
Mixed app: The 3D model is interactive XNA and the buttons are Silverlight
Silverlight 5 for PC browser
Silverlight 5 includes some great features for media:
- Hardware video decode as well as rendering (netbook can play 1080p)
- IE9 hardware graphics experience in Silverlight. Can be mixed with HTML5
- Trick play (fast play with pitch correction for audio)
- Remote control support
The US Navy Blue Angels site uses a mixture of HTML5 and Silverlight to provide a really rich and stunning experience
HTML5 video tag used as background to the site. Note alpha blended Silverlight UI elements.
Silverlight 5 now support 3D using the XNA APIs and John Papa showed a demo of building a house. The app maps 2D coordinates into 3D space allowing 2D elements to be projected onto the 3D surfaces and track as the 3D model is rotated interactively. The performance is really great with hardware acceleration.
Silverlight 5 3D interactive XNA model with 2D elements mapped onto the surfaces
Binding debugging in Silverlight 5
Silverlight 5 beta, VS developer tools, Blend beta are all available for download now.
Kinect SDK for Windows
Kinect is the fastest selling electronics device in history with over 10 million sold! The Kinect SDK for Windows will be available later this spring and offers a full .NET API for programming against Kinect.
Programming against Kinect is easy with the KinectNET APIs
Kinect drivable lounge chair!
The source code for this chair and a component list will be available for download next month.
Kinect controlled Microsoft Worldwide Telescope
Kinect for the Visually Impaired
Written by Paul Tallett