Hi experienced devs , I am a beginner programmer. I mostly use code completion and go-to source , and rename function and objects, code-pretty. Other features not so much. What features do you use often And what features are not that useful in an IDE and can be considered bloat? P.S.- Which is that one feature that you can’t live without?( sorry for sounding like tiktok wannabe)

  • Tom@programming.dev
    link
    fedilink
    arrow-up
    0
    ·
    8 months ago

    I’m reluctant to call much “bloat”, because even if I don’t use something doesn’t mean it isn’t useful, to other people or future me.

    I used to code in vim (plus all sorts of plugins), starting in college where IDEs weren’t particularly encouraged or necessary for small projects. I continued to use this setup professionally because it worked well enough and every IDE I tried for the main language I was using wasn’t great.

    However, I eventually found IDEs that worked for the language(s) I needed and I don’t have any interest in going back to a minimalistic (vim or otherwise) setup again. It’s not that the IDE does things that can’t be done with vim generally, but having a tool that understands the code, environment, and provides useful tooling is invaluable to me. I find being able to do things with some automation (like renaming or refactoring) is so much safer, faster, and enjoyable than doing it by hand.

    Features I look for/use most often:

    • Go to (both definition and usages)
    • Refactor tooling (renaming, inlining, extracting, etc).
    • Good warnings, along with suggested solutions. Being able to apply solution is a plus.
    • Framework integrations
    • User-friendly debugger. Ability to pause, drill in, and interact with data is immensely helpful with the type of applications I work on.
    • Configurable breakpoints.
    • Build tool integrations. Doing it on the console is… fine… but being able to set up what I need easily in the IDE is preferable.

    Features I don’t use or care so much about? Is there much left?

    • My IDE can hook up to a database. I’ve tried it a few times, but it never seemed particularly useful for the apps I work on.
    • git integration. I have a separate set of tools I normally work with. The ones in my IDE are fine, but I usually use others.
    • Profiler. I use it on occasion, but only a few times a year probably.

    I do code in non-IDE environments from time to time, but this is almost always because of a lack of tooling than anything else. (Like PICO-8 development)

  • coloredgrayscale@programming.dev
    cake
    link
    fedilink
    arrow-up
    0
    ·
    8 months ago

    The tight Integration of the debugger is a huge benefit over what a text editor would provide.

    Sure you possibly can add all the stuff to some text editors too, if you spend enough time / energy.

    • jvisick@programming.dev
      link
      fedilink
      arrow-up
      1
      ·
      8 months ago

      The thing about an IDE is how tightly integrated all of the tools are.

      If you list the features individually, surely there’s a way to add most of them to your text editor of choice - but the downside is that they’re now all fairly independent features, may not work as thoroughly or covertly, and you might end up with a slower editor altogether.

      Not to say IDEs are the peak of performance - but they tend to provide more robust tooling than is (easily) available in e.g. VSCode/emacs/neovim/whatever.

      It’s like using a specialized power tool - it’s not the right tool for every job, it’s probably a bulkier package, but if you know how to use it an IDE can make your life a lot easier for the right workload.