I have not used an IDE since I ditched Turbo Pascal in middle school, but now I am at a place where everyone and their mother uses VS Code and so I’m giving it a shot.

The thing is, I’m finding the “just works” mantra is not true at all. Nothing is working out of the box. And then for each separate extension I have to figure out how to fix it. Or I just give up and circumvent it by using the terminal.

What’s even the point then?

IDK maybe its a matter of getting used to something new, but I was doing fine with just vim and tmux.

  • The problems you’re facing aren’t very clear. Can you expand a bit?

    Lots of things in VS Code just work if you use the non-FOSS version and don’t need to install any system dependencies. For example, there are a ton of code formatters that you can install and run without tuning (eg I installed a SQL formatted last week with nothing else to do). There are also some that you need underlying dependencies for (eg if you want Rust extensions to work, you need the Rust toolchain; same for LaTeX); however this is true in any editor based on my experience (although some editors eg JetBrains might mask that through their GUI). Across both options, you often need to tune your extensions based on your use case or even hardware in some cases (eg setting up nonstandard PATH items).

    YMMV for VSCodium, the FOSS version, primarily because it relies on a different extension registry per the terms of use. You can get around this as a user; as a vendor they cannot. Outside of tweaking the registry I’m not aware of anything else you need to do for parity.

    Edit: forgot to tie all this back to my opener. What do you mean when you say it requires all sorts of work? Are you experiencing other issues than something I called out?

      • Well I guess I can give my opinion as a former VSCode and Vim user that migrated to Helix. @shadowedcross@sh.itjust.works was curious too.

        Way back when, I used Sublime Text and got proficient with those keyboard shortcuts. Then VSCode eclipsed (pun unintended) Sublime, so I switched and I was thankfully able to keep using Sublime key bindings. I was also productive with VSCode, except it wasn’t popular at the company I was working at, where most people used Vim. I ended up learning a bit of Vim for pair programming, but I still clinged to VSCode, even though it lacked proper support for connecting to a VM via SSH (which was a very common workflow).

        At some point I realized that it was important to have a totally keyboard-centric workflow to level up my productivity and ergonomics, and being able to use a mouse in VSCode was hindering my progress. So I tried NeoVim, and it was kind of a nightmare. I know many people enjoy tinkering with Lua to get NeoVim working as they want, but I found it more of a barrier to productivity than anything else.

        So then I learned about Helix, and it seemed like a love letter to devs that just want a modal in-terminal editor that works out of the box and has modern features like LSP support, DAP, etc. Also it’s written in Rust by good maintainers. I haven’t looked back, because the Helix + Tmux combo is incredibly versatile.

      • Not the OP, but I switched to helix, because I always wanted to learn something vim-like, and helix is just perfect for that. It’s simple, working great without any configuration, and has nice keybindings.

    • if you want even more frictionless experience and save a few megs of ram check out wezterm, it does a pretty good job of integrating multiplexing into terminal. also it’s very extensible as it’s configurable with lua.

      on a side note, I had some stability issues with vscode-neovim where it’d crash it in worst cases.

    • With these modern extensible text editors the line between IDE and editor is too blurry to really tell. Many things people would agree are IDEs (like Eclipse) are entirely based around a plugin architecture too. I don’t think it’s worth it to split hairs over whether Visual Studio Code and similar programs are or aren’t IDEs. With enough plugins, they’re IDEs. With too few, they aren’t. Where that line is is entirely subjective.

      • You also run into different sets of tools that define an IDE. And especially with language server protocols giving almost any text editor access to the only things that were ever strictly the domain of IDEs, I think it’s safe to say we live in a golden age of being able to write things with as much or as little assistance as you want

  • Nope, at work, we use JetBrains IDEs and for my personal stuff, I’m using Kate.

    Seeing the hype wave for VS Code was so bizarre, like millions of people discovered features that were just bog standard in IDEs for a long time. Two colleagues tried to sell it to me and the features they chose to do so with, were the commit GUI and the embedded terminal.

    My best guess is that if you weren’t a programmer, then you didn’t use an IDE and there just wasn’t many good editors on Windows. Like, Notepad++ has been there since forever, but it doesn’t have that many features. And Sublime has been around for a long time, too, but never made it big.

  • VS Code is a great text editor for me. I write Markdown documents, manipulate bulk strings, and diff files with it. Aside from small scratch projects, its consistency and reliability as an IDE is varied for me. It’s far from “just works”, at least for the types of things I do (C, C++, C#, Rust) and isn’t really on my list of editors I’d recommend for those workloads.

    You can make it work, but it’s going to require extensive time spent figuring out what extensions to use (and their quirks), ensure that you have a working setup to the language server, and learn how each environment wants you to setup its tasks and launch configurations, if applicable. Unlike larger IDEs like VS or Rider, it doesn’t have a consistent “new project” process either, so you’re on your own for that.

  • I mostly use VS Code as a simple text editor with some of the CSV plugins. Though with JetBrains coming out with Fleet I’ve started to use that more. It doesn’t have plugin support yet so it’s not getting a lot of use.

    For everything else I use whatever JetBrains IDE fits. For work, it’s mostly IntelliJ, DataGrip, PyCharm, and DataSpell. At home, it’s IntelliJ DataGrip and CLion. I guess I’ve kinda drank the JetBrains KookAid, but to me, it’s worth the subscription to the all products pack. Especially if you are a polyglot since you keep a consistent IDE experience.

  • Funny to read VSCode described as an IDE.

    Where I work, I’m the weird one for preferring VSCode over Visual Sudio or Rider.

    I prefer using a terminal to run build tasks and execute tests and do version control, and have mostly Language Server stuff integrated into the editor.

  • If you’re already doing vim an tmux then vscode is not be worth it. The main draw of VSCode is LSP but you can get that from either COC or nvim+lspconfig. Those will still take more effort than vscode but it’ll be more familiar.

  •  Oscar   ( @oscar@programming.dev ) 
    link
    fedilink
    English
    52 months ago

    I used vscode for a few years, but I eventually went back to neovim/tmux. It’s a lot less resource heavy, and it’s easy to just ssh and jump in from home. I also much prefer a modal editor and I don’t want to have to touch a mouse.