Yes it's a bit annoying if you have to edit something on the fly on a server without a GUI - but fumbling around in vim for this small amount of time is still quicker than learning all the keybindings. and why are you vimming around on the server anyway? isn't that a red flag in the first place?
I have probs spent well less than 1 day in total working in vim, in my dev career.
whereas I spend 8 hours a day in an IDE which catches 80% of my mistakes for me and offers all sorts of other features to boot.
I have probs spent well less than 1 day in total working in vim, in my dev career.
Honestly it only really takes a day or two to learn most of what you need to know to be productive in Vim. One of the great things about Vim is that it doesn't actually have that many important keybindings but the ones it has can be composited in many ways.
Not that I'm trying to convert anyone but I think the 'learning cliff' meme is inaccurate and scares people off that might otherwise benefit from learning Vim.
Of course I use it partly because it was easier for me to know VIm and be able to edit stuff up on a glorified mainframe when I was in school than to constantly be pushing code up and down.
VIM users seem to install a ton of plugins to make it similar to a regular editor, which always seems like extra steps for a similar experience.
I only need to install 2/3 plugins to get a similar experience to my VSCode setup. If you remove themes from both I actually have almost the exact same number of plugins/extensions installed in both VSCode and Vim. The number of plugins you actually 'need' to add to get common behaviors between the two is small.
VSCode is great and there is still stuff I can do there that doesn't have a parallel in Vim but for 90+% of my daily work I can get the same things done faster in Vim than I can in VSCode.
One of the most salient features of our Tech Hiring culture is that there is so much bullshit. Everyone knows this. Each of us contributes his share. But we tend to take the situation for granted.
One of the most salient features of our Tech Hiring culture is that there is so much bullshit. Everyone knows this. Each of us contributes his share. But we tend to take the situation for granted.
Obviously I donβt have hard numbers but Iβm curious what you are sure that Vim canβt do that a full fledged IDE canβt.
Iβm honestly wondering because I havenβt run into much at all that I canβt cover in Vim. I donβt tend to work in languages with tons of tooling though so maybe that accounts for it.
And not everyone is luck enough to have an employee who will shell out for arbitrary licenses.
One of the most salient features of our Tech Hiring culture is that there is so much bullshit. Everyone knows this. Each of us contributes his share. But we tend to take the situation for granted.
Vim is one of those skills that's nice to have, but not necessary to be productive. The high upfront learning curve is not as high as you might think, and it does provide some tools to eliminate a lot of redundancy and inefficiency with typing, but it's usually not a force multiplier.
IMO, it really comes down to one question: do you find significant value in decreasing the time it takes to transform your thoughts into text on the screen? If so, then you should learn/use Vim. If not, then it may not be worth it for you.
I should add that I use the Vim key bindings for VS Code. So really I get the best of both worlds. I highly recommend that approach.
Vim at its core is a language for describing editing actions. The language goes all the way back to the first editor of UNIX, ed. The history of the tools and the language goes like: ed -> em -> ex -> vi -> vim. You can save repetitive editing actions as macros or scripts, and use them as you will.
A tailored IDE is usually the best for a particular language: .NET VB and C# work best in Visual Studio; Java and Kotlin in IntelliJ IDEA; Objective-C and Swift in Xcode. They are feature-rich, configurable, and user-friendly. People have invested in making them good tools for those languages. Similarly, many people have invested in making vim a good tool for C and shell script, which it grew up with, and other languages which do not have IDEs of their own. Vim provides a fall back semantic when the semantic analysis tool of the programming language is down or non-existent.
For further actions, you may consider blocking this person and/or reporting abuse
We're a place where coders share, stay up-to-date and grow their careers.
It's a waste of time to learn vim.
here's my reasoning.
Yes it's a bit annoying if you have to edit something on the fly on a server without a GUI - but fumbling around in vim for this small amount of time is still quicker than learning all the keybindings. and why are you vimming around on the server anyway? isn't that a red flag in the first place?
I have probs spent well less than 1 day in total working in vim, in my dev career.
whereas I spend 8 hours a day in an IDE which catches 80% of my mistakes for me and offers all sorts of other features to boot.
I was made to learn vim and all I needed to know was: I for insert, e for end, x for delete and :wq for "write quit"
It's useful but I wouldn't trouble myself to remember more
Honestly it only really takes a day or two to learn most of what you need to know to be productive in Vim. One of the great things about Vim is that it doesn't actually have that many important keybindings but the ones it has can be composited in many ways.
Not that I'm trying to convert anyone but I think the 'learning cliff' meme is inaccurate and scares people off that might otherwise benefit from learning Vim.
Of course I use it partly because it was easier for me to know VIm and be able to edit stuff up on a glorified mainframe when I was in school than to constantly be pushing code up and down.
What is your IDE of choice?
Only used JetBrains products, so - JetBrains.
I only need to install 2/3 plugins to get a similar experience to my VSCode setup. If you remove themes from both I actually have almost the exact same number of plugins/extensions installed in both VSCode and Vim. The number of plugins you actually 'need' to add to get common behaviors between the two is small.
VSCode is great and there is still stuff I can do there that doesn't have a parallel in Vim but for 90+% of my daily work I can get the same things done faster in Vim than I can in VSCode.
That seems like a very popular opinion except among those that have learned vim.
Now I'll switch to links to respond to your comments.
Mastering Vim grammar
Igor Irianto γ» Mar 6 γ» 6 min read
visualstudiomagazine.com/articles/...
onivim.io/
I have not found learning vim a waste and still get IDE benefits.
Shameless plug: dev.to/demianbrecht/you-will-pry-v...
I have learned vim enough to write part of the translated manual in french.
And I'm sorry but it would be delusional to think that vim gives IDE benefits similar to JetBrains IntelliJ IDEA :)
Right it's not a waste of time, it's fun
With the right plugins you can get most of the way there. I'll take 95% of the way there for free than 100% of the way for $150/year.
vim+plugins doesn't do 95% of a modern ide
and $150/year is like one or two hour of work for your employer, I'm pretty sure that he shouldn't care
I think you missed that I wasn't specifically talking about vim, but emulators and new IDE which provide vim's mode based editing.
Obviously I donβt have hard numbers but Iβm curious what you are sure that Vim canβt do that a full fledged IDE canβt.
Iβm honestly wondering because I havenβt run into much at all that I canβt cover in Vim. I donβt tend to work in languages with tons of tooling though so maybe that accounts for it.
And not everyone is luck enough to have an employee who will shell out for arbitrary licenses.
True, and that's why there is a space for both
onivim.io/ is not released yet so why would I compare with mature IDEs?
Using a modern IDE with vim's mode based editing is fine if that's something you like
Ah maybe that's why. Try out doing refactoring with Kotlin in JetBrains IDEA Community Edition
Are you feeling overwhelmed? Refactor your assumptions
Jean-Michel Fayard π«π·π©πͺπ¬π§πͺπΈπ¨π΄ γ» Jan 7 γ» 5 min read
When I did C++ and Java in school I definitely appreciated having more tooling around things.
Vim is one of those skills that's nice to have, but not necessary to be productive. The high upfront learning curve is not as high as you might think, and it does provide some tools to eliminate a lot of redundancy and inefficiency with typing, but it's usually not a force multiplier.
IMO, it really comes down to one question: do you find significant value in decreasing the time it takes to transform your thoughts into text on the screen? If so, then you should learn/use Vim. If not, then it may not be worth it for you.
I should add that I use the Vim key bindings for VS Code. So really I get the best of both worlds. I highly recommend that approach.
Vim at its core is a language for describing editing actions. The language goes all the way back to the first editor of UNIX,
ed
. The history of the tools and the language goes like:ed
->em
->ex
->vi
->vim
. You can save repetitive editing actions as macros or scripts, and use them as you will.A tailored IDE is usually the best for a particular language: .NET VB and C# work best in Visual Studio; Java and Kotlin in IntelliJ IDEA; Objective-C and Swift in Xcode. They are feature-rich, configurable, and user-friendly. People have invested in making them good tools for those languages. Similarly, many people have invested in making vim a good tool for C and shell script, which it grew up with, and other languages which do not have IDEs of their own. Vim provides a fall back semantic when the semantic analysis tool of the programming language is down or non-existent.