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)

  • onlinepersona@programming.dev
    link
    fedilink
    English
    arrow-up
    5
    ·
    edit-2
    1 year ago

    They are not bloatware, IMO.

    When I see people inserting printfs into their code just to be able to debug, I can’t help but cringe. Proper IDEs make debugging so much more easy.

    Also people who manually go-to source by a “Ctrl+Shift+F” (or grep or ripgrep or whatever), have code completion without context (as in suggestions of words that exist in the file, but have nothing to do with what it should be completing), refactor by “Replace All”, and then claim they are more efficient than IDEs, … I’m not sure they have ever bothered learning how to use an IDE instead of cram a bunch of arcane emacs or vim shortcuts into their brain to achieve what a simple button press in an IDE could do.

    Good IDEs also have stuff like code coverage indicators (run tests and show which parts of your code are covered), “go to that broken test”, “go to the line in the stack trace”, “execute the remote debugger on another system”, database browsers with stuff like query execution analysis, GUI builders, “show me the documentation of this item”, and so much more.

    I find it extremely hard to go back to using a dumb editor (be it notepad, sublime, vim/nvim/lunarvim/astrovim/…, emac/spacemacs/…, Kate, etc.) after having experienced the ease of development I get from an IDE.


    But back to your question: “what can be considered bloat”. Well, all the things you don’t use can be considered “bloat”. If you don’t use a database, well loading the database functionality in an IDE may be considered useless. If you don’t use a debugger and like being a printf cave-man, then the debugger is useless. If you want to click on a stack trace and be taken to the source code, then that can be considered bloat. If you use git (or whichever VCS you use) manually, then a commit dialog with rebase support might be useless. And so on an so forth.

    Also, if all the development you do is on a remote server with exclusive terminal access, then a GUI IDE might be bloat.

    Or if you have a machine with 4GB of RAM and can only open Chromium with a few tabs, then sure, opening an IDE might seem like bloat.

    Or if you want to have a startup time of milliseconds, but spend more time hitting K or the down arrow to find that symbol instead of just “go-to source”, sure then an IDE is bloat.

    But most importantly, if you IDE doesn’t support the language you’re using and has no syntax highlighting, then it is downgraded to an editor.