Belgians at //Build 2015 - Summary from Day 2

"There's a new Microsoft in town... And I like it!"  

 Yesterday, Bart Lannoeye wrote a great overview of what was announced in the keynote on the first day, today it's my turn to follow in his footsteps. 

The first thing we noticed when we were trying to enter the keynote room was exactly the same as yesterday: lines.  Huge lines. Oh, wait, now the line moves to another floor - that must be it, right?  Ah no, wait, more lines.  And more.  Surprisingly enough, the lines move fast - say it took about 15 minutes, all-in, before we were seated.  Needless to say:  BUILD is big. 

The stage was taken up by a DJ - the best way I can describe what I saw is that he was using a see-through screen on which he could write, manipulate and mix his tunes.  Turns out it's Smithson Martin's Emulator (Elite):  https://smithsonmartin.com/products/emulator-elite/ - pretty fancy stuff.

After that, the keynote started, and we were treated to a nice video with some testimonials of well-known names (think Github, Salesforce, Acumatica, …) - names you might not have associated with MS in the past, but that are now full of compliments regarding MS.

There's Surfaces, Macs, Windows Phones, iPhones, Android phones, … on stage. 

It takes a very confident company with a great offering to get away with that. And that's exactly what Microsoft is these days - these jokes, these testimonials, the fact that we can now run almost everything in every way on any device , regardless of language, …  it works.  It makes sense. 

The closed, .NET-only days are over.  It's clear that this is a new Microsoft.  

 

Steven Guggenheimer and John Shewchuck took the stage, and set the tone for the keynote: today is all about developer conversations.

Entertainment and media apps were first.  We saw The Root's Questlove drum, with fancy sticks in mid-air.  The movements are captured and processed in a Windows 10 app through the new Audio Graph API. 

Commercial apps were up next.  We got to see an Autodesk 3D printing demo, followed by one of those true Line of Business apps we all love (or love to hate, the jury is still out on that one): Acumatica's ERP system.  Thing is, through OData, they’re now able to export the data from that system right into Excel, or make it available to other apps.  All of that happens with a GUI that allows dynamically joining datasets, resulting in exactly the data that might be needed to integrate this system’s data into other apps.  What I liked most about this is that they were using the OData standard for this: it's not just a RESTful API - it's a standardized one, which ensures almost all other applications can integrate with this – and know how to achieve that.

Up next, a huge part on Building for Windows 10

 A few bullet points:

  • Design & develop: one design language & control set across all windows devices.  One API, one package.  More than 2500 new platform features are made available to us. 
  • Debug: Visual Studio 2015 introduces live visual debugging, and live performance issue tracking in the debugger. 
  • Distribute: rather than going through different app submissions for different devices, you simply submit your app once to the store, and (if you want it to be) it's available across all Windows 10 devices - including the Surface Hub and HoloLens.

Microsoft also introduced 4 Universal App bridges, designed to integrate existing code bases into Universal apps that run on all Windows 10 devices. 

  • Web: we can now package web apps, and extend then with Windows 10 platform-specific features.  The demo we saw was an in-browser flight action game, repackaged as a universal app and extended with Xbox Live achievements.
  • NET & Win32 (WPF, WinForms, Win32) applications can also be repackaged and extended.
  • Likewise for Android apps  (Project Astoria - https://dev.windows.com/en-US/uwp-bridges/project-astoria), and for iOS apps: opening horrendous Objective C code in Visual Studio, extending it, building and running it is now a reality.  If someone had told us that 2 years ago, no-one would have taken that guy/girl seriously.

These bridges are all about code reuse.  You'll often want to make some changes or you might be required to - in a later session, we learned that Android apps will typically work after a recompile, but iOS apps require a few code changes.  The principle does give you a head start, and it fits the new Microsoft philosophy: "no matter where your code is or what language it's written in, we'll make sure you can run it".

Up next: Cross-platform

This part focussed on Cordova, but there was nothing really new here as far as Cordova itself was concerned.  However, there were a few nice announcements:

Data and the intelligent Cloud

Joseph Sirosh took the stage for what, in my opinion, was the best part of this keynote - all about Big Data, Azure & Machine Learning.  These are things we tend not to come into contact with a lot in our day to day developer lives, but they're all the more inspiring.

Joseph told us a few stories about how Azure can help with retrospective analytics, real-time analytics, predictive analytics and Intelligent SaaS apps. There's one I'd like to point out here: the story of the connected cow.  

Yes, you read that right.  Connected... Cow..

There's a problem that's keeping farmers awake and frustrated: knowing when their cows are in heat, so they can artificially inseminate them.  Turns out it isn't that easy to notice (have you? I haven’t), and they also tend to be in heat more at night, when humans tend to sleep. 

So, what happened?  They connected a sensor to the cow's legs, and started measuring the steps the cows took.  From that, they learned that there's a correlation between how many steps a cow takes and when it's in heat.  Add in an alarm system to send a notification to the farmer to wake him up in time, and the successful insemination rate skyrockets.  What's more, through machine learning they not only learned when to inseminate a cow, but also the exact timeframe for insemination, depending on whether you want to end up with a male or female cow.

To quote Joseph: "we're now using AI for AI - Artificial Intelligence for Artificial Insemination".

This graph says it all: https://twitter.com/bartlannoeye/status/593823028061966336/photo/1  

More information can be found at https://azure.microsoft.com/en-us/services/machine-learning/

Gaming

Anyone heard of Final Fantasy? :)  Microsoft collaborated with Square Enix for this part of the keynote.  We got to see a video rendering (DirectX 11).  Then, we got to see another video rendering (DirectX 12).  Or at least that's what I thought.  Turns out that last one wasn't a pre-rendered video at all - it's live, and the amount of detail is staggering.  Have look at this: https://www.youtube.com/watch?v=e1mwhdYZvSE

Lastly, a Minecraft modder was invited on stage to show off the new Minecraft modding tool in Visual Studio https://t.co/LVFv1qYhxO . I don't play that game, but I do know it was written in Java.  The logical conclusion: a Minecraft modding tool for Visual Studio, wouldn't that require… nah, can't be. 

…queue 2 minutes… 

Was that full Intellisense-enabled Java code in Visual Studio?  Indeed it was.

To summarize: this keynote was one no-one would have expected 2 years ago.  There's a new Microsoft in town. This keynote proved that. And I like it.

 

Kevin Dockx works at RealDolmen, one of Belgium's biggest ICT companies, as a solution architect focussed on mobile.  He mainly works on .NET applications, often XAML-based. His current focus: cross-platform mobile applications & security. Check out his blog