ReSharper’s Journey into VS Code & Null & Void in .NET
Details
Please be aware, this meetup is in-person only, we won't run a livestream, but we will do our best to record the sessions and provide them afterwards. Please only RSVP if you intent to attend in person in Amsterdam. If you want to be made aware of when the recording is published follow us on YouTube or LinkedIn.
We would like to thank our sponsor/host JetBrains for making this event possible.
Schedule:
18:00 doors open
18:00 - 18:45 walk-in, food & drink
18:45 - 19:00 welcome & introduction
19:00 - 20:00 Matthias Koch - From IDE to Editor: ReSharper’s Journey into VS Code
20:00 - 20:15 short break / socializing
20:15 - 21:15 Stefan Pölz - Null & Void - Everything about Nothing in .NET
21:15 - 21:45 socializing
21:45 doors closing
Matthias Koch: From IDE to Editor: ReSharper’s Journey into VS Code
C# developers love Visual Studio Code for its speed and flexibility, but many still miss the productivity boost of JetBrains tooling. ReSharper for VS Code is our upcoming attempt to bridge that gap: it brings the power of ReSharper into VS Code with inspections, quick fixes, refactorings, navigation, and more—all in a lightweight, editor-friendly form.
In this talk, we’ll share why we started building ReSharper for Visual Studio Code—internally known as “Sharpie”—what’s already available today, and where we’re headed next. We’ll also touch on some of the technical challenges of adapting ReSharper to the VS Code ecosystem, and how Sharpie fits into the bigger JetBrains strategy.
We’ll wrap up with an invitation: try Sharpie, share your feedback, and help us shape the future of C# development in VS Code.
Matthias Koch - Developer Advocate at JetBrains
Matthias is a passionate C# developer and likes to talk about clean code, testing and tooling in general. Much of his spare time is devoted to his very own open-source projects. He is working at JetBrains as developer advocate for the .NET department.
---
Stefan Pölz - Null & Void - Everything about Nothing in .NET
System.NullReferenceException: 'Object reference not set to an instance of an object.'
I used to read this message quite almost every day. But null references, also referred to as the "billion-dollar mistake" in that context, are also a great mechanism to express optionality and unavailability of a certain resource.
There are great tools to help us deal with ... utilize null pointers. IDEs and Analyzers have introduced diagnostics warning us at compile time about potential trouble at runtime. And the magnificent C# 8 has brought us nullable reference types: a language feature that lets us annotate our API to clearly communicate the design intent of nullability. A feature now also supported in F# since version 9.
So let's explore nullable reference types (including the accompanying nullable attributes of the BCL), their representation in both Reflection Metadata and the Roslyn API, and complement that with other available keywords and operators based on null. As a side effect, we will learn about the fundamental difference between nullable reference types and nullable value types in .NET. Additionally, we shall discover an alternative to null while still retaining the semantics of "nothing" - Spoiler: the null object pattern.
Stefan Pölz
Stefan's passion is to practice Clean Code and test-driven development in order to build maintainable high-performance software in an ever-evolving team, supported by tools from the .NET Ecosystem. He loves to attend and speak at public developer events, co-organize local community gatherings, stream live programming sessions, and author open source projects, complementing his expertise in professional software development. As Microsoft MVP (Developer Technologies), JetBrains Community Contributor (.NET) and co-organizer of DotNetDevs.at, it's his ambition to share knowledge about everything C#.
---
Privacy policy
We may photograph or film speakers and attendees for use in online or printed promotions. By virtue of your attendance, you grant us the right to take such photos or videos and to use your likeness in such materials.