I’m relatively new to programming, I’ve been learning C on linux using nano and it’s been very fun. I’ve recently fallen into the emacs/vim rabbithole and I’ve been watching videos about emacs, Doom, spacemacs, neovim and reading comments about people switching from this or that to another config or editor, and I’ve been a bit lost on what to do. Then I realised that I haven’t done any coding and spent all of my time focusing on editors. So here is my question (which has probably been asked many times) : what is the point of investing so much time learning all of this when there are some IDEs that are preconfigured with all the functionality a programmer would need ? Does learning neovim or emacs actually save time in the long run? I know that they’re much more lightweight than IDEs and I’ve been really enjoying using the terminal much more than my time on IntelliJ, but having an easy out of the box visual debugger, refactoring and jump into functions can be really helpful in the long run I think, especially when starting to write actual large programs. Nano is fun, but not a time saver. Why did you chose your editor?

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

    Then I realized that I haven’t done any coding and spent all of my time focusing on editors. So here is my question (which has probably been asked many times): what is the point of investing so much time learning all of this when there are some IDEs that are preconfigured with all the functionality a programmer would need ?

    I applaud you for realizing this so early on, and acting on it. I spent waaay too much time in rabbit holes, resulting in not doing anything productive and becoming overwhelmed.

    In short, learn vim keybindings for text based navigation - that is the game changer in being productive. Activate vim navigation in an IDE. Don’t try to make a terminal based IDE with vim plugins unless that is a hobby.

    • rastignac@programming.devOP
      link
      fedilink
      arrow-up
      1
      ·
      1 year ago

      I’m happy someone else is considering the time investment. I started using neovim since yesterday for the very purpose of learning key bindings that I deem useful. I’ll then move to a config already made with features I like or an IDE. Thanks !

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

        give “enabling in the IDE” a shot immediately. The best way to learn what keybindings are useful is by fixing the friction you have when actively using it. When you’ve mastered the basics you can then think “how can I improve this this thing that I hate that takes time”