News for hackers. Stuff that matters.
Re:Everyone Who Tried to Convince Me to use Vim was Wrong (2... by marssaxman on Thursday April 04, 2013 @01:06PM (#5493742)
What are these people doing that makes such miniscule micro-optimizations of text-editing performance matter so much?

Me, I type code. I copy & paste code. I do global searches on the source tree, and every now and then on a single file. The editor has file-type sensitive syntax highlighting, which is nice enough but not all that important. And that's about it: that's all you need to work as a professional software developer.

So when I hear people getting all worked up about these antique editors, it sounds a lot like listening to a bike snob go on about fixies.

Re:Everyone Who Tried to Convince Me to use Vim was Wrong (2... by mindstab on Thursday April 04, 2013 @01:09PM (#5493758)
Sounds like a classic case of pg's "Blub paradox"

http://www.paulgraham.com/avg.html

Re:Everyone Who Tried to Convince Me to use Vim was Wrong (2... by fusiongyro on Thursday April 04, 2013 @01:35PM (#5493935)
It reminds me of this passage from book 1 of Chuang Tzu:

"There is also a bird there [in the bald and barren north], named P'eng, with a back like Mount T'ai and wings like clouds filling the sky. He beats the whirlwind, leaps into the air, and rises up ninety thousand li, cutting through the clouds and mist, shouldering the blue sky, and then he turns his eyes south and prepares to journey to the southern darkness.

"The little quail laughs at him, saying, 'Where does he think he's going? I give a great leap and fly up, but I never get more than ten or twelve yards before I come down fluttering among the weeds and brambles. And that's the best kind of flying anyway! Where does he think he's going?' Such is the difference between big and little."

http://terebess.hu/english/chuangtzu.html#1

I actually agree with marssaxman (and I'm not certain that Chuang Tzu is equating big with good and little with bad), but clearly whether the choice of editor is significant is a question of perspective, and everybody is going to have a different one. I used to care quite a bit about editors. Now I see a lot of our industry tool fetishism as rather unproductive. But I have seen people use the hell out of Vim and it's really quite impressive. Just not a skill I personally feel a strong need to develop.

Re:Everyone Who Tried to Convince Me to use Vim was Wrong (2... by abraininavat on Thursday April 04, 2013 @01:44PM (#5493995)
It's not a skill most vim users care whether you develop, either. I don't mean that in the aggressive way it may sound.

Vim users like vim for some legitimate reasons (e.g. ubiquity) and some illegitimate reasons (e.g. speed). But to my eyes, it's typically the users of heavy IDEs who seem to be insecure in their choice, to the point that they get offended by the fact that vim works for others. Take marssaxman as a case in point.

Re:Everyone Who Tried to Convince Me to use Vim was Wrong (2... by fusiongyro on Thursday April 04, 2013 @01:54PM (#5494081)
I'd find it easier to agree with you if it didn't feel like the only aggressor in the editor wars is Vim. But ultimately, "vim is amazing" blog posts are about as interesting as monad tutorials. They're just verbal droppings excreted by young minds that are easily blown. Nothing to get worked up about, but sometimes fun to pick through.
Re:Everyone Who Tried to Convince Me to use Vim was Wrong (2... by abraininavat on Thursday April 04, 2013 @02:07PM (#5494165)
We disagree on which party is the aggressor, but agree on the rest. As a vim user, I don't think vim is amazing. As a NetBeans user, past Eclipse user, and past Visual Studio user, and sometimes Sublime Text user, I don't think they're amazing either. Though Sublime Text 2 is quite well done.

As a clojure hobbyist, Light Table might one day be amazing. But it's not yet.

Re:Everyone Who Tried to Convince Me to use Vim was Wrong (2... by archagon on Thursday April 04, 2013 @04:33PM (#5495115)
I don't think it's a matter of insecurity. In the decades since vim was released, we've made drastic improvements in UX design that have made computing much more accessible and intuitive. (And we're still moving forward at a rapid rate — just look at the stuff that people like Bret Victor and Chris Granger doing!) And yet, so many programmers are adamant on sticking to 20th century editors and obscure key commands, even sometimes (sometimes!) at the expense of usability. I don't think it's particularly offensive to wonder why such old tools are still so popular, especially when for most people the thinking part of programming is what takes the most time.

Additionally, your tools shouldn't define you as a programmer, and yet I often see people getting shamed for using an IDE instead of vim/emacs/whatever.

Re:Everyone Who Tried to Convince Me to use Vim was Wrong (2... by abraininavat on Thursday April 04, 2013 @05:13PM (#5495342)
But there's this misconception that we who use vim are simply ignorant of these amazing IDEs that have changed the way everyone program and which will make your coffee in the morning.

I've used IDEs, a lot. And not decades ago, I try new IDEs out all the time. When I write Jenkins plugins it's in NetBeans. I have tried out SublimeText 2 quite a bit. I used to write games so I spent all my time in Visual Studio with Visual Assist X.

Given all that, when I want to write some C++ I fire up vim. Not because I'm unaware of all the IDEs out there and all they can do. But because I'm very efficient using vim, find, grep, sed/awk, etc.

It's not offensive to wonder why such old tools are still so popular, but it's offensive to assume that they're popular because their users are ignorant. Maybe you just haven't gotten it yet (and won't). Or maybe we just have different use-cases. The vim commands obviously aren't obscure to me since I know them.

I agree that your tools shouldn't define you as a programmer. Clearly I wouldn't shame anyone for using an IDE, since I do all the time when it makes sense to. The problem is that many IDE users just can't accept that I use vim because I work well in it, not because I think it's trendy. I can work well in any environment you throw me into, because 90% chance it has vi, and otherwise it has Notepad. Most VisualStudio users can't say the same. Fine, they don't think that's an important skill, I can accept that, just don't tell me it's not important to me.

Re:Everyone Who Tried to Convince Me to use Vim was Wrong (2... by coldtea on Thursday April 04, 2013 @07:00PM (#5495851)
Or, on the contrary, a classic case of what psychoanalysis calls the "narcissism of small differences", ie. getting a superficial sense of one's own uniqueness based on marginal and superficial differences.

As in: "I use Vim, I'm so much better than those blub Sublime Text programmers"

Re:Everyone Who Tried to Convince Me to use Vim was Wrong (2... by pacala on Thursday April 04, 2013 @01:27PM (#5493876)
I don't see the similarity. Would you please substantiate your claim?

Going to the article you cited, the ultimate magic appears to be the use of macros. Defining composable (mini-)languages that are appropriate for a given domain is indeed very powerful and produces significant reductions in the amount of code typed to solve the domain problems. By the way, ASTs for domain-specific languages can be implemented in most common languages via very mundane enums, unions and switches. But I digress.

"Text editing" problems are much simpler than "build an e-commerce web-site" problems. While both Lisp and Vi happen use macros, this feels more of a coincidence. The actual need for macros is much higher in the ViaWeb scenario.

Allow me to reiterate the OC comment: What is it that a ninja text editor actually does with his super-human powers?

Re:Everyone Who Tried to Convince Me to use Vim was Wrong (2... by disgruntledphd2 on Thursday April 04, 2013 @01:44PM (#5493994)
OK, I'll bite. I am a sometime programmer, mostly a data analyst. I acquired Emacs less than two years ago, mostly because it could highlight both LaTeX and R code for me, and allowed the evaluation of R code in an attached buffer.

It was awful, I tried it twice before I actually succeeded in switching to it. But eventually, I got used to all the arcane keyboard shortcuts, began to appreciate the power of a program that allowed me to interact with everything (well, except for ncurses based terminal applications) and I became hooked.

I firmly credit Emacs for making it easier for me to switch to new languages, I've learned more about GNU tools from info than from anywhere else, and I absolutely adore keyboard macros (as they always felt like something a program should be able to do). So, for me at least, the benefit of learning this arcane program was that it exposed me to a method for learning new things while still having some level of skill in the environment.

That being said, I really need to learn some vim, for the logging into a remote server with no permissions scenario.

Re:Everyone Who Tried to Convince Me to use Vim was Wrong (2... by mindstab on Thursday April 04, 2013 @02:03PM (#5494139)
He basically said he uses a text editor for X subset of text editor features and can't see why Y set (where Y > X) would be of any more use to any one. That's classic Blub. Until you learn them and use them you can't really "envision" why they are any more useful than your current workflow.
Re:Everyone Who Tried to Convince Me to use Vim was Wrong (2... by marssaxman on Thursday April 04, 2013 @02:47PM (#5494495)
I can envision all kinds of useful tools an editor might offer; I've implemented a few of them. What I can't imagine is how any number of fancy editor features would ever add up to significantly higher productivity, given that every programmer I have ever met spends an order of magnitude more time reading, thinking, and discussing than actually editing code.
Re:Everyone Who Tried to Convince Me to use Vim was Wrong (2... by w0utert on Thursday April 04, 2013 @03:51PM (#5494836)
I don't disagree with that last sentence, but even acknowledging that, getting a whole lot more editing done in a whole lot less time, using significantly less keystrokes, makes for a much more enjoyable (and almost by extension: more productive) working experience. Not many things in programming are as soul-sucking as repeatedly having to bash the same keys or mousing and clicking around to translate your thoughts into working code. I think you are really underestimating the usefulness of some of the things you can only do with command-mode editors such as vim, if you think their only merit is saving a few seconds of typing.
Re:Everyone Who Tried to Convince Me to use Vim was Wrong (2... by tome on Thursday April 04, 2013 @03:09PM (#5494620)
It's not about saving time per se, it's about saving context switches and wasted brain cycles.
Re:Everyone Who Tried to Convince Me to use Vim was Wrong (2... by lifeformed on Thursday April 04, 2013 @01:33PM (#5493922)
Yeah, I feel like actual typing makes up only a small fraction of the development I do. I spend much more time thinking about code and structure, doing research, debugging, than just typing out brand new lines. But I guess it depends on the kind of project. I'm working on some more algorithmic stuff in game dev, whereas I guess someone making a website would want to be slamming out html asap.
Re:Everyone Who Tried to Convince Me to use Vim was Wrong (2... by philh on Thursday April 04, 2013 @02:40PM (#5494439)
I can cut with a blunt knife, and it might not slow down my cooking appreciably or at all, but I'd rather just use a sharp knife. (And my wrists will thank me for it, if I do a lot of cutting.)

Even if Vim keybindings don't make me any more productive, they sure make my life more pleasant.

Re:Everyone Who Tried to Convince Me to use Vim was Wrong (2... by lloeki on Friday April 05, 2013 @02:13AM (#5497040)
> What are these people doing that makes such miniscule micro-optimizations of text-editing performance matter so much?

This is not about time optimisation[0]. If your current editor does not feel like a hurdle to you, then certainly don't change it (you have the right to be curious though :-)

[0]: https://news.ycombinator.com/item?id=5448983

Re:Everyone Who Tried to Convince Me to use Vim was Wrong (2... by pekk on Thursday April 04, 2013 @01:15PM (#5493794)
That isn't the right way to look at it. Tools can do things more or less clumsily, more or less efficiently.
Re:Everyone Who Tried to Convince Me to use Vim was Wrong (2... by bb0wn on Thursday April 04, 2013 @01:33PM (#5493924)
Extra keystrokes add up over time. I wonder how much time I've saved implementing * and # into my movements. Considering that I was either C-f or C-b -ing (or in my earlier days, j and k -ing) through my files, probably a shitload.
Re:Everyone Who Tried to Convince Me to use Vim was Wrong (2... by abraininavat on Thursday April 04, 2013 @01:26PM (#5493869)
I do all those things in vim. There are things which editors can do which vim is quite bad at, but you apparently don't do any of them.