.net .net core Azure JetBrains Software Architecture Web Web API dotNet
Antwerpen, Flanders, Belgium
Maarten Balliauw loves building web and cloud apps. His main interests are in .NET web technologies, C#, Microsoft Azure and application performance. He is Developer Advocate at JetBrains. He's an ASP Insider and former Microsoft MVP. Maarten is a frequent speaker at various national and international events and organizes Azure User Group events in Belgium. In his free time, he brews his own beer. Maarten's blog can be found at https://blog.maartenballiauw.be.
The C# nullability features help you minimize the likelihood of encountering that dreaded System.NullReferenceException. Nullability syntax and annotations give hints as to whether a type can be nullable or not, and better static analysis is available to catch unhandled nulls while developing your code. What's not to like?
Introducing explicit nullability into an existing code bases is a Herculean effort. There's much more to it than just sprinkling some `?` and `!` throughout your code. It's not a silver bullet either: you'll still need to check non-nullable variables for null.
In this talk, we'll see some techniques and approaches that worked for me, and explore how you can migrate an existing code base to use the full potential of C# nullability.
After buying a set of Sonos-compatible speakers at IKEA, I was disappointed there's no support for playing audio from a popular video streaming service. They stream Internet radio, podcasts and what not. Well, not that service I want it to play!
Determined - and not knowing how deep the rabbit hole would be - I ventured on a trip that included network sniffing on my access point, learning about UPnP and running a web server on my phone (without knowing how to write anything Android), learning how MP4 audio is packaged (and has to be re-packaged). This ultimately resulted in an Android app for personal use, which does what I initially wanted: play audio from that popular video streaming service on Sonos.
Join me for this story about an adventure that has no practical use, probably violates Terms of Service, but was fun to build!
When I started software development, I was writing “echo” statements in code to see what was happening. We’re beyond that era, but do we know how to use the debugging tools available to us? In this talk, we’ll see how we can greatly improve our debug-fu, and tour most of the debugger tools available in JetBrains Rider. A practical, demo-driven session with tips and tricks on how to let tools help us make troubleshooting and finding bugs much easier!
A lightweight HTTP API can use a lot of the ASP.NET Core Middleware, such as routing, authentication and authorization. Using the full-blown MVC framework for such API is just overkill!
But MVC does have some things that you'll miss when using plain "app.MapGet": you have to handle HTTP request/response handling and model binding yourself.
ASP.NET Core 6.0 introduces the missing link between writing low-level HTTP and a full-blown MVC or Razor application: minimal APIs.
In this talk, we will explore what minimal APIs are, what they are not, and how/where your applications can benefit from this lightweight model to building HTTP applications.
With .NET Core, an explosion of .NET IDE's happened! There's good old Visual Studio, but also VS Code, VS for Mac, and JetBrains Rider. In this talk, we'll dive into the latter. We'll explore navigation, automatic inspections and quick fixes, code generation, built-in tooling like version control integration and local history and look at the special scenario's the debugger has to offer. Come to this session to learn about Rider, and learn plenty of tips & tricks to enhance your development productivity.
Ever wondered how IDE’s are built? In this talk, we’ll skip the marketing bit and dive into the architecture and implementation of JetBrains Rider. We’ll look at how and why we have built (and open sourced) a reactive protocol, and how the IDE uses a “microservices” architecture to communicate with the debugger, Roslyn, a WPF renderer and even other tools like Unity3D. We’ll explore how things are wired together, both in-process and across those microservices. Let’s geek out!
31 May 2018 - 2 Jun 2018