Maybe it's good to have an open ecosystem for using the language that doesn't rely on paying for an IDE? I personally soured on Kotlin for this same reason!
Why do people feel they are absoultely entitled to having best-in-class IDEs for free? Don't the developers of those IDEs have the right to, you know, eat?
ALso, JetBrains' IDEs are:
- free for students, startups and opensource projects
- cost an insane "two/three beers a month" for individual licenses (yeah, it's more expensive than two beers in many countries, but as a developer I could easily afford it even in the shithole that is Moldova)
I'm not entitled to a best-in-class IDE experience, I'm just happy using one of the dozens of equivalent languages that do have them with an open community.
No language has been tied to an IDE since at least early 2000s. Microsofts own compilers are free to use.
So no idea what you're talking about when you talk about "a language that doesn't rely on paying for an IDE".
And the tools for most of the languages supported by the open community? The top, best-of-breed of these tools can barely do the bare minimum of refactoring and maybe symbol lookups. Even to this day you can read things like "X is amazing for refactoring because you change something, and the compiler will tell you all the places where it can't compile".
Good tools are expensive. And, surprisingly, Jetbrains' IDEs are not expensive at all. And are several orders of magnitude more powerful than anything the "open community" has come up with.
And, to re-iterate, no language is dependent on an IDE these days. Go grab Kotlin's CLI compiler, https://kotlinlang.org/docs/command-line.html fire up your vi/emacs/gedit and code to your heart's content if you're so set against commercial IDEs.
On the other hand, I have no idea what you're arguing about any more. The context is about using VS Code (or something else) with OmniSharp instead of VS and Rider; what does the bare minimum of being able to compile code have to do with it? It's almost like you're making my point: if you want to be productive with C#, you have to use proprietary tools; otherwise, all you can do is just compile your code!
> And, surprisingly, Jetbrains' IDEs are not expensive at all. And are several orders of magnitude more powerful than anything the "open community" has come up with.
This says more about the languages and ecosystems you're used to. Try out rust-analyzer and say that again!
> The context is about using VS Code (or something else) with OmniSharp instead of VS and Rider
This is what you said, in it's entirety: "Maybe it's good to have an open ecosystem for using the language that doesn't rely on paying for an IDE? I personally soured on Kotlin for this same reason!"
And then you go ahead and praise a tool that implements LSP...
Do you realise that "open ecosystem" literally couldn't produce anything of note for any language until the megacorporation you love to hate came along and provided a solution? It wasn't "open ecosystem" that gave you the language server protocol. It was Microsoft that designed it and implemented it for their own VS Code. And the "open ecosystem" that sat on its ass for decades flocked to it and to the protocol like kids to the Pied Piper of Hameln.
And again with "you need paid IDE to develop this and that". No. You don't. There's LSP for C#. There's LSP for Kotlin. You'd know that if you went ahead and looked just slightly beyond your blind hate of commercial IDEs.
Honestly, you've been attacking me personally for quite some time now for no reason (I've done the courtesy of not attacking you, perhaps you could try to do the same?) so I'll not bother responding after this. At any rate,
> You'd know that if you went ahead and looked just slightly beyond your blind hate of commercial IDEs.
Maybe you missed me saying I use IntelliJ professionally in the previous comment? I'm a happy, paying user of JetBrains IDEs, I've defended them several times on HN myself. I don't hate commercial IDEs; I hate being forced to use them.
It's extremely bizarre that you assume I'm trying to cheap when I'm trying to be principled: I believe the presence of free (as in speech) solutions are essential for me to seriously consider a language. Being tied to a corporation's whims to efficiently use it is ridiculous; I was a happy F# hacker myself until I saw the more recent moves MS has been making. I think what they're doing - replacing omnisharp with a closed source solution and the debacle with trying to make hot reload a paid VS feature being two major, recent issues - show that MS simply cannot be trusted to run a language ecosystem without trying to force its users into behaving as they want them to. There's simply no reason to invest any time into the dotnet ecosystem when there's very comparable languages with comparable performance and ecosystems which don't have this issue.
> And then you go ahead and praise a tool that implements LSP...
What? I'm afraid you've completely lost me here. It doesn't matter that MS came up with LSP, so long as the protocol is open and people can implement and use it without MS's approval. Dozens of editors that have nothing to do with MS implement LSP, the fact that it was made by them is almost incidental.
Those are not best-in-class. Pretty much the entire industry is now VS Code by default - which is very good but not a full IDE like VS or Rider/IntelliJ series.
I'm extremely happy writing Rust with neovim and rust-analyzer. There are plenty of long time rust users who will absolutely tell you that rust-analyzer beats IntelliJ Rust, and I find it very much comparable to writing Java in IntelliJ, which I do professionally. Likewise, Elixir's open source and community developed LSP is incredible and easily an IDE-class experience with neovim or VSCode.
Yes, VS is free for individual devs, and for five users in a small business. Does it matter though? If you're too cheap to pay for developer tools, you're probably a terrible place to work at.
Yeah it's pretty important if you're at such a terrible place to work at, because you can make that place a little less terrible, and because you can use the C# experience you garner to get into a less terrible job.
It's slow, it's bloated, it's loaded with way too many configuration options and yet still doesn't have a lot of config I like from other editors. It has plenty of plugins and still manages to be missing extensions that I find important.
Development with Visual Studio just doesn't feel very good compared to other environments these days.
You mean lack of GUI tooling, no proper debugger, no parallel code debugging, no GPGPU debugging, no hotcode reload, no REPL, no mixed language debugging, no lifecycle management,... yeah those environments rock.
I work at Microsoft as a SWE and use VS Code for c# and js. I've been using VS and Rider a bit as well, but after years of doing python and everything else in VS Code, it's just so familiar and it works just fine for everything my team does so far.
Obviously everyone's preferences are different, so this isn't a direct response but just another anecdote.
I tried VS Code and couldn't get used to it. So now I use Rider for C# and Webstorm for JS. Sometimes I open Visual Studio, though:
> There are some custom plugins someone in my org wrote that help accomplish some team-specific tasks
> When I need to work on stored procedures in our SQL databases. Rider doesn't know how to parse the schema from the sql project files, instead it wants me to connect to a live database or it will color everything with little red underlines and give me no autocomplete
I think it's nice that my employer is willing to pay for my Jetbrains licenses despite the fact that it is selling a proprietary competitor and also simultaneously pushing an open source alternative. I appreciate it.
Licensing costs, licensing costs, and the fact that you often don't need to go through corporate approvals to download VSCode and the C# extension particularly if you are an employee who isn't nominally a "software developer".
VSCode with the C# extension is the preferred C# development environment of corporate shadow IT.