Yesterday I had the pleasure of attending Microsoft’s Dev Day event, hosted at the Atlantic Imbizo conference centre in Cape Town.

Our speakers for the day were the incredibly engaging Robert Maclean (@rmaclean), a Microsoft MVP of the year award winner, and Dave Russell (@DaveMSDevSA), a Microsoft product evangelist and spokesperson.

Photo 2015-03-17, 18 19 40The day started with an early mornigng huddle around the coffee bar as 200+ attendees began to filter in the conference centre. It was a great opportunity to meet and catch up with other fellow developers and industry folks, and hear what it was that brought them to Microsoft Dev Day (a common reason seemed to be that it was a good chance to get out the office for the day, but I’m pretty sure they were just holding back the excitement of hearing more about C# 6.0 and watch copying and pasting into command prompt in action!).

The first introductory session started just shortly before 9:30, led by Dave Russell, where he introduced himself and his co-speaking partner, Robert Maclean, and gave us the agenda for the day and the various topics they would be covering.

The agenda for the day.

The agenda for the day.

The Keynote

The first keynote was a re-introduction to Microsoft’s latest upcoming OS release, Windows 10.

Windows 10’s ambition is to be a universal operating system that runs on all their connected devices. You’ll find it on your desktop (of course), on your Surface tablets, on your Windows smartphones, on your Xbox One gaming console, and even on their pretty ambitious Holographic hardware! (not to also forget on the Raspberry Pi 2, for you techno wizard alchemists out there)

Dave then give us a live demo of Windows 10 itself, showing us the pretty beefed up Start Menu which, truth be told coming from a Mac user, looks pretty decent and clean. I had spent a little time with Windows 8 myself, and I think they definitely made the right choice here ditching that infamous ‘start page’ in favour of the traditional menu, and I think they feel the same too.

Windows 10 also features Cortana, their personal OS voice assistant, who entertained us with some song and good humor on command but sadly will not be supported in South Africa territories just yet. Training Cortana to understand our lekker dialect seems to be tricky for the folks at Redmond, but hopefully she arrives sooner than later!

The next demoed feature was creating multiple desktops (as a Mac user, this is GREAT news for Windows). Now you can easily manage your workspaces and switch between them with ease. Once you play around with it, it’s incredibly valuable!


Goodbye Internet Explorer, Hello Spartan

It’s no secret. Internet Explorer is the kid that gets picked last for the dodgeball teams. And Microsoft know this. Years of marketing and new features haven’t seemed to have the hearts as much as they hoped, and the truth is, it was never going to be easy. Internet Explorer has a long history and with a long history comes the need to continually support all those previous versions. This unfortunately have left Internet Explorer to be in a bit of an unfavored place, with what people feel is a bloated and outdated browser which is struggling to keep current.

Microsoft decided that it was time to clean the slate, and introduced Spartan to the world.

Spartan is a whole new browser experience built from the ground up. It will be the primary web browser across all their Windows devices, and promises to bring the security that IE is well known for, as well as backwards and future compatibility without the baggage.

Can Spartan prove it’s place as a fully capable and worthy browser and win back some of the market? Time will tell…

One App, All Platforms

One App, All Platforms

One App, All Devices

Another big and ambitious thing about Windows 10, is their universal app development platform. The idea here is to create 1 app, with 1 shared codebase, which can then be deployed on all Windows 10 devices. No longer do you need to make 2 different builds to create an app for Windows Desktop and Windows Phone. Now it will be just one universal app, whether you wish to build for desktop, phone, tablet or Xbox, it will be easier than ever.

There is of course some technical wizardry and some new methodology behind all this convenience. You will have a ‘Shared Project’ for you common code between devices, and then you can use PCL for sharing binaries across multiple solutions, and then able to create Conditional Blocks of Partial Classes to make device specific calls.

To prove it wasn’t all just hocus pocus, Dale did a live demo of a quick barcode scanner project he whipped up in C# and with a quick change of the build target, we saw it run on both Windows Phone and on the desktop!

It sounds amazing, and I’m sure it is! Having to write less code to do more is always a win in my books!

The vision for .NET

The vision for .NET

Future of the .NET Framework

We then got a glimpse into Microsofts vision for the future of the .NET framework.

The guiding lights for this future is around,

  • .NET Innovation (for existing and future applications)
  • Flexibility and Agile delivery (contiuous modular releases)
  • and Openness (transparent, open and community driven)

To get this future, they have amped up the frameworks with .NET Framework 4.6 and .NET Core 5 (for Windows 10 applications, and support for Mac and Linux).

One Compiler to Rule Them

One Compiler to Rule Them

One Compiler to Rule Them All

This couldn’t have been possible without an upgraded compiler platform, who is introduced to us as ‘Roslyn‘.

Roslyn‘ isn’t just a pretty name, but a pretty powerful new compiler. It is touted as the next generation of .NET compilers and has a bunch of new features and back of the box selling points, such as

  • Its written in C#, for C# (VB included)
  • API: open platform
  • Rich IDE experience/refactoring
  • Code analysis
  • Custom diagnostics
  • Open source

Microsoft are really going strong with the open source methodology, and is really encouraging the community to expand and drive the future of this new compiler. The project is hosted over at GitHub and everyone is free to contribute vote on new features where they can.

Microsoft are expecting big things from Roslyn, and hope for it to be your #1 compiler of choice for all platforms. Lets see if they can achieve that vision..

A lot to cover

Indeed there was!

Visual Studio 2015 – Improvements and New Features

There is a lot of new stuff being shipped with 2015, far more than the rest of the time we had left for, so Dave gave us a quick runthrough of some of the cooler things…

  • Single Sign-in

Single Sign-In continues to get improved upon, this time making your Azure Services and Window Store flows much more streamlined with less required sign-ins along the way.

  • VB Runtime Debugger

A pretty cool feature which was demo’d for VB was a runtime debugger. Here you can change XAML properties on the fly and see the changes in real-time as you do them. Pretty cool and powerful no doubt for visual development!

  • Diagnostics and Timeline Tools

This was also another cool little feature where you can see a timeline of processes while your app is running, and take snapshots of diagnostic data various points during it’s runtime. Great for analysing performance issues in your WPF and Windows 8.1 applications.

  • Upgraded CodeLens

CodeLens is pretty cool in 2015. Above, what looks like, any method in your project you can quickly bring up some additional information about that piece of code, notable a history of changes and commits. Very handy to quickly who changed what and when.

  • Code Editing Productivity

2015 introduces effortless one-click advanced code refactoring, inline lightbulbs, and live code analysis. If you’re a fan of RESharper, I think you’ll love this.

  • New Debugging Experiences

Some improvements on the debugging side of things, including

  • more intuitive breakpoint settings
  • Setting breakpoints on auto-implemented properties
  • better Lambda debugging support
  • and more

Some Advanced Features

Some notable mentions in the advanced features side, include

  • Smart Unit Tets
    • Automatically generate unit tests for all code paths
    • Keep your tests in sync with your code changes automatically
  • Improved CodeLense
    • AppInsights indicators
    • Team activity view
    • Dark theme support
    • improved navigation and usability
  • Improved Load testing
    • Use the power of the cloud to help load test your apps


And that wrapped up the keynote!

There was a lot of information and interesting talk in that 1 hour. We got a glimpse of the Windows 10 preview, and that shiny goodness thats coming our way there, saw Microsofts vision for the future of the .NET framework (openness, innovative, and agile!), and then saw some new features in Visual Studio 2015 in action!

The rest of the talks were just as interested, as they dived deeper into applying DevOps into your organization, the magic of Azure Machine Learning, and live demo’s of new C# 6.0 features. Far too much to fit into this post.. maybe I might do another. :)

If you’re keen on some of the diving more into what has been mentioned above, feel free to…

If you have any other questions, be sure to reach out to me! I can try see what else I managed to scribble down in my notes which I might have missed here. :)