How Did Vim Become So Popular?
I know I&#x27;m going against the popular opinion here, but I have never observed anyone using either Vim or Emacs to outperform a <i>competent</i> IDE user, especially Visual Studio or IntelliJ.<p>I mean sure, if you think IDEs are just slow, expensive text editors with fewer keyboard shortcuts, then you&#x27;ll be disappointed, but features like &quot;navigate to any symbol by prefix&quot;, &quot;find all usages&quot;, and &quot;Ctrl-click to navigate to definition&quot; have no comparable analogue in traditional text-focused, non-IDE editors.<p>Not to mention visual debuggers, not to mention <i>remote debugging!</i> The VS IntelliTrace feature alone is worth the cost of the entire IDE.<p>Visual Studio Live Share lets two people concurrently use the entire IDE <i>at the same time</i>, remotely: <a href="https:&#x2F;&#x2F;visualstudio.microsoft.com&#x2F;services&#x2F;live-share&#x2F;" rel="nofollow">https:&#x2F;&#x2F;visualstudio.microsoft.com&#x2F;services&#x2F;live-share&#x2F;</a><p>There&#x27;s just nothing like any of this in Vim or Emacs.<p>I mean sure, if you futz around with plugins, you <i>might</i> be able to reproduce some small subset of these features, but then you&#x27;d have wasted more of your time tinkering with the editor than actually getting work done.<p>What I&#x27;ve noticed with a lot of tools that trace their origins to the UNIX world is the <i>perception</i> of speed. Typing many keys rapidly to trigger shortcuts <i>feels</i> like you&#x27;re doing things faster than moving a mouse cursor and then clicking something, because there are <i>more actions per second</i>. However, objective tests show that even highly skilled users aren&#x27;t as fast at completing high-level tasks as mouse-users.<p>One study that shocked me compared wall-clock development times for a moderately complex puzzle problem. It was designed so that most people would have to debug the program at least once or twice. Participants could use any development environment and language. Among the fastest solutions were users programming in F# and C# using Visual Studio, at roughly 30 minutes for F# and 60 minutes for C#. People programming in languages like C, C++, and Java in typical Vim&#x2F;Emacs environments took days or <i>weeks</i> to solve the same problem! Days!<p>I&#x27;ve observed this effect with &quot;command line jockeys&quot; too, where they&#x27;re <i>absolutely convinced</i> that bash is some power tool that nothing can hold a candle to, and then they take hours to solve some problem that&#x27;s three clicks away in the GUI.