In light of the current COVID-19 pandemic, Microsoft has transformed this year’s Build conference into a 48-hour online event, accessible to everyone! Within this blogpost, we will look back at the first day of Microsoft Build 2020 and get you up to date with the most important announcements. Already know what happened on the first day, but curious what they announced the second day? Read everything about day 2 here!
Besides hosting this event online, the current pandemic also has an effect on the actual content presented during the conference, as much emphasis was also put on enabling the developers to be more collaborative and productive while working from home through advances in tools. Also, a large focus was put on integrating more AI.
We already knew that .NET 5 is going to be released later this year, but Microsoft surprised us yesterday with the announcement of .NET 6, which is planned for November 2021. Even though that date is still far from today, we know that it will there are big plans for Xamarin: both Xamarin.Forms and Xamarin will finally become first-class citizens in the .NET world, under the acronym MAUI, which stands for .NET Multi- platform App UI.
MAUI will introduce a new approach for developing apps in Visual Studio: by default, there will be a single project that will use multi-targeting to offer 100% customization. It will have support for MVVM, MVU and Blazor! MacOS and WPF will be officially supported (and Linux is also in the roadmap).
But the changes don’t stop there: the Xamarin team is currently considering architectural changes in the Xamarin.Forms framework that will make the codebase simpler and offer better performance. Moreover, Xamarin.Essentials will be part of the .NET APIs.
What will happen then to Xamarin.iOS and Xamarin.Android? Both will be embedded into the .NET APIs as well and they will become .NET for iOS and .NET for Android.
WinUI and Project Reunion
Another great announcement was made regarding UWP and Win32 API’s: Both kind of apps will be reunited under WinUI 3.0 and made available decoupled from the OS through tools like NuGet.
WinUI will have a very positive impact on the Windows Developer experience, which is currently fragmented in different UI frameworks. In Microsoft words, “WinUI will provide a state-of-the-art UX framework for every Windows developer”, meaning developers can build great user experiences that adapt and scale across devices. This can be applied when starting a new project, or when modernising an existing app.
As part of the announcements from yesterday, WinUI3 Preview 1 was made public, containing a lot of improvements and new features. We just need to be aware it is not production ready yet.
Blazor WebAssembly was finally released yesterday and it is production ready. This means full-stack web development in .NET is a reality!
Through Blazor WebAssembly, it will be possible to debug front-end and back-end code in the same IDE within Visual Studio, all in C#! Developers will also be able to debug Linux environments from Windows using Visual Studio, all this with the new embedded Linux capabilities from Windows. We believe this will definitely increase efficiency and ease the cross platform support! If you already have a traditional Blazor app, then migrating to WebAssembly is expected to be very easy.
Visual Studio Codespaces and Live Share
Yesterday, Microsoft also paid a lot of attention to remote working environments. First, Visual Studio Codespaces (formerly called Visual Studio Online) is now available: “with a single button, from GitHub, you can experience Visual Studio Code in the browser.” One of the biggest advantages of this is for projects that require complex environments: all settings and configurations, such as environment variables, can be defined in a file and committed to the repository. Furthermore, the developer experience is excellent due to Codespaces being able to pick up your themes, extensions and local configurations. Please be aware that not all workloads are available at this stage (mobile development is not) – but you can certainly debug localhost remotely. Awesome, right?
Yesterday Microsoft also presented new features for Live Share: Developers can now share sessions across Visual Studio Code and Visual Studio and have audio and text chat embedded, so no context switching is necessary anymore. We see tons of possibilities for this feature, not only for collaboration within a project, but also to be used for job interviews, at schools or to onboard new developers to complex codebases. As we value remote work very much, this feature will enable our colleagues to collaborate even more efficiently.
Attending the Remote Event
Like many events, Microsoft had to switch from their usual Seattle gathering to a full-remote event in only a matter of weeks. While this does decrease the network- and community factor the event usually brings, it also makes it more accessible to developers all around the world. There are so many sessions offered, one can sometimes feel lost in the extensiveness of it all. However, with this vast amount of different topics, any developer or designer ranging from student to senior can find something for them.
A lot of sessions were live-streamed or pre-recorded. The live streaming sessions allowed for Q&A sessions where the most liked questions were answered. The broadcast itself worked very well: you could easily pause the broadcast and continue it later without any technical difficulty.
While we think their approach is a great solution for the current situation, we hope in the future we can meet again in person to fully provide the focus and attention these sessions deserve.