.NET Tips and Tricks

Blog archive

Two Questions with Oleg Stepanov

JetBrains recently released a new version of its Visual Studio add-in Resharper (which we reviewed last year). I got the chance to ask some questions of Oleg Stepanov, software developer at JetBrains about creating add-ins for Visual Studio.

Peter Vogel: What are the major issues in competing in the "VS Add-in market"?
Oleg Stepanov: The market is very segmented and we're playing in the productivity tools niche where competition is very specialized. Productivity tools aim to create a productive environment for developers where programmers and tools join to become a whole. Tool vendors try to provide features that give developers superpowers, yet are very easy to use.

Approaches are different. ReSharper stretches its functionality in five main areas: navigation, code analysis and fixes, refactoring, code generation and testing. These areas are supported for code written in C#, VB.NET, ASP.NET, ASP.NET MVC, resource files, etc. Some other tools on the market focus on specific areas such as code templates. Some competitors try to mimic certain ReSharper features in their products, and often our challenge is to demonstrate that ReSharper is "the real thing."

PV: How does ReSharper compete in this market--what is ReSharper's competitive position?
OS: ReSharper's competitive advantage stands on three pillars: Technology, Usability and Community. Being a code-centric tool means deeply understanding the developer's code and modifying it with great care. Over the last seven years, we've developed a very advanced parsing technology, which tackles even minor peculiarities of C# and Visual Basic to obtain very precise understanding of the code semantics.

Some people think that since most of the code written is quite simple, simplified techniques will perform well in most cases. The reality is that when you refactor code, you don't want to double-check after your tool to make sure your code still does the same thing. Add to that the complexities caused by third-party libraries, and you'll see that you need a tool that can be trusted.

ReSharper was inspired by IDEA, JetBrains' world-famous Java IDE that is still our flagship product. ReSharper inherited part of its user experience, which has been well accepted by software developers. Over time, ReSharper's path diverged from that of IDEA to answer the needs of its own community. Still, the growth of our user base confirms that ReSharper delivers a very pleasant coding experience to .NET developers. In fact, some developers find the way ReSharper extends the Visual Studio experience so natural, they simply become unable to work productively in bare Visual Studio anymore.

Since early 2004, when the ReSharper project first became marginally useful, we've been running an Early Access Program (EAP). This program allows anyone to download pre-release builds of ReSharper, use them for free and provide feedback about the product. This program has helped us build a unique community of top-notch developers around our products. These folks have suggested many features, created a number of free and commercial plug-ins for ReSharper and generally helped us make sure we're on track with the latest trends in the community. At most of the conferences we attend, we see that a lot of presenters have ReSharper installed, and this underscores the fact that the tool is adopted by key influencers.

Posted by Peter Vogel on 06/17/2010


comments powered by Disqus

Featured

  • Creating Reactive Applications in .NET

    In modern applications, data is being retrieved in asynchronous, real-time streams, as traditional pull requests where the clients asks for data from the server are becoming a thing of the past.

  • AI for GitHub Collaboration? Maybe Not So Much

    No doubt GitHub Copilot has been a boon for developers, but AI might not be the best tool for collaboration, according to developers weighing in on a recent social media post from the GitHub team.

  • Visual Studio 2022 Getting VS Code 'Command Palette' Equivalent

    As any Visual Studio Code user knows, the editor's command palette is a powerful tool for getting things done quickly, without having to navigate through menus and dialogs. Now, we learn how an equivalent is coming for Microsoft's flagship Visual Studio IDE, invoked by the same familiar Ctrl+Shift+P keyboard shortcut.

  • .NET 9 Preview 3: 'I've Been Waiting 9 Years for This API!'

    Microsoft's third preview of .NET 9 sees a lot of minor tweaks and fixes with no earth-shaking new functionality, but little things can be important to individual developers.

  • Data Anomaly Detection Using a Neural Autoencoder with C#

    Dr. James McCaffrey of Microsoft Research tackles the process of examining a set of source data to find data items that are different in some way from the majority of the source items.

Subscribe on YouTube