.Net Conf 2020 Day 1 Summary

 Here is my summary of the session for day 1 of the .Net Conf 2020 day 1.  This is my notes from each of the session that attended.  



Full discloser, I am mainly focused on the Blazor Sessions.

Summary:

Overall the sessions were good.  Some were a little salesy for me, and some included things that will be in .Net 6.0 which seems out of place in the .Net 5.0 release conference.  I know most of the Blazor changes, posted here, but there were a few that are new.  The sessions on C# 9.0 and Open API were really good.  I will have a deeper post on just those changes.  

It is easy to see from my notes which session I really liked.

1. Key Note

  • The big announcement that .Net 5.0 was launching today!
  • Blazor now uses the .Net core CLR
  • They provided a nice list of Open Source Blazor packages
  • Bit Blazor web assembly performance change
  • gRPC has gotten a lot faster
  • Desktop - Added a Chrome-based browser control
  • Desktop - Click once is back
  • C# 9 - Records
  • Win forms now support 4k DPIs
  • The video of the Oscars was cool
  • List of improvements in Visual Studio
  • Code Spaces - Visual Studio in the cloud
  • Showcase "The Package", written in Blazor but a cool concept for a business
  • Blazor - can now target all the APIs, but use the browser analyzer to make sure you don't get runtime errors
  • Blazor - Add more render modes 
  • Blazor - new component "Virtualization". will only get and render data from a large collection that will be displayed on the view part of the browser
  • Blazor - Add a real-time refresh from Visual Studio (Nice!)
  • Blazor - IN Dan demo he showed using several different component libraries on a single page
  • You can use .Net 5.0 in App services starting today
  • Open API - Full Support, Swagger Support by default,  Swagger defaults to start page and support for ripple
  • Show an overview of Tye for microservices.  Interesting


2. .Net Foundation "State of the Foundation"

  • This was a membership drive and an overview of what the foundation does.
  • They were running late which made this session seem very hurried


3. What's new in C# 9.0

  • Excellent session
  • Good information
  • Good demos
  • Top Level Statements: You can put statements before your class definition and they will be executed
  • Support for immutable properties are now supported
    • property int temp { get; init }
  • Non-destructive Mutation -> Record
  • Record
    • Built-in ToString
    • Can use = and ==
    • Supports constructors
    • Can not inherit a record from a class
  • Showed new Switch patterns
  • Need to read the documentation on it.
  • Need to follow up with a separate blog post



4. Talk of Trialblazors: Blazor in .Net 5.0

  • Improved the development experience
    • I wrote about most of these in this blog post
    • Automatically adds CSS / JS from NuGet packages
    • Beter debug experience
    • Virtualization Component
    • Better support for Azure static web sites
    • Protected Browser Storage (client storage from server Blazor)
    • Render modes
    • Web Assembly lazy loading
    • JS isolation
  • Improved performance
    • Big time for web assembly
  • Filled in feature gaps
    • Input focus
    • File upload


5. Entity Framework Core 5.0: The next generation for data access

  • This session was mainly an overview of EF
  • Some features I did not know about
    • Shadow Properties
    • Projection
  • There is now a debug view of the SQL being generated
  • Better many to many handling
  • Inheritance now can be a single table or multiple tables
   

6. Morden web development with Blazor and .Net 5.0

  • This session was not what I was expecting.
  • Showed how to use Blazor as part of an MVC application.  It testing but not useful for me

7. Developing and deploying Microservices with Tye

  • This was an interesting session.
  • It is a cool tool, even though they said it was not ready
  • Did highlight that I am missing some knowledge on the enterprise level microservice with containers and Kerberos

8. Get to know .Net 5.0 SDK

  • This was a session on the updates for MSBuild and .Net build
  • Binary Log files was a cool feature, added in the UI is Blazor

9. .Net 5.0 runtime deep dive

  • Arm 64 vs. X 64
    • Memory Model
    • Different instruction set
    • Had to change optimizations
    • C# does allow you to get to the low-level access
    • Sounds like they made changes to support the faster Arm systems 
  • Apple releases new ARM
  • C# should just work on the new Apple
  • Support for HTTP 2, gRPC supports HTTP2
  • Preview support for HTTP 3
  • Improved the TCP performance

10. ML .Net in the real world

  • ML = Artificial Intelligence - getting computers to make predictions
  • Deep Learning - computer neural networks to think like a human
  • Python is big in ML
  • At Microsoft
    • Azure Cognitive Services
    • Azure Machine learning
    • WinML
    • ML.Net
  • ML.Net is what Microsoft uses
    • Built for .Net development
    • AutoML
    • Model Builder
  • What can you do with ML
    • Classification
    • Regression
    • Forecasting
    • Anomaly Detection
    • Ranking
    • Recommendation
  • Microsoft builds are smart buildings
    • Uses IoT
    • Could only onboard 30 builds
    • A huge volume of data
  • Used ML to determine if a tech needed to fix a problem
  • Future Sport demo was a cool example
    • Analyze video for sponsors logos
  • Allows rapid development in .Net 
  • Blazor Support coming

11. High-performance Services with gRPC: What's new in .Net 5.0

  • Opinionated Framework
  • Language neutral 
  • Code Generation
  • REST is code first, gRPC contract first
  • Content for computers
  • Hides complexity of remoting
  • Performance and Developer Productivity
  • There is a Visual Studio gRPC template
Here is some bonus stuff for the conference (dotNetConf)

That is it for today.  Tomorrow should be awsome, a full 24 hours of sessions :-)



Comments

Popular posts from this blog

Yes, Blazor Server can scale!

Blazor new and improved Search Box

Blazor Wizard Step Component