BUILD 2015 – day 3

BUILD is officially over. It was a great week with lots of news and exciting technology. From a Windows perspective – the two things that really stood out were:

  • Welcome to Windows
    • Not one but four new ways of packaging apps as Windows 10 apps; web apps, .net/win32-apps, Android apps and iOS apps. Welcome.
  • One app – one binary
    • On all Windows 10 devices, cool. This also calls for heavy use of feature detection, as opposed to platform checks. Learn it, love it, use it.

You haven’t missed our recaps from BUILD day 1 and BUILD day 2 right? The detailed reader will notice that our co-author Peo is not in on this post – that is because he got in on the 4½ hour HoloLens Academy coding session on the last day – those adventures will be told another day…

Here are our impressions from the last day.

Go Mobile with C#, Visual Studio and Xamarin (3-770)

Fast paced and entertaining story about developing a cross-platform app for iOS and Android (and their respective watches) with web-scale backend and lots of code sharing.

Scratches the surface of a lot of things, shows off Xamarin Test Cloud and Xamarin Inspector.

Not a lot of code. Almost half the session goes into talking about the idea and showing the result.

If nothing else watch it for the entertainment value, these are two aspiring comedians.

The “Project Spartan” Rendering Engine That Makes the Web Just Work (3-682)

Session basically showing new standard stuff supported on Edge that was not supported on IE. Only interesting if your knowledge of the latest standards is limited by ”what IE supports”

A bit of background for why IE was getting messy (no, really…)

Advice: do feature detection instead of user agent sniffing.

IE had to support –webkit css transistions, because websites were not up to date.

Very cool 3D demo with babylon.js, web-gl and gamepad including spatial sound effects and the tomb of clippy AND IE8. Also showing the flight arcade demo from the keynote

Using Babylon sound to do cool stuff with sound as well.

Introducing @supports css rule to do feature detection in css instead of javascript

Showing srcset on <img /> tags to choose image based on resolution

Case Studies of HoloLens App Development (2-744)

Panels discussion: 4 people with experiences developing for Hololens share experiences: Nasa, Trimble, University of Cleveland, Microsoft

People can ask questions via text

Nasa motivations: We are about exploring and sharing the journey. Will be using it in mission operations for Mars. This allows us to engage with people in new ways. People will be able to “be there with us”. Enable the next “Appollo moment”. We’ve seen several people brought tears from the overwhelming experience of actually being on Mars.

Regarding user interactions. Challenge: most assumptions made in advance were wrong. Opportunity: everything has to be redefined with no existing rules or limitations.

Trimble: Architect (real architect!) In the building industry we need a way to show ideas, collaborate and communicate to the building site. Holograms is a complete revolution. No tears though, construction people are tough people ;)

Education: trying this technology has completely changed my world. This is as revolutionary as the first mri-scanner.

Development is incredibly simple.

In general they all seem to find it difficult to find words to express how big of a revolution the Hololens is.

Regarding availability: sign up to windows insider program. Information will come out “over the next period of time”.

What’s New in C# 6 and Visual Basic 14 (3-711)

Good, fast paced session with the new language features and new tooling support in VS. The cool new stuff includes; new refactorings, immutable arrays, expressions bodies, interpreted strings, nameof( x ), exception filters, await in try/catch/finally and full lambda support in the immediate and watch windows.

Moving to the Universal Windows Platform: Porting an App from Windows 8.1 XAML or Windows Phone Silverlight to Windows 10 (3-741)

Very good overview of what situations you might be coming from (single SL81-app, single 81-app, Universal app with two heads etc) and the strategy choices you have. One way of doing a migration, which was one of the recommended ones, is to:

  • Create a new UWP app in the same solution (keep the old ones for maintenance)
  • Copy the code over
  • Add the references you need
  • Modify the manifest (add capabilities, backgound tasks etc)

Please keep in mind that phone != mobile! You must be ready for small phone-like screens that are not on phones Smile While porting there will be both build breaks, runtime breaks and UX breaks – this session covers the most common ones and how to solve them. Breaks covered included settings menu (UX), missing styles (runtime), extension SDKs/back button (build). E.g. the back button should no longer be handled by the phone APIs BackButtonPressed, instead the universal concept of BackRequested should be used.

New XAML Tools in Visual Studio 2015 (2-697)

A session focused on Blend – what’s not to love! In VS, the XAML editor has been rewritten in Roslyn and is completely decoupled from the designer, if the designer hangs, the XAML editor should keep on running. Some new XAML features include peek into code and regions. Blend has also had a big rewrite, now using much more technology from VS, is no longer the farmland cousin with missing features, but still has it’s unique capabilities. Workspaces has been brought over from VS, the ability to save custom window layouts – useful for e.g. one animation view and one layout view. Auto-reload has been implemented to really support parallell development in Visual Studio and Blend. The Visual Tree inspector is a big one, and it can drill down into your bindings while debugging, to really see what data is in those data contexts.


Thanks for reading! We hope you’ve gained some insights – and have gotten some pointers on what to watch.

Leave a Reply