3 ms·
I have to say as someone in tech, one of my "personal embarrassments" is that I still only know how to use vim on a basic level. I often see my coworkers flying
by _fat_santa 2y ago
I have to say as someone in tech, one of my "personal embarrassments" is that I still only know how to use vim on a basic level. I often see my coworkers flying through our codebases in their custom vim/nvim setups and I gotta say I get a bit jealous.
But every time I think about learning vim I always go back to the argument that it's just a tool to get a job done and right now, I'm very good with one particular tool (vscode) and between my dayjob and other responsibilities I just can't justify the time sink to learn vim to a level where I can be "professionally productive". For now I mainly use it for git and the occasional markdown document I need to create on the fly
But beyond that I really admire vim and nvmim. The fact that my coworkers can use a 30 year old text editor and extend it to support the latest and greatest LLM's and language servers is just mental to me.
I hope Bram is up in heaven right now, teaching god how to quit vim.
- kombine 2y agoAs someone who used VS Code for many years and before that PyCharm, it only took me a couple of weeks to regain full "professional productivity" after switching to Neovim. But it will take me years to master Vim.
- jaimebuelta 2y agoFor anyone that wants to learn Vim I really recommend “practical Vim” [1] . It’s a fantastic book that really gets into developing the right mindset to use it. It´s great once you “get it”, but it’s a different concept from the rest of text editors. Once you learn the basics, you’ll do great advancements in little time. To me, it’s the best tech book that’s I’ve read. It’s really that good. [1] https://pragprog.com/titles/dnvim2/practical-vim-second-edition/ https://pragprog.com/titles/dnvim2/practical-vim-second-edit...
- ethagnawl 2y ago`vimtutor` is also excellent and most folks either already have it or can get it in the next few minutes.
- lukaslalinsky 2y agoI'm similarly embarrassed about only knowing vim on a basic level, but I've actually been using it as my main editor for programming for close to 20 years. I still navigate using arrow keys, for example. After years of tweaking, I now use nvim with the default config and I'm pretty happy with the minimalism. Despite only having very basic knowledge, I'm still more comfortable in vim than most other editors. Only the recent wave of AI assistants is getting me to use it less often.
- wruza 2y agoThere’s nothing wrong with arrow keys, Esc or mouse. Using Vim doesn’t mean you have to buy into elitist pianism. Personally I don’t care about typing speed because I map, abbr and snippet code “to death”. All I want is to free my mind (not hands) from mundane work as much as possible and h vs left arrow doesn’t help with that at all. I don’t even land on homerow when I take the keyboard. It’s more like qwed kop' and changing.
- t_mahmood 2y ago[dead]
- et1337 2y agoI highly recommend the VSVim extension for VSCode. There’s no need to dive into the overwhelming world of customizing vim. You can get all the benefits of modal editing in your existing editor. In fact VSCode is even better with its built-in multi-cursor support.
- iLemming 2y agoThere is no such thing as "Vim as an extension." I've tried so many different Vim extensions in different editors, IDEs, web browsers, etc. None of them are without some glaring deficiencies, big and tiny annoyances. With perhaps the only exception - Evil mode in Emacs feels like a built-in thing; you forget that it's an afterthought, an extension. It works as if it was designed to have it from the get-go. Yet, I agree, if you must use VSCode, IntelliJ, Sublime, Emacs, etc. - you don't have to unlearn your vim skills. What's great about vimming - it's like riding a bike, you learn it once, you can do it anywhere.
- yjftsjthsd-h 2y agoEh. I use vim. I like vim. But what matters is that you have a tool that works. If that's vscode, and you're okay with that being your tool[0] then there's nothing wrong with that. [0] I personally wouldn't like to be tied to a tool that phones home to and is by Microsoft, but plenty of people don't care; so long as it's an informed choice that's completely legitimate.
- skydhash 2y agoI learned both Emacs and Vim (VIM for its speed, and emacs for its versatility). As a commenter pointed out, it’s all about freeing the mind. When you’re sure that an action is going to get a specific result, you can just do it and not think about doing it. While I can do most basic actions in whatever editor, there are workflows that are only possible in Vim/Emacs. One example is switching effortlessly between writing code, testing it, fixing it, managing the files, versionning them. Not a speed boost, but a flow boost.
- randotheenedFl 2y ago[dead]
- iLemming 2y ago> every time I think about learning vim I always go back to the argument that it's just a tool to get a job done Tools are tools; their value is not so much with the features they carry but with our abilities to utilize them with joy. If someone perfects their workflows using notepad.exe, telling them something is wrong with that is like forcing a grown-up to "eat properly" even though they've been holding their spoon since childhood in their left hand, like a pencil. If you try, however, to focus not on the tools themselves but the big ideas they convey, that might change your perspective on many things. At some point, after many cycles of frustration, amazement, inspiration, and awe, you will learn to appreciate certain ideas. You are right to admire Vim - its main idea of modality is a wonderful, beautiful, powerful, and pragmatic model. I, for example, even though these days rarely use Neovim itself, consider myself "a diehard vimmer". I use that model everywhere - in my terminal, my editor, my browser, system-wide - with my window manager. For example, I control the volume, playback, and speed of my videos and my music with home-row keys. The incredible instinct and dexterity one can build over time can be mind-blowing. It's not about "building a discipline to not touch the mouse or arrow keys"; it's about realization that you can do without them - "do not try to bend the spoon...", etc. Some other tools also exhibit the use of great ideas. Emacs builds on the cornerstone of a different, yet incredibly powerful idea - the idea of practical notation for lambda calculus, which is known as Lisp. Lisp probably can be crowned as one of the most important ideas in computer science. Understanding it makes it hard to think of anything more influential than Lisp. Any programmer who dismisses the idea of Lisp based on one concrete implementation of it is misguided. VSCode carries the idea of an editor built on top of a browser, which turns out to be not so bad of an idea, after all. Cursor - the idea of tight LLMs integration, etc. And it's not just the editors and IDEs; take any of these and you find some beautiful ideas behind them - Unix, Git, Make, Jupyter, React, Docker, SQLite, Org-mode, etc. Each of these tools embodies a fundamental idea that has proven influential and valuable in computing. Borrow good ideas, try them, practice them, implement them into your life, expand upon them. Understanding the core of the ideas is empowering. And often it liberates you from the burden of specific implementations - i.e., you don't have to use Neovim to appreciate the idea of Vim.