3 ms·
Don't use Vim for the wrong reasons
- donutshop 4y agoThis made me chuckle "Your next recruiter, your next colleagues, your next crush won't care about Vim. Vim is not cool and you are not cool for using Vim"
- taskforcegemini 4y agothis can be a smelltest. in whichever job he is right with this quote, you dodged a bullet for not getting
- nickd2001 4y agoI must say, some of the nicest and most fun people I work or have worked with, are big vim users. Maybe that just means I'm weird though ;). Also, most recruiters won't care, but a minority might, and that's quite likely a cool place to work, IMHO of course. As for crushes, my wife, a ((mostly)-non)-geek, prior to meeting me, had heard of Linux and FOSS, thought it was pretty cool, and before we owned a MacBook was happily using Linux on old machines at home instead of Windows. I've never got around to really teaching her much vim, but I imagine her only objection would be lack of time. ;). caveat- we'd have married anyway, and I didn't show her any vim editing to impress her. ;) Might encourage our kids to learn vim one day, if they're up for it. Imagine if they submitted essays written in markdown using vim? ;) Joking aside that could save a lot of time if they did that then went to uni knowing it.
- actuallyalys 4y agoI largely agree with the list, but I'd like to push back a little. Vim isn't everywhere, but it can be brought more places than many IDEs. So "Vim is everywhere" isn't a realistic expectation, but there is a similar advantage. Similarly, the point about replicating IDEs is a little too sweeping. It depends on what IDE you're replacing, what features you want to replicate, and the quality of the plugins you're using. But it's absolutely right that, if you want a one-to-one replacement in terms of features and how integrated they are, I think you'll be disappointed. But if you're okay with fewer language-specific features that aren't integrated quite as tightly, you can have a good experience. I think the point about it not being tailored to your technology stack gets at the disadvantages of Vim better, actually. The other thing I'd say about IDEs is that you can use them alongside Vim. For example, when I'm actively working on a Python project I frequently write code in Neovim, but switch to pudb for debugging and PyCharm for refactoring. To analyze data, I often write all the code in Jupyter Lab.
- behnamoh 4y agoI wish the state of Python was better in the Vim ecosystem, but I guess for data science work, Vim (or any terminal-based editor) will never be enough: - data science involves drawing lots of graphs. an IDE (e.g., VSCode) shows them inline w/o any problem, but terminal apps open new windows to show images... then you'd have to close them one by one... - I've had great success with VSCode when it came to symbolic computation using Sympy. I absolutely love that it can display rendered Latex equations inside VSCode. In terminal apps, that would probably open a new window. - terminal could have a limit on input characters. with GPT-3, for example, I've had difficulty pasting a long prompt in iTerm 2, whereas VSCode handles it w/o any issues. - I've assigned a shortcut to toggle VSCode just like a quake-mode terminal, and it's quite fast (if not even faster than iTerm 2 quake-mode). So I don't get the complaints about VSCode being slow. Sure, there's a second or two of startup time, but even a poorly configured Vim/Neovim with lots of plugins could get bloated and slow. - Something I really like about IDEs is that you can sync your config and have an exact replica of your IDE on another machine. This syncing happens on the cloud (e.g., using your Github account), whereas terminal-based apps need you to backup their dotfiles frequently and git clone them on every new machine. I do get the appeal of living in terminal, and I tried so hard to configure my Neovim to be usable for Python development and testing, but in the end, I had to switch back to VSCode. I do miss ranger, telescope, and undoTree extensions, but others such as vim.surround I was able to have in VSCode as well (using VSCode Neovim extension).
- actuallyalys 4y agoIf I used Python exclusively for data, I probably wouldn't use Neovim, either, unless I were developing a library that didn't require visualizations. I use Neovim for Python web apps and scripts.
- hakfoo 4y agoI learned vi because my CS200 instructor said "it's the only thing that's pretty much guaranteed to be everywhere". While VIM obviously adds a cacophony of bells and whistles, being able to handle the "skeleton" of vi-- modes and navigation and the core commands-- will be a lifesaver some day. On the other hand, I can recall trying to fix a machine so hosed once that vi wasn't available; I think I had to use ed to bootstrap the recovery process.
- l3uwin 4y agoThe part about windows just doesn't hold up in my field. Linux is the dominant distro for servers, and a GUI/Xwindow is rarely a thing you'll have access to. Vim/nvim work just fine over SSH or on the console directly and handle python, bash, terraform, Ansible, etc... just as well as VScode but without the random crashes that completely fuck the ssh daemon resulting in a locked box I have to manually power-cycle.
- eternityforest 4y agoDoes VSCode have some way of fucking the SSH daemon I'm not aware of?
- rocket_surgeron 4y ago> Vim is an amazing text editor. Vim is not a text editor. It edits text, sure, but so does Outlook. Text editors don't have 400-page O'Reilly books, and 280-page "pocket" reference manuals. I don't know what it is, but Vim is not a text editor.
- graypegg 4y agoVim is incredibly useful as a consistant and portable set of shortcut keys and macros that you can bring into most IDEs/text editors with a VIM emulation plugin! I’ve been using VIM (keys) daily for years and touch the actual vim binary on my machine maybe twice a year.
- johncoltrane 4y agoNo, Vim is that binary on your machine that you touch maybe twice a year. The inconsistent and vaguely portable set of features you are referring to is something else that grew out of various people's frustration with non-Vim text editing and often limited knowledge of Vim itself.
- johncoltrane 4y agoAuthor here, and quite surprised to see it posted.