What is Vim?
Who uses Vim?
Why developers like Vim?
Here are some stack decisions, common use cases and reviews by companies and developers who chose Vim in their tech stack.
But customization can only get you so far, and there were little things that I still had to use the mouse for, such as scrolling, repositioning lines on the screen, selecting the line number of a failing test stack trace from a separate plugin pane, etc. After 3 years of wearily moving my arm and hand to perform the same repetitive tasks, I decided to switch to Vim for 3 reasons:
- your fingers literally don’t ever need to leave the keyboard home row (I had to remap the escape key though)
- it is a reliable tool that has been around for more than 30 years and will still be around for the next 30 years
- I wanted to "look like a hacker" by doing everything inside my terminal and by becoming a better Unix citizen
The learning curve is very steep and it took me a year to master it, but investing time to be truly comfortable with my #TextEditor was more than worth it. To me, Vim comes close to being the perfect editor and I probably won’t need to switch ever again. It feels good to ignore new editors that come out every few years, like Atom and Visual Studio Code.
- Go because it's easy and simple, facilitates collaboration , and also it's fast, scalable, powerful.
- Visual Studio Code because it has one of the most sophisticated Go language support plugins.
- Vim because it's Vim
- Git because it's Git
- Docker and Docker Compose because it's quick and easy to have reproducible builds/tests with them
- @Archlinux (wtf it's not here?!) because Docker for Mac/Win is a disaster for the human's central nervous system, and Arch is the coolest Linux distro so far
I use Vim for text/code editing because when you starting understanding how it works (it take some time but it's worthy) you just fall in love with the tool!
The big advantage is that you can edit a text file anywhere if you are working in the unix environment (it may be possible to use it elsewhere also).
The configuration can be easily setup if you are using a dotfiles repository like mine: https://github.com/MartinDelille/dotfiles.
I have chosen Visual Studio Code after testing a lot of other editors like Atom, Sublime Text (with legal license), Vim or even Notepad++ because it is the sum of all their virtues and none of their defects. It's fast, it has all the tools and plugins I need to work, and it's pretty and very good optimized. It has what I need to work and nothing more. And the main plugins works like a charm. Developing for React or Flutter is amazing. Even the TypeScript plugin works great. I like how IntelliSense works, and all the extra tools to code remotely using #ssh, access #RESTfulAPI or event manage projects or collaborating remotely. Thanks #Microsoft for Visual Studio Code.
This is the third Stack Decision of this series. You can read the last one to catch up (link below).
Josh is a machine. He cranked out the rewrite of the site and as well as the Amazon S3 syncing/permissions/
content-type scripts in less than a week (with a full time job + 2 small kids at the time). The new site had/has a section where you could try out all of the Bootswatch themes on our site and while it might sound silly, it showed me that he goes above and beyond and I totally lucked out.
Anyway, Josh decided to go with Node.js, ExpressJS, Jade (now called Pug), and configs with #yaml, all things I have read about but never used in production. I quickly found out Josh was a Vim user (still is), because every Jade file he worked on had
//- vim: ft=jade sw=4 sts=4 et: at the bottom.
Everything was running smoothly, I was encouraged by David (co-founder from part 1) to take a vacation. I took him up on that. Unfortunately, my timing couldn’t have been worse. More on that in part 4.
AMA below 👇
We use Neovim because it is the most productive and fastest text-editor/IDE available. We chose Neovim over Vim because of the community behind it. We prefer the vision of Neovim of that of Vim. To stay productive across multiple machines on any OS Neovim is the only solution that we see fit.
- Vertically Split Windows
- Flexible Indenting