• @SW42@lemmy.world
    link
    fedilink
    1114 days ago

    You guys use editors? Real programmers only need a mechanical hard drive, a magnetized needle and a steady hand.

    • Rikudou_SageOP
      link
      fedilink
      73 days ago

      Well, IntelliJ is also plugin based, it’s just that most of the plugins are bundled and enabled by default and maintained by the same set of people as the core IDE, so there’s consistent quality.

  • @Meltdown@lemmy.world
    link
    fedilink
    193 days ago

    Maybe I just have a shitty computer, but I feel like as good as intelliJ is, it’s very slow compared to VScode. And fuck me if I’m trying to do anything in Android Studio.

    • @glorptex@lemmy.world
      link
      fedilink
      133 days ago

      It is slower. It’s a fully fledged IDE, VSCode is not so it will always be way faster, but that’s again this meme, JetBrains IDE’s are super powerful so I guess you can say what it lacks in speed it got in power. It’s also written in Java so it’s memory heavy, but it is what it is.

      I use both and I enjoy both. I would never however use JetBrains to open and edit a single file, its way to slow for that.

      • @Scrollone@feddit.it
        link
        fedilink
        43 days ago

        +1

        I use Visual Studio Code when I need to edit one files or two. JetBrains IDE when I’m starting a programming session.

  • sbird
    link
    fedilink
    English
    193 days ago

    vscode is actually a pretty decent code editor for my needs. I use VSCodium which is basically the same thing except lacking support for a few proprietary extensions (most notably the Microsoft C/C++ extension, so I use clangd instead which for some reason was way easier to set up with copr repo on fedora than either on windows or with flathub on fedora…)

  • @pixxelkick@lemmy.world
    link
    fedilink
    764 days ago

    quietly scoots his entire github repo for his neovim configuration and 200+ plugins behind his back

    Haha yeah totally

    • Victor
      link
      fedilink
      134 days ago

      What on earth do you need/use 200+ plugins for? Can you name a tenth of the uses off-hand? 😅

      • @pixxelkick@lemmy.world
        link
        fedilink
        203 days ago

        A lot of them are dependencies of other plugins.

        Stuff like icons support, and every little feature. Neovim is extremely minimalist to start, so you need plugins just to get something as simple as a scrollbar lol

        Things like git status of files and file lines, all your LSPs, syntax highlighting (for each language you work with), file explorer, you name it, there’s a lot.

        But what’s nice about nvim is for any of these given features, there’s numerous options to pick from. Theres probably a dozen options to choose from for what kind of scrollbar you want in your editor, as an example.

        So you end up with a huge amount of plugins in the end, for all your custom stuff you have configured.

        You have to setup yourself (though theres a lot of very solid copy pasteable recipes for each feature):

        • Scrollbar
        • Tabs(if you want em)
        • bookmarking
        • every LSP
        • treesitter
        • navigation (possibly multiple of them, I use both a file tree, telescope, and harpoon)
        • file history stuff
        • git integrations, including integrating it with the numerous other plugins you use (many of them can integrate with git for stuff like status icons)
        • Code commenting/uncommenting
        • Code comment tags (IE TODO/BUG/HACK/etc)
        • your package manager is also a package (I like lazy for wicked fast open speeds, neovim opens in under 1s for me)
        • hotkey management (I like to use which-key)
        • prose plugins (lots of great options here too, I use nvim for more than just coding!)
        • neorg, so I can use nvim for taking notes, scheduling stuff, etc too
        • debugger via nvim-dap
        • debugger UI via nvim-dap-ui
        • lualine, which is a popular statusline plugin people like to have at the bottom of their IDE for general file info
        • new-file-template which lets me create templates for new files by extension (IE when I make a .cs file and start editting it, I can pick from numerous templates I’ve made to start from, same for .ts, .lua, etc etc)
        • git conflict, which can detect and work with detected git merge conflict sections in any type of file and give me hotkeys to do stuff like pick A / B / Both / Neither, that sorta stuff

        The list goes on and on haha

          • @idriss@lemm.ee
            link
            fedilink
            22 days ago

            development stopped for a year (I see activity resumed yesterday) and I jumped ship to LazyVim, it feels much better and possible to self maintain the entire setup.

        • @theblips@lemm.ee
          link
          fedilink
          33 days ago

          I’m not judging (that much) but you can do pretty well with just telescope, undo-tree and the LSP stuff, no? Debuggers can make it very bloated, at that point I’d just fire up a real IDE just for debugging and get back to Vim to program

          • @pixxelkick@lemmy.world
            link
            fedilink
            43 days ago

            I still boot in sub 1s so I don’t know what you mean by “bloated”

            Lazy allows you to boot ultra fast by loading stuff in the background later, so “bloat” doesn’t matter

            nvim-dap does literally nothing until you trigger it, so it’s only impact on my startup is like 3 hotkey registrations :p

            It’s a perfectly fine debugger, works great. The fact I can telescope search to fzf my stack trace actually kind of makes it superior? Like you can’t do that sorta stuff in any other IDE I know of

            Also all my navigation stuff like telescope/harpoon/etc still apply when debugging, so I can literally debug faster jumping around the stack trace with hotkeys.

            Neovim doesn’t get any less awesome when it comes to debugging, a lot of it’s power still applies just as much haha

          • Victor
            link
            fedilink
            33 days ago

            To each their own I guess. 😊 I imagine some people consider the bloat to be that extra IDE you have to have laying around just in case you want to debug something.

        • Victor
          link
          fedilink
          13 days ago

          Makes more sense now I guess. 😅

          Tabs though? Neovim already has tabs support out of the box, right?

          • @pixxelkick@lemmy.world
            link
            fedilink
            13 days ago

            Sorts? Not tabs in the way you’d expect but it’s default ones can be sufficient

            Honestly though once you get pretty good with hotkeys you stop using tabs, for all intents and purposes harpoon is tabs, but better, and without the UI. You just mentally usually pick harpoon keys that make sense to save jump points to, like I’ll harpoon FooController.cs to c and FooService.cs to s and FooEntity.cs to e and so one

            And the I jump around with those keys. Usually when working I only need tops 5 harpoon or so for a chunk of work.

            • Victor
              link
              fedilink
              13 days ago

              Interesting workflow.

              When I’m in Helix I usually just use the buffer jump list, or quick jump with last buffer, or open the list of modified files (according to git), or use splits. All built-in functionality. 👍

              It always baffled me with (neo)vim how it was so powerful, yet so incapable unless you put in a lot of work. The potential is there, it just doesn’t deliver unless you basically build your own experience on top of the vim platform.

              It got to be too much for me, I think.

  • @F04118F@feddit.nl
    link
    fedilink
    64
    edit-2
    4 days ago

    Plugins on a universal open source IDE are a better system than specialised proprietary IDEs (that also share “core” code but it’s not open source).

    Fight me.

    Fair warning though: I know these

    /weakSpot
    :g/your confidence/d
    :x
    

    Neovim logo

      • @F04118F@feddit.nl
        link
        fedilink
        14
        edit-2
        4 days ago

        Pyright is the open source language server behind pylance and it works just fine in my neovim setup (in case you hadn’t recognized the commands and the logo). There’s also basedpyright if you have beef with pyright.

        Protip: let someone else manage your neovim setup: just use lazyvim.org

        • @lemonskate@lemmy.world
          link
          fedilink
          44 days ago

          basedpyright includes some nice features that Microsoft has otherwise gated behind the closed source Pylance. There’s also (in development) ty from Astral that I’m pretty excited for (ruff and uv have made writing python so much better for me).

    • @e8d79@discuss.tchncs.de
      link
      fedilink
      324 days ago

      Most of their IDEs you can use for free for non-commercial purposes and even if you need to buy them; when you compare software development to any other profession our tools are incredibly cheap. You can get all the Jetbrains IDEs for less than 300€. Compare that to a HDL simulator or a 3D CAD application like Autodesk. These easily cost several thousand euros each year.

      • @masterspace@lemmy.ca
        link
        fedilink
        English
        23
        edit-2
        4 days ago

        Autocad costs that much because Autodesk behaves anti-competitively and has locked firms into their proprietary tooling / file formats / training and the firms have no choice but to keep paying them.

        Their predatory behaviour towards the engineering industry is literally why I taught myself programming and switched to software development.

        They are a prime example of why you shouldn’t build your company around closed source proprietary software, but open source software that can be forked or self hosted in a worst case scenario.

        • @thevoidzero@lemmy.world
          link
          fedilink
          43 days ago

          Dam. Finally someone else who did something similar. I also changed my focus into more GIS and programming oriented work because of AutoCAD being what it is. I like working on open source software because I don’t suddenly lose all my work because I ran out of license or left my job.

      • @kautau@lemmy.world
        link
        fedilink
        64 days ago

        You mean subscribe to them right? You can’t buy Jetbrains products to use in perpetuity. I pay for their all products pack. They have a 40% continuity discount after two years, which is nice. I would agree they aren’t terribly expensive for commercial software, but they are competing in a space full of free and/or open source alternatives, unlike many production-level commercial softwares.

        That being said, their AI integration features are awful across the board, whether it’s their own AI or copilot.

        And while I much prefer jetbrains stuff to something like vscode, it’s way more about UI uniformity for me. VS Code extensions outside the top 20 tend to slap themselves wherever they want, with html/css dialogues that don’t fit the UI, and there’s often like 6 versions of an extension that’s like “this one is deprecated, but also the other one is deprecated, but the new one is made by microsoft but it’s actually 3 extensions now.” Whereas generally jetbrains extensions fit within my action panel, toolbar items, and can move widgets to different sides of the UI so that version control stuff, code analysis/structure stuff, external integration/database stuff, and project trees all get their own dedicated part of the workspace

          • @kautau@lemmy.world
            link
            fedilink
            33 days ago

            That’s pretty awesome, I didn’t know they had that. Seems like the sort of thing that should be like an EU enforced license structure. If anything it would make Adobe pucker their buttholes considering their asinine and predatory pricing strategy.

      • @glorptex@lemmy.world
        link
        fedilink
        13 days ago

        Yes, if you use some of them, if you use more of them they become more expensive so the toolbox is a good idea. Still expensive, but usually if you need this you either are a power user or you make money on what you are doing.

    • @dadabean@feddit.org
      link
      fedilink
      54 days ago

      Same. I use VSCode at work, because we need some of the features that are premium in Jetbrains products and the licenses are too expensive for my company.

  • @brianary@startrek.website
    link
    fedilink
    73 days ago

    If you want everything bundled instead of à la carte, that sounds more like eclipse to me. But then, I don’t understand how anyone can program in Java.

  • @normalexit@lemmy.world
    link
    fedilink
    83 days ago

    Recently switched to a new contract, which resulted in me switching from IDEA Ultimate to vscode. This picture is terribly accurate.

    In intellij I usually do code reviews by checking out the code and comparing the branch to origin/main to step through the changes. Just a right click menu option to compare branches.

    I took for granted that this is just a thing IDEs should do, so I looked in vain for a while before googling it and finding out I need a plugin for that. (If I’m wrong please help me find the button, I still believe it must be in there somewhere. Surely the owners of GitHub can compare branches?)

    • @owsei@programming.dev
      link
      fedilink
      73 days ago

      I don’t use VSCode, so I may be wrong, but I think it has version control integration out of the box (maybe just for git), an with it you can review merges and stuff

      I’ll try this today and comeback here

    • @glorptex@lemmy.world
      link
      fedilink
      13 days ago

      I use that extension called GitLenses, it provides a fair bit of git tools. Not sure if it has what you want as I use JetBrains more and usually do git on CLI anyways