• bugsmith@programming.dev
    link
    fedilink
    arrow-up
    11
    arrow-down
    6
    ·
    1 year ago

    That’s a bit of a silly statement. Once you’ve installed a few extensions for your language (a language server and linting at minimum), it is effectively an IDE with a reasonably powerful debugger included. Just because it’s modular and not “batteries included” doesn’t make it incomparable.

      • bugsmith@programming.dev
        link
        fedilink
        arrow-up
        3
        ·
        edit-2
        1 year ago

        Sure. But I didn’t say it was either. I only pointed out that it’s silly to say “there’s no comparison”, when most functionality is easily achievable on both. And depending on language, it’s not even difficult.

        Edit: In fairness, I did say “it’s effectively an IDE”, but I stand by the point that after a few extensions - what is the difference? If I can debug, refactor, and and get complete intellisense (including finding declarations etc), I’m doing more or less everything I would in a dedicated IDE.

        • snowe@programming.dev
          link
          fedilink
          arrow-up
          3
          ·
          1 year ago

          I guess it depends on your goals. I install Intellij, or WebStorm, or PyCharm, or RubyMine, and I get a working environment right out of the box. I don’t have to figure out what functionality is missing, then go search for the most maintained and up to date plugin, hoping that it has all the features I need. It just works. I use VS Code a lot, every day, but it’s sorely lacking, even with all of the plugins it has, in basic stuff like refactoring an entire codebase, or just regular old code cleanup. I’ll give a few examples, they might have equivalents in the vs code ecosystem, but I have not been able to find them.

          1. Inspect Code

          In JB products I can choose Code > Inspect Code, from the menu bar, and have it show everything wrong with the project, including code that is never hit, code that is duplicated, Control Flow issues, Data Flow issues, typos, probable bugs, Security issues (including in your dependencies), migration aids, the list goes on and on and on. And it doesn’t just do it for one language in your repo, it does it for every file type. So you don’t have to install a plugin that finds security issues in your poms, and then one that finds them in package.json, and then another for your gemfile, etc.

          1. Structural Search and Replace

          This one is quite hard to describe, so I’ll let the intellij docs explain it for me. https://www.jetbrains.com/help/idea/structural-search-and-replace.html

          A conventional search process does not take into account the syntax and semantics of the source code. Even if you use regular expressions, IntelliJ IDEA still treats your code as a regular text. The structural search and replace (SSR) actions let you search for a particular code pattern or grammatical construct in your code considering your code structure.

          IntelliJ IDEA finds and replaces fragments of source code, based on the search templates that you create and conditions you apply.

          There are a ton of things that I can’t find equivalents for in VS Code, but these are two major ones.

          • bugsmith@programming.dev
            link
            fedilink
            arrow-up
            2
            ·
            1 year ago

            It’s that’s fine that you’ve got some examples of features that are more powerful in JB products. It would be a great shame if such a heavy and reasonably expensive program didn’t.

            But I’m not arguing that VS Code is better or worse. I’m arguing that it is comparable (on the sense that it is worth of comparison). Which it is.

            I agree that JB’s search is fantastic. Unmatched perhaps. All of that indexing it does when you open a project really pays off.

            But you can get a lot of JB’s functionality in VS Code. You can get a very good code inspection in several languages, Python being the premier example. You can also get excellent docker integration, excellent linting, a reasonable search and replace across all files, and a top notch debugging experience for some languages (Python being the premier example again).

            Sure JB products do some of that stuff better (at the cost of being heavier programs with significant start up time).

            I use both. I like both. I believe VS Code is very formidable and could be the sole editor a developer uses flr many types of projects (Web Development, Python projects, many Go projects too all come to mind).