Hacker News new | ask | show | jobs
by NotANaN 2751 days ago
"Do Emacs and Vim users have some other characteristic that makes them more likely to succeed during interviews?"

I think the Interview Pass Rates chart makes it clear that the answer is a statistical "Yes", at least for Emacs.

2 comments

I've been almost exclusively an Emacs user since the turn of the millennium or so, even before I was a full-time professional programmer. I briefly tried out TextMate years ago, and I've tried out VS Code, but I stick to Emacs for day-to-day work, and the keybindings are pretty much hard-wired into me at this point.

At the same time, I hate and actively avoid typical tech interview processes, and I suspect my pass rate if I did a bunch of them would start out low and only grow after a while once I got used to "interview coding" (which is basically a separate skill from actual programming).

So I don't know why they see this effect. My first guess would be that it's a kind of survivorship bias; outside of the occasional splash of someone trendy inspiring some new users, using the classic Unix-y editors seems to correlate with older/more experienced programmers. Who, because they've managed to stick around as long as they have, probably can manage to get hired when they want or need to.

Maybe it’s because the editor was taught to students at places like MIT, Berkeley, etc?
More probably because editors with a steep learning curve (emacs/vi) tend to select for people more willing to invest effort in learning.

The same can be said for Go when Go was relatively new. You learnt [Go^H^Hnew thing] because you thought it was interesting or wanted to play, not because you had to.

As a secondary effect, editors in the likes of emacs/vi require a different mindset compared to an IDE when programming on large projects. There's no question that all IDEs in general have an huge advantage for "all things discoverability" (from project layout to built-in doc).

I personally rely much more on documentation and memorization than autocomplete, despite autocomplete-like extensions being available to both emacs/vi for quite a while. There's a steep hill to climb when approaching large, new codebases when working this way, and it definitely doesn't pay off for quick fixes.

That being said, I used anything from IntelliJ, NetBeans to VSCode and when thinking about "good editor" the first thing that comes to mind is: zero latency. If your computer is slower than you, there's a problem somewhere.

I learned emacs in the late 1980's -- it is now an ingrained part of my brain. I hate when I have to use an IDE w a different editor -- at least most editors (and GUI components like browser textfields) respond to common emacs key-sequences.
I learned vim and with me is hitting :w<cr> all the damn time. Not to mention pressing <esc> to leave insert mode.

Had to use Android Studio/Eclipse for some time but it was so much harder that I kept trying to find ways to use vim even if I had to memorize or copy/paste package dependencies from Android.

I honestly wish I could use some of the most advanced refactoring tools from IDEs into vim but the way I edit is so ingrained that it's simply not worth it.

This feature makes switching from macOS to most other operating systems annoying, because I keep trying to ^E and realize it doesn't work…
I hit C-x C-s all the time in IDE's and I think sometimes it inserts weird invisible characters into the source -- fun.
You'll need to explain this...