DEV Community

Cover image for Visual Studio for Linux will Never Arrive💔

Visual Studio for Linux will Never Arrive💔

ByteHide on March 20, 2023

Visual Studio, Microsoft’s flagship integrated development environment (IDE), has been widely acclaimed for its robust feature set and integration ...
Collapse
 
joelbonetr profile image
JoelBonetR 🥇 • Edited

VSCode is an IDE

Come with me to tear this down

First of all, it's safe to say that considering VSCode an RTE (Rich Text Editor) is so 2015... 😂

Let's do the checks around VSCode:

  • Intellisense and highlighting? YES
  • Code Linting? YES
  • Preview results from markup languages? YES
  • Run programs from within the IDE and/or built-in terminal Interface? YES (both)
  • Ability to write and share plugins and configs? YES
  • Running and Debugging software from within the IDE? YES

Extra features available:

  • VCS integration? YES (Git, any origin -GitHub, Bitbucket, GitLab... both SaaS and onPremise/self-managed)
  • Ability to connect, query directly to DB Servers/Services and share queries? YES (e.g. SQLTools)
  • Ability to test and share HTTP requests? YES (e.g. REST Client)
  • In-depth Git integration? YES (e.g. GitLens)
  • In-depth static code analysis? YES (supercharged with Import Cost, specific intellisense plug-ins and so on)
  • QoL features? YES (e.g. Auto Rename Tag, Prettier -w. format on save-, etc).

The difference is just that most IDEs come pre-charged with a specific platform tooling (java, C#, PHP and so on), some of them even being locked into solving one particular development lifecycle (Java JVM for example) while VSCode takes the "here you got things you'll probably need in any environment and here you can download the extensions for the platform/language/framework of your likeness" and you DO have .NET official extensions as well as for C# (and many more languages).

Overall, question being, do you really need VS for Linux?

I've coded in Linux for 6 years or so, till WSL2 was released and I bet the experience of VS + Windows 10/11 + WSL2 will be even better than doing so in Linux, I'm now in MacOS and not much difference on that matter overall. I still stick to VSCode for anything.

If you prefer to stick to Linux native it's totally fine, just configure VSCode for your environment, sync the config with your MS Account once done and never look back 😅 I understand that you'll need to configure a couple of things that may come "already done" in VS but it shouldn't be much of a hassle and once it's done... it's done!

Any thoughts on that guys?

Collapse
 
felipeboliveira profile image
Felipe Oliveira

Can you use debug mode in VS Code? I can't make it work.

Collapse
 
joelbonetr profile image
JoelBonetR 🥇

Sure! you need to configure it.

This is a configuration example:

{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "Next.js: debug server-side",
      "type": "node-terminal",
      "request": "launch",
      "command": "npm run dev"
    },
    {
      "name": "Next.js: debug client-side",
      "type": "chrome",
      "request": "launch",
      "url": "http://localhost:3000"
    },
    {
      "name": "Next.js: debug full stack",
      "type": "node-terminal",
      "request": "launch",
      "command": "npm run dev",
      "serverReadyAction": {
        "pattern": "started server on .+, url: (https?://.+)",
        "uriFormat": "%s",
        "action": "debugWithChrome"
      }
    }
  ]
}
Enter fullscreen mode Exit fullscreen mode

it should be stored in .vscode/launch.json (create file and/or directory if missing in your project)

For more details please check the reference.

Best regards

Thread Thread
 
felipeboliveira profile image
Felipe Oliveira

Thanks, i will try, i tried sometimes but without sucess. One question, i have to had different configs for Debug work in Node, Bun, Next, React, Vue, Angular?

Thread Thread
 
joelbonetr profile image
JoelBonetR 🥇 • Edited

Between FE and BE usually yes, it depends on how do you want to debug (certain extensions may use one type or another).

If it's vanilla VSCode without specific debug extensions then the above example should work, just change the commands for the ones you use and check that the url is correct.

Once launching the debug you'll have 3 options (VSCode will show a drop-down with the three names), depending on the specifics of your project one may work or do better than the other.

The debug will also be different of course if you code in any other language. C/C++, Python and whatnot, each has it's details.

Best regards

Collapse
 
ant_f_dev profile image
Anthony Fung

I'm actually quite surprised that there's such a demand. I thought that most people who used Linux did so as they wanted to avoid Microsoft products.

Collapse
 
webbureaucrat profile image
webbureaucrat

If you're doing .NET you're trying for the best tool for the job, VS on Linux makes tons of sense. Linux is a joy to use as a developer, but for a .NET dev there's really nothing like Visual Studio, especially if you're dealing with large legacy projects. VS Code is acceptable but there's a reason why companies shell out real money for VS.

Collapse
 
kennymatic profile image
Kenny Louie

Maybe I'm missing something but if you're dealing with large legacy projects you're probably working with things like Windows Forms, ASP.NET, ASP.NET MVC, etc. You're not going to be in Linux for that stuff.

Collapse
 
ant_f_dev profile image
Anthony Fung

As a VS user, I know how powerful it is - I was a little disappointed once when one of my managers suggested I use VS Code instead because it opens projects faster.

Thread Thread
 
webbureaucrat profile image
webbureaucrat • Edited

LOl tell them yeah all those missing features really lighten the load there!

Collapse
 
tempusthales profile image
Gilbert Palau • Edited

Maybe I'm not understanding the article, but VS Code is available for Linux:

code.visualstudio.com/#alt-downloads

Image description

and if that is not enough, there is also: vscode.dev/

Update: I'm an idiot. Sorry I re-read again and saw the difference.

Collapse
 
hellokyyt profile image
Kyle Harrison

Even for C++ development, I yearn for the Visual Studio experience while working natively with Linux. Heck, VS can already use Clang. I just desire that whole "Solution -> Project" architecture that CLion, VSC, and *Vim seem to lack

Collapse
 
kasuken profile image
Emanuele Bartolesi

Visual Studio Code is a good alternative (and free) but JetBrains Rider is a "real" IDE (but it's not free).
I don't use MonoDevelop since ages, but I think Code or Rider are better.

Collapse
 
revoltez profile image
revoltez

why anyone would use windows in the first place

Collapse
 
sonicx180 profile image
sonicx180

I don't really get the difference between VS and VSC

Collapse
 
berviantoleo profile image
Bervianto Leo Pratama

Well. I like to use JetBrains Rider, but it's expensive for me. So, I use Visual Studio Code in Linux. Visual Studio Code is enough for me.

Collapse
 
dadyasasha profile image
Alex Pushkarev

Isn't Visual Studio more expensive than Rider?

Collapse
 
berviantoleo profile image
Bervianto Leo Pratama

Yes, but I use the Community Edition for personal projects.

Thread Thread
 
dadyasasha profile image
Alex Pushkarev • Edited

fair enough. Not sure about now, but sometime ago built-in refactoring capabilities were very basic and one had to buy resharper to do something which was available out of the box in Rider...

I personally use VSCode only on my personal computer. I know it isn't as advanced as Jetbrains IDEs or VS, but it's lightweight and is reasonable for my home projects. I think at Microsoft they promote VSCode as the main coding platform outside of Windows...

Maybe if you give it a "forceful" try (by just removing everything else) for a week it would not look like a crazy option anymore