5 ms·
Out of the hundreds of devs I've worked with, I can think of exactly two who use(d) vim to edit code with any regularity. Both are fairly proficient above-avera
by not_kurt_godel 8y ago
Out of the hundreds of devs I've worked with, I can think of exactly two who use(d) vim to edit code with any regularity. Both are fairly proficient above-average devs overall, but I'm pretty sure they also use IDEs heavily and only use vim for quick things. Beyond a certain level of codebase complexity, there is simply no way to do the job with a text editor, even with fancy macros. Vim is an elegant tool, but is simply outmoded for many modern development tasks in the same way that a hammer is outmoded by a nailgun. You might always need a hammer in your back pocket, but it can't compete with a nailgun for large-scale repetitive tasks.
- black-tea 8y agoIf I can't do a "modern development task" with emacs or vim and a smattering of standard Unix tools, then I question the sanity of said task. At the end of the day we're editing text. Plain text has stood the test of time exactly because you can process it with tools that everyone knows and have been around for decades. If you find yourself needing special purpose, proprietary tools to handle your code base then you should really reconsider where you're going.
- scarface74 8y agoReal coders boot up their computers and type CALL -151 ! And type 65C02 assembly. Now get off my lawn.....
- black-tea 8y agoLet me just remind you of what the GP post said: > Beyond a certain level of codebase complexity, there is simply no way to do the job with a text editor An absurd claim. How can you interpret my post as a "get off my lawn" type thing?
- scarface74 8y agoWell because it is. With a large codebase, things like navigating through a solution, automated code refactorings, intellisense, etc. can be done with IDEs. Do you all so litter your code with print statements to debug?
- black-tea 8y agoAre you just playing ignorant for fun? You must know that there are people out there hacking on the most advanced software projects we have such as the linux kernel or C compilers etc. and they don't all use IDEs.
- scarface74 8y agoAnd what percentage of developers is that? That’s about like the same bubble thinking of every developer works on the west coast making $300K a year that you see on HN. And some people also still write in assembly. I also thought that any high level language was useless. Then I thought anything more high level than C was for beginners. But I grew up and start being more concerned with making money and implementing solutions than having geek cred...
- black-tea 8y agoGood for you, man. I hope the money continues to bring you happiness.
- hibbelig 8y agoSane or not, it pays the bills... It really does help to get a reminder from the IDE regarding which methods exist and what their parameter lists are. For C, ctags works well enough I guess and we can complete function names that way. But for Java and C#, I can't imagine that going well.
- jjeaff 8y agoInteresting. From reading HN, you would think every coder worth anything is hacking away with emacs or vim on black and green terminal screens. But I suppose people that use emacs and vim are like vegans. Those that do, are definitely going to tell you about it.
- arcturus17 8y agoWhat’s with this vim vs IDE debate anyway - vim works wonderfully with the IntelliJ suite and many other IDEs. If you’ve been doing vim or emacs since the 80s then great but I’m not going to go through months of configuration hell to repurpose vim into an IDE when I can do it the other way around.
- not_kurt_godel 8y agoMy feelings exactly. Like I said, there's nothing wrong with a hammer (vim), but it's a poor use of time using one to fasten 3000 nails to frame a building. I think vim/emacs users get defensive and militant because they've invested significant time and effort into learning a specific set of skills that tie into their professional, and to an extent personal, identity. It's an understandable psychological defense mechanism to reject the notion that those skills are significantly less valuable nowadays, but it doesn't negate the fact that their judgement is being clouded.
- vp8989 8y agoThe world is jam-packed to the brim with posers, in every walk of life.
- scarface74 8y agoYou would also think that every coder lives on the west coast and makes $300K+ year....
- xfer 8y agoWould you mind being a bit more specific than using vague language and analogy? What are all these modern development tasks?
- VvR-Ox 8y ago+1 I use intellij for big projects because of the jump- and refactoring stuff but I know I could do it with VIM if I'd know it better. A good example is SpaceVim that enables people who don't want to configure everything to use VIM as an IDE that provides most of the tools you'd need for developing. E.g. it has a linter for python, mouse support and code-completion. I don't need much more to develop most of the time. VIM is awesome and I think what most people whining about it ignore is the fact it runs in a terminal (vs. some big bloated piece of sh*t).
- erpellan 8y ago* Find usages * Go to definition * Extract method * Introduce parameter * Inline variable * Rename method * Rename variable In a Jetbrains tool these are automatic / atomic operations.
- black-tea 8y agoWhat planet are you people living on? It's like you just whack the word "modern" on the front, stick your hands up and say "haha, you couldn't understand, grandad". Programmers have been doing these things since the beginning of time.
- not_kurt_godel 8y agoI programmed exclusively with text editors for a number of years. Of course you can do anything in a text editor that you can do in a modern IDE as long as you have patience. I would even go so far as to say that having the experience of using a text editor instead of an IDE is a valuable one; certain types of edits really can be done much more efficiently in vim than an IDE so it's an excellent tool to have at your disposal. But text editors simply can't match the sophistication and efficiency of a good IDE that is built to interact with your code programmatically from the ground up. For example, here is a list of refactoring operations that IDEA provides as atomic operations that can be done in a few clicks/keystrokes and instantly, safely undone with a single keystroke[0]: * Change signature * Convert Anonymous to Inner * Convert to Instance Method * Encapsulate Fields * Extract refactorings * Extract constant * Extract Field * Extract interface * Extract method * Extract Superclass * Extract variable * Extract parameter * Extract into class refactorings * Find and Replace Code Duplicates * Generify Refactoring * Inline * Invert Boolean * Make Static * Migrate * Move and Copy refactorings * Pull Members Up, Push Members Down * Remove Middleman * Rename refactorings * Replace Constructor with Builder * Replace Constructor with Factory Method * Replace Inheritance with Delegation * Replace Temp With Query * Safe delete * Type Migration * Use Interface Where Possible * Wrap Return Value Meanwhile, merely performing a simple pure-text find-replace across multiple files using vim and emacs is a chore. And better hope you don't screw it up because there's often no easy way to safely undo such a change, especially not with a single keystroke. The idea that even master-level users of vim/emacs could begin to hope to replicate the operations listed above with the depth, accuracy, and user-friendliness that IDEA offers is simply laughable. Any granddad worth his salt is perfectly capable of understanding that advancements in software have yielded tools that are by far and away objectively superior for a wide variety of development tasks. [0] https://www.jetbrains.com/help/idea/refactoring-source-code.html https://www.jetbrains.com/help/idea/refactoring-source-code....