Dotnet logo

.NET Tools

Essential productivity kit for .NET and game developers

.NET Tools News

ReSharper 20 years!

JetBrains celebrated 24 years this February! Now, the company comprises 2,200 employees, 40 products, 3M total customers, and 11.4M users who regularly use and trust our tools. But how did it all start? IntelliJ IDEA was the first flagship product we launched, but right after that came ReSharper, which is celebrating 20 years on the market this week!

Back in 2004

You still can find this message on our support forum from July 21, 2004:

We are proud to announce that ReSharper 1.0 have just been released today.

Well, since then, we created Grazie to help check the quality of our texts before we publish them and avoid grammar mistakes 😉. Grazie has been integrated into ReSharper as the main spell-checking engine since v2023.3. But the most important thing is that 20 years ago, one of JetBrains’ most popular and exceptional products was released! And it’s still evolving to this day – check out the timeline:

RESHARPER 20 TIMELINE

The first release announcement was posted by the then ReSharper team:

  • Valentin Kipyatkov
  • Dmitry Shaporenkov
  • Oleg Stepanov
  • Andrey Simanovsky
  • Eugene Pasynkov
  • Nikolay Pultsin
  • Sergey Coox
  • Dmitry Lomov

Many of these people are still with JetBrains after all these 20 years! Hard to believe, right? But it’s true! Some of the others are now driving other market leaders to their success. But back then, all together, these people took a brave and unique step in our company history – they created a tool for another vendor ecosystem, relying on it as a foundation and doing their best to improve it in the only way they knew and could utilize themselves.

We used to say that ReSharper makes Visual Studio a much better IDE. And, due to our branding research, many .NET developers (40%) strongly agree with that. With all of its 2,200 on-the-fly code inspections for C#, VB.NET, ASP.NET, and other technologies, as well as quick-fixes, 60+ handy refactorings and 450+ context actions, unique guidance throughout the standards, and best coding practices, ReSharper is there to set the .NET development standard for all developers and other tools.

Did you know that…

ReSharper was not just a pioneer product, it also served as the main breadwinner for JetBrains for several years in a row and influenced .NET and other ecosystems a lot through these years.

We’ve included all the major milestones in the timeline, but we also want to share a few fun facts from our long history.

Did you know that there was almost a ReSharper IDE back in 2005?

After the release of Visual Studio 2005 and C# 2.0, plans to release a ReSharper IDE were scrapped due to the significant workload of building it from scratch in C#. Because ReSharper’s sales as a Visual Studio extension were growing and the Visual Studio Marketplace was expanding, we decided to focus on improving the existing extension. We never lost sight of our vision to create a .NET IDE, which was later achieved in the form of JetBrains Rider.

Some code from the ReSharper IDE project remained in use for a long time, including the standalone app interface shell (tool windows and editor) that’s partially used in dotPeek, dotTrace, dotMemory, and dotCover, as well as a unit test runner, and an algorithm for diff comparisons in solution files.

Did you know the ReSharper team once used an external utility app to tackle the limitations of the 32-bit Visual Studio process?

ReSharper faced memory limitations in Visual Studio, restricted to a few hundred MB, which was inadequate for complex projects. Additionally, .NET’s 16 MB block memory allocation caused severe fragmentation, leaving few continuous free blocks. To address this, Leonid Shalupov developed an app that launched before Visual Studio, intercepting VirtualAlloc/VirtualFree system calls to reduce fragmentation. The ReSharper Support team provided this app to customers until Visual Studio updates resolved the issue.

Did you know that there is a Clippy extension for ReSharper?

With support for Office 2003 coming to an end, we decided to offer Clippy another job in ReSharper. What started as an April Fool’s Day joke actually became a working extension, which you can watch in action in a screencast by its author, Matt Ellis.

Appreciations

During the Oscar award ceremony speech, actors and actresses, filmmakers, producers, and others express gratitude to the audience, acknowledge the award recipient’s achievements, and inspire others. We want to follow this tradition here as well.

First, we’d like to thank Microsoft. Without Visual Studio, there would be no ReSharper. And that means no Rider, dotTrace, dotMemory, dotCover, nor many other tools born from that experience at JetBrains. Visual Studio is the product that set the bar for us and made it possible for us to drive ReSharper’s innovations for years. And we are grateful to have such an inspiring companion! If we could invite one best friend to this birthday party, that would be you, our beloved Microsoft. 🎂

Second, we want to say a huge thank you to the whole JetBrains team. For the inspiration, dogfooding, critique, crazy ideas, and fantastic execution. These people not only bring you new versions of C# and smart AI actions, integrate essential tools, and do amazing demos teaching you the best .NET practices, they also create fun quizzes – like this one hidden in the C# example on the JetBrains Mono page, for example.

Last but not least, we’d like to thank all our users for being with us, many for as long as 20 years. It’s an incredible feeling to keep seeing messages from developers who have been with us for years now. And we would love to tell you all in person today just how much we appreciate your support and trust. Please continue communicating your excitement, inspiration, and (of course) pain points to us, throwing out ideas, and triggering reminders for things we might have forgotten.

A recent ReSharper brand survey we ran made some of you worry about our plans for ReSharper’s future. But we want to assure you that it’s not going anywhere. The way the .NET developers community sees ReSharper makes us think we are on the right track. The majority of the people we reached out to said:

  • “A tool powered by the ReSharper code engine is the most productive tool for .NET developers.” JetBrains Rider, Fleet, Qodana, AI Assistant for Visual Studio confirms that. And we keep brainstorming new ideas. Have some of your own? Share them with us!
  • “ReSharper serves as an inspiration for Visual Studio.” And we are happy to perform this role! We know that with Visual Studio, our ideas and vision will reach a wider audience. Guiding the whole community through the tool is an achievement that not that many vendors can boast.
  • “ReSharper helps you learn C#.” With many teachers and educators working on the team, this is essential! Just check out our recent series on C# 12 (Primary Constructors, Interceptors, Alias Any Type, Collection Expressions).

