With Microsoft’s no-brainer shift towards open source and interoperability (for those of you who missed it, check out spin-off Microsoft Open Technologies, established 2012 and refolded in 2015), it was only a matter of time before we started seeing alternatives to some of their key products, like Visual Studio.
Enter Project Rider.Not, in fact, a cool old guy on a motorcycle Mad Max style (my first impression), but the code name for IDE guru JetBrains’ competition to Visual Studio…and answer to many prayers in the developer community (just look at all these comments on the JetBrains plugin site begging for a C# IDE). No longer is JetBrains satisfied simply supporting their ReSharper plugin for VS, they’ve taken it to a new level.
Here’s the lowdown on Project Rider, the newest member of the IntelliJ platform family: stand alone, cross-platform, ReSharper supported.
Visual Studio is currently the only viable IDE for .NET and C#, which, as we know, requires Windows. Microsoft has a monopoly that forces OSX and Linux users to use virtual machines running Visual Studio for their development work.
With a real alternative available, all the positive pressures of competition get put on Microsoft, so we’ll see continued improvements both in Visual Studio and Project Rider as they vie for their customers.
“But Kate, who can compete with the creators of C#?”
If anyone can, it’s JetBrains. Its IntelliJ platform has been around for about 16 years now and ReSharper, its .NET extension for Visual Studio, has been around for 10. Its host of popular and successful IDEs (and the associated plugins) are testament that it knows what it’s doing.
Not A ReSharper Replacement
Project Rider uses JetBrains’ .NET extension for Visual Studio in the back end, so it’s not meant to replace ReSharper but instead serve as a mutually beneficial supplement. Refinement to ReSharper now has double the weight, improving both the .NET extension (and consequently the experience of Visual Studio users– talk about a complicated relationship) and Project Rider.
“But Kate, ReSharper is slow.”
This is the response aired by my mentor Charles Gibson when I mentioned Project Rider, and it’s a sentiment I’ve heard mirrored elsewhere. Fortunately, I got a chance to talk directly with Hadi Hariri, the guy who presented it at NDC London and this is one of the things I brought up directly.
Good news! He says, “With each release, we work very hard to improve performance and many times we actually see this in both our own tests and customer feedback.”
Hadi also brought up the great point that by having its own platform (notably free of the heavyweight Roslyn) JetBrains has much greater control over the things that would slow ReSharper down, and so, “That’s why already we’re probably faster than VS in quite a few areas.”
The benefits of this go without saying; developers, whether a Mac fanboy, a Linux beard, or a Windows…user (what’s the amusingly derogatory yet still civil term for a Windows user?), are vocal and stubborn about their OS preferences.
OK, so there are some predictable troubles getting seamless performance on some of the many Linux distributions, but hey, way better than spinning up a VM.
Having a cross platform IDE is a civil right at this point, as Hadi said, “Probably the most exciting thing is not having to run a VM anymore to do C# development, and being able to now get everything I had with ReSharper on Mac.”
Sure, there are some cross platform options already available, such as Visual Studio Code and MonoDevelop, but the former is a lean Microsoft afterthought and the latter is pretty situational (I.E. Unity debugging).
One Stop Project Shop
Whatever your .NET flavor, you’re still good. Project Rider can handle projects in Mono, the .NET framework and DNX, with debugging support encompassing all of the above and CoreCLR (eventually).
…except for visual designers
Project Rider won’t offer some of the visual designers available in Visual Studio, such as XAML, Web Forms designer and Entity Framework Designer. Hadi Hariri confirmed that there are no plans for them, either. It’s okay, you can always outsource it.
As the offspring of JetBrains, Project Rider will have all the wisdom and functionality of the IntelliJ platform (in this case, care of RESharper). I could write an entire article on just those benefits: easy navigation of both code and file structure, code cleanup, smart auto-completion, code smell detection and resolution, happy, safe refactoring, and all the great integration stuff for build tools, version control, testing and debugging,and so on. There’s a lot to be said for vetted industry experience.
Likewise, as JetBrain’s newborn offspring, it’ll support existing ~1,000 downloadable IntelliJ IDEA plugins. VIM users, rejoice! (Hey, don’t knock it. IdeaVim is the seventh most downloaded IDEA plugin right now.)
While it’s ironic, given that Project Rider exists only because of Microsoft’s movement towards open source, it’s completely understandable that JetBrains plans to follow a licensing fee model.
Pricing hasn’t yet been announced, but based on JetBrains’ current pricing models for similar products (CLion personal license - $89/yr) and an awareness of the difficulties in getting people to switch or needing to use both (and I quote from their Project Rider blog post, “We will take into account the many usage scenarios that might occur, when establishing pricing, such as someone wanting to use both tools, etc.”), I figure we can expect something competitive to the $539/year for an individual license of Visual Studios.
Written in an Open Source Language
The front end is written in Kotlin (backend is C# via ReSharper). Some of you (myself included) might not have heard of Kotlin before, so let me elucidate: Kotlin is a language designed and developed by JetBrains to replace Java, citing dissatisfaction with the feature set of existing languages. Kotlin development started in 2010, it was announced in 2011, and released under the Apache 2 license as open source in 2012. It’s completely interoperable with Java and versatile enough for front end, server-side or Android apps.
Now that you can appreciate the dev nerdiness of Kotlin, let me start over: The front end is written in Kotlin! So even if the product itself is licensed, at least the language (and the IntelliJ platform) is open source. How cool is that?
2016 Fall Release for Project Rider
Project Rider is planned to be set free in the fall of 2016 after both a private and public Early Access Program, though it’s stated that the results of the EAPs may delay release (as it should be). If you’re interested in trying out the early builds, sign up!
By and large, I’m pretty stoked about JetBrains’ entry into the hitherto uncontested field of C# IDEs, if only for the benefits of competition. While I couldn’t coax any hints of the formal title from Hadi Hariri, I’m rooting for it to be dubbed MadSharp to go along with my first impression from the words ‘Project Rider’.
Special thanks to Hadi Hariri for putting up with my incessant questions and giving me some fact-checking pointers.