DEV Community

Discussion on: Will Vim give me more productivity!?

Collapse
 
jonoyeong profile image
Jonathan Yeong

I used Vim for years, then went back to a GUI editor and my productivity skyrocketed. Most of my time in Vim was spent googling how to do things faster. And while I think I got to a productive phase, there was still a lot to learn before my productivity with Vim outweighed that of a GUI. One of the biggest issues for me was file management. I always had one vim editor open for each file, which became a nightmare on large projects.

If you wanted the best of both worlds, you can install packages that emulate vim for GUI editors like VSCode.

And to address this comment:

As i heard that you are not a developer at all if you can't use vim.

If you SSH onto a server you're not going to have access to a GUI editor. This is when Vim keybindings are handy to know. However, the basics is all you need here. If a developer is looking down on you because you don't know Vim, then they're either highly misinformed. Or someone you wouldn't want to work with anyway.

Collapse
 
_hs_ profile image
HS

When people get used to some stuff each change is slow and they tend to dislike or get frustrated by next thing. Reson I don't even try to use Vim is that I'm used to other editors and I don't intend to change it. Why would I? I can do rename function/method parameter, select next occurrence, and all that stuff in my preffered editors. Why would I want to change? So I guess same goes for you, you got so used to other editors that vim provides no improvements in productivity.

Collapse
 
psiho profile image
Mirko Vukušić • Edited

My life philosophy is that you have to force your brain to be open and train it with completely opposite solutions than you're used to, non mainstream, experimental, different. We are so trained to be efficient, to pick mainstream, not to question what we have learn, not to change standards much. Yes, we get efficiency fast, in the short term. In the long term, being open and putting challanges to your brain and constantly challanging\questioning "mainstream standards" you will get so much more benefits not directly related to editing and vim. Questioning those habbits constantly makes us move forward and be better. Lazy following the crawd will just make you efficient, but in a very narrow field. Anything out of ordinary will trrow you off. Those that go wide instead of narrow will adapt faster, learn faster, be much more creative and inovative to solve real life problems.

Thread Thread
 
_hs_ profile image
HS

As you sad not related to Vim. I switch languages on weekly basis but they are all similar. If time servse me right I'll focus more on Go, Scala, and Elixir to have some fun but I will never pick them in near future to develop in as I get the job done in others. Same as for Vim and any other thing, I might play with it but I'm getting paid to make things work not learn. There's no great benefit for your brain when under pressure looking for the right way to switch variable names and so on. Same reason I use IntelliJ-s compare for git. I merge faster and make waaay less mistakes. My life philosophy is be usefull not "smart". I have no use for web developer that knows in depth how CPU works yet can't make a simple features like CRUD in a manner that fufills clients needs and that is common problem in IT that people do not understand what feature has to do but they make it fast and scalable and secure although useless for end user

Thread Thread
 
psiho profile image
Mirko Vukušić • Edited

I managed like 30 people in IT outosurcing company, about a hundred passed through during my career. We had the exact same discussion many times. As a CEO/owner in that time, I completely understand your point and it's far from incorrect. But we also gladly spent money and time on educating people in different ways. NOT during a payed/deadlined project of course. But there are always opportunities! Do it then. It's hard to see the benefit of this fast. You have to spent years on the job to distinguish "wide" from "focused" and what each brings you. In simple and straightforward projects "wide" guys were always slower but would catch up fast if you gave them a few similar projects and usually outperform later. But as a manager, you wouldn't waste a resource like that on it. You would give him unusual, problematic client/project because there, "focused" ones would get lost, frustrate themselves and the client and end up being slower. Over years, "focused" ones end up being "senior developers" and sometimes "architects" in one or two fields. A point of frustration in the company for every stack change. "Wide" ones reach "architects" level sooner and more often, and more than occasionally they become heads of development or teams. Don't get me wrong, as the owner, I love and need both. But as a friend or even father, I insist on going "wide". It will always pay off in the long run.

So, don't just switch between React and Nextjs, between VSCode and Itellij. Switch between Vim and VSCode, between Linux and Windows, desktop and web, Rust and Javascript. Let's go even more extreme... use your left hand for a day to cut food, teach your left leg to use the break in the car (this one NOT IN THE TRAFFIC!!!!), try writing a small program on paper... goal is not to be good or better in any of this. The goal is to try, have fun, and learn different perspectives.

And yes, search for "5 monkeys and a shower" story online and read it if you haven't already (EDit: uh, forgot a very important note: as said, this is a "story" and not a real "experiment" and is most probably completely a fiction! However, it is interesting and I refer to it as I have witnessed similar behaviour with people (groups of), not monekys :)

Thread Thread
 
_hs_ profile image
HS

Daily work includes:
Kotlin, Java, Groovy, Python, JavaScript. (Did some C#,PHP,Ruby before)
Spring and Micronaut, some Vue just to check some stuff up and MapBox.
Neo4j, PostgreSQL, MongoDB. (Decided to drop Azure Cosmos DB)
VSCode, Sublime, IntelliJ and a dozen of DB UIs be it web or custom desktop UI.
Linux and Windows and different tools on it.
Messaging systems like Apache Pulsar.

I think that's quite enough for daily work. Playing with Go, Scala, and Elixir would introduce some new stuff but not much. Also following NAND-to-Tetris is quite fun to catch up on some stuff missing from the past BUT.

The only thing here to actually introduce some changes would be to learn how to program quantum computers and how they work. There's a free playground provided by IBM I think.

So no I don't agree that Vim would introduce any benefit to anyone. Different shortcuts, different way to use it, same goal to achieve, write code. Same goes for rest. Once you pass certain line there's no true benefit. You have some but is it really worth time ?

Thread Thread
 
psiho profile image
Mirko Vukušić

Great stuff! So what do you say when some young programmer tells you that he is focused on Javscript/React and that he is twice faster than you becuase of that? :)
Vim? It's not about Vim, it's about trying modal editors, and about focusing on keyboard and less on the mouse. Just another small thing on the list. But time and list is different for everybody. Nobody can get the list done, ever. But certainly wouldn't call it useless.

Collapse
 
ackmandesu profile image
AckmanDESU

I mean if you had one editor for each file you simply weren't using Vim correctly.

Collapse
 
meenachinmay profile image
Chinmay Anand

Thanks for sharing your thoughts.

Collapse
 
psiho profile image
Mirko Vukušić

A very strange comment. For someone using vim for years, is just hard to believe you were using one editor for each open file, that you haven't used Windows, tabs and buffers.

I'm using it for two weeks and use those already

Collapse
 
meenachinmay profile image
Chinmay Anand

😅😅finally somebody have guts enough.
But ya i agree with you.

Collapse
 
jonoyeong profile image
Jonathan Yeong

😂 TIL that I was using Vim wrong. I'll have to try it again! There's definitely the mindset of you don't know what you don't know. But can't say I can use that excuse when I was a vim user for years!