We know there are things you expect from us, things we should change or improve, and things we want to achieve with ReSharper in the future. And we hope that, for many years to come, we will keep shaping .NET developers’ habits. Check this timeline to see how it all started and what it’s going to look like in the nearest future:

RESHARPER 20 TIMELINE

Let us know in the comments if you want us to add something or if you found any mistakes on this timeline. If we pick your story to be featured, you’ll get a ReSharper T-shirt or a voucher for the JetBrains Merch Store!

To wrap up, a few words from our team members:

Sergey Coox, ex-.NET Department Lead in JetBrains, Principal Engineer at JetBrains

By the time I joined JetBrains in 2004 to create a C# IDE, I’d been programming in C++ for 5–6 years. So, it was more logical for me to develop my new project in C++ and not in C#, which I didn’t know at that time. Also, C# was still quite young and less powerful than now. But developing in C# with ReSharper was such a pleasure that I started easily diving into C# and never regretted it. ReSharper 1.0 fully justified our company motto at that time, “Develop with pleasure!”, and stayed true to it throughout these past 20 years. Many ReSharper features became an industry standard and entered other languages and products.

ReSharper always cares about the details, and that’s what makes it unique among the others. Maybe “Details matter!” will become our new motto for the whole industry, thanks to ReSharper!

Aleksandr Shvedov, Team Lead in the IDE Core (Language support) team at JetBrains

The reason I started using ReSharper was the mind-blowing “smartness” of the IDE – ReSharper was catching the bugs in my code at the speed of thought, suggesting ways to make my code clearer and more concise in the process. It felt almost like the whole software developer job was about to be completely automated pretty soon.

I was also fascinated by the people who managed to build this kind of experience. Luckily enough, I was noticed by the ReSharper team members and eventually joined the team, where I got to work alongside the smartest and most inspiring people I know. For me, the “smartness” of ReSharper’s features turned into an infinite sequence of challenging technical tasks in a quite complex domain. During my 13-year journey at JetBrains, we implemented countless IDE features, survived the pressure from our competitors, successfully adapted new .NET technologies, and influenced other JetBrains IDEs.

During those years, the world has changed a lot. Many of the things that felt “smart” back in the day have now become the standard for IDE tools we use today. However, the window of opportunities to innovate in IDE tools is wider than ever. With the rapid evolution of programming languages, new hardware, new UI/UX ideas, the ML & AI revolution, and remote/collaborative/cloud development – I’m very excited to keep pushing our .NET IDEs forward in this new world!

Maria Pleskunina, Support Engineer in .NET Support at JetBrains

Twelve years ago, I discovered ReSharper while starting my C# development journey. Back then, I was amazed at how much better my code could look by using the quick fixes suggested by the tool. I felt proud that my name, as the author, would be next to such polished written code. A while later, I found myself on the ReSharper team.

Now, I understand the impact ReSharper has had on the development world as a whole. It boosts developer productivity, enhances code quality, and allows developers to focus on solving complex problems without wasting energy on housekeeping. As one of our users said: “ReSharper has made us lazy, and we want more”. And that’s exactly how it is!

I’m proud to be part of a team dedicated to improving ReSharper. Thanks to everyone who contributes to this incredible tool, especially our users. Working alongside such talented individuals worldwide is a privilege. I wish our team to continue to create magic and inspire developers around the world.

Matt Ellis, Head of .NET Developer Advocacy Team at JetBrains

I first encountered ReSharper while working as a developer, but I didn’t get what the fuss was about until I was pair programming with someone who really knew how to use it. My immediate reaction was an amazed “How did you do that?”, and like the rest of the team, I was soon obsessed with discovering new features, swapping keyboard shortcuts, and “coding to green” – aiming for that green check mark to show we’d evaluated all of ReSharper’s suggestions.

Very quickly, I became interested in the technology that powered ReSharper and started maintaining the xUnit.net test runner plugin. It was easy to see how the products were so smart and innovative. After joining JetBrains as a developer advocate, I could see that the main reason for that is that the people are just as smart and innovative and just as obsessed with providing a great developer experience as I was with using it. If there’s one thing better than JetBrains products, it’s JetBrainers.

Dmitry Matveev, Technical Writer at JetBrains

I join my colleagues in expressing appreciation for the incredible ReSharper team I’ve had the pleasure and honor of being part of. I want to take this opportunity to extend my thanks to our users for the invaluable feedback provided over the years. Your sophisticated insights have been instrumental in identifying and rectifying a lot of difficult-to-spot edge-case scenarios, which has immensely improved ReSharper’s overall performance and functionality.

We have many diligent users whose names have become familiar to everyone on the team. We often mention these users in our internal meetings, and everyone instantly knows who they are. They’re more than just users; they’re a vital part of our development process. Once again, a huge thanks to all of our users. Your active involvement and commitment truly make a significant difference.

Slava Tutushkin, Software Developer at JetBrains

The main reason I was really unhappy having to switch to C# 1.0 as my main development language was the lack of something like IntelliJ IDEA for C#. A few moments later, and the world became a much better place to live: we got all that intelligence (and even more) with ReSharper 1.0, while being able to continue to use VS. I started converting everyone around me to JetBrains adepts. After some time it became evident to me that just using ReSharper was not enough, so I made the life-changing decision to join the ReSharper team.

image description