C#

Share:

The C# questions were only shown to the developers who chose C# as one of their three primary programming languages.

What versions of C# do you regularly use?

Given that moving from the .NET Framework to .NET usually isn’t as simple as changing the target, it’s interesting that most developers are at least on the .NET (Core) train. At the same time, it’s surprising that a significant percentage of developers still maintain projects targeting .NET Framework 4.6 and earlier. I’m curious what’s keeping these projects from moving to 4.8.

Dennis Dietrich

Senior Software Engineer, Azure Storage, Microsoft

I see it as a good thing that more devs are using the latest C# version. I wonder if they are moving more legacy apps to the newest .NET version, or just creating new apps and systems and leaving the old legacy code behind.

Chris Woodruff

Team Leader, Engineering, Rocket Homes

Which programming languages are you using in your
.NET project?

C# remains the undisputed language of choice for .NET developers. VB.NET and F# are also used, but more often it’s C# and frontend languages such as JS and TS.

Maarten Balliauw

Developer Advocate, JetBrains

Which runtimes do you regularly use?

C# developers use .NET Framework and .NET Core significantly less now than they did last year (down 13 and 23 percentage points, respectively).

.NET Framework is not gone yet. For those adopting newer .NET versions, it seems they follow the LTS versions with .NET 6 being second, almost on par with the full framework.

Maarten Balliauw

Developer Advocate, JetBrains

Which technologies / frameworks do you use?

It isn’t a surprise that ASP.NET, Entity Framework, and Azure lead the top 3 technologies used. It’s also good to see some of the “older” technologies being used less and less.

Joe Guadagno

Senior Director, Technology, at Rocket Mortgage

Which IDE / editor do you mostly use for C# development?

Over the last 3 years, the usage of JetBrains Rider has increased from 20% to 33% among C# developers.

I am not surprised about Rider’s rate of adoption when I compare it to its progression in my team. At the beginning of last year half of the team used it; today the whole team is using it.

Laurent Kempé

Team Leader & Distinguished Solution Architect, Innoveo

What plugins do you use with Visual Studio?

It is strange to me that almost half of respondents use plain, out-of-the-box Visual Studio. There is so much power and productivity to be gained by using plugins.

Joe Guadagno

Senior Director, Technology, at Rocket Mortgage

Which plugins for Visual Studio Code do you use?

Which operating system does your C# development environment use?

I’m a bit surprised by how many C# developers are (also) using macOS and Linux. For Linux, it’d be interesting to further break this down by regular Linux (virtual) machines versus WSL.

Dennis Dietrich

Senior Software Engineer, Azure Storage, Microsoft

Which unit-testing frameworks do you regularly use?

As a former SDET, I find the percentage of C# developers who don’t write any unit tests disappointing. I had hoped that by now there’d be a consensus about the benefits of unit testing in general. It’d be interesting to find out why this is. Do the developers not believe in the benefits? Is it a matter of a lack of training or engineering culture? Is management pushing back on the short-term investments that unit testing requires?

Dennis Dietrich

Senior Software Engineer, Azure Storage, Microsoft

What performance or diagnostic tools do you regularly use?

Looking back at my 20 years in the field and comparing my personal experience with the numbers here, I have to come to the conclusion that performance analysis and improvement is often a blind spot these days, though it really shouldn’t be. In many ways we’ve come full circle. Whereas in the old days the issues were limited memory and CPU resources, today we routinely write code to run on mobile devices where battery life is an issue, as well as cloud solutions that need to scale out where inefficient use of computing resources quickly means spending thousands of dollars more each month than necessary.

Dennis Dietrich

Senior Software Engineer, Azure Storage, Microsoft

How often do you typically use profiling or diagnostics tools?

Quite many developers understand that profilers are tools for preventing performance issues rather than relieving their symptoms. The proportion of such developers has increased this year, but we can't say there is a sustainable trend yet.

I think regular profiling comes together with the idea of compound interest. As you know, like retirement, you put a small amount of money over time consistently, which eventually leads up to the point where you have something significant. The same thing with profiling: even a tiny segment of time to look at performance translates into big improvements across the board, if you do it consistently and persistently over time. So I don’t aim for huge, massive improvements at once. They're excellent when we get on, iteration after iteration.

Dylan Moonfire

Senior Software Developer, @dmoonfire

Who is responsible for profiling or diagnostics in your project?

Types of software being developed in Visual Studio and JetBrains Rider

JetBrains Rider is preferred when it comes to game development (+18 percentage points over Visual Studio), entertainment (+4 percentage points) and augmented / virtual reality (+4 percentage points).

Thank you for your time!

We hope you found our report useful. Share this report with your friends and colleagues.

If you have any questions or suggestions, please contact us at surveys@jetbrains.com.