Skip to content

Readings

Must Read

  • How NOT to Go About a Programming Assignment, by Agustin Cernuda del Rio. Computer programming students invariably fall into more than one bad habit. It can be extremely difficult to eradicate them (and many lecturers and professional programmers keep succumbing to them time and again)..
  • Best Teacher I Ever Had, by David Owen. Mr. Whitson taught sixth-grade science. On the first day of class, he gave us a lecture about a creature called the cattywampus, ..

Why C?

Vim

  • Time to Drop Emacs and Vi? on StackOverflow. "Programmers are notorious for using the tools that helps them get the job done in the most efficient way possible. These editors are ancient yet still being used because they are good, solid editors, proven by time. If they get the job done and get the job done well, why should we drop them in favor of something else?"

  • What are the benefits of learning Vim? on Stack Overflow. "Usually vim's killer features are considered: A) that it's available on pretty much every Unix you'll ever encounter and B) your fingers very rarely have to leave the home row, which means you'll be able to edit text very, very quickly. It's also usually very fast and lightweight even when editing huge files."

  • Learn vim Progressively "I suggest you teach yourself Vim in 4 steps: 1. Survive. 2. Feel comfortable. 3. Feel Better, Stronger, Faster. 4. Use superpowers of vim"

  • Where Vim Came From -- from TwoBitHistory. "Perhaps more importantly, while we’re asking questions, why does exiting Vim involve typing :wq? Sure, it’s a “write” operation followed by a “quit” operation, but that is not a particularly intuitive convention. Who decided that copying text should instead be called “yanking”? Why is :%s/foo/bar/gc short for “find and replace”? Vim’s idiosyncrasies seem too arbitrary to have been made up, but then where did they come from?"

  • Vim's Big Idea - by Mike Kozlowski. "This philosophy of minimalist commands that can be composed together is the fundamental originating philosophy of Unix, and Vim exemplifies it like no other editor."

  • VIM Pays Excellent Dividends - by John Bjorn Nelson. "Being conservative, let’s say it makes you 5% more productive. More specifically — once your brain maps the keystrokes to muscle memory — it makes you 5% faster at completing the mundane tasks…the ones which dominate programming. That added productivity snowballs. It’s an extra twenty minutes a day to build or explore (or learn), that used to go to copy/paste-like operations."

  • The Powers of VIM - by Artem Dudarev

  • The 11 Steps to Learning Vim - by damassi. "Regardless of the initial confusion and difficulty in getting started, you're making your future developer self immensely more productive by diving in and taking the plunge. Seriously. I'm just a few weeks in right now and I can positively say that learning Vim has been the best work-related decision of my life. It's fun, and in the strangest of ways it makes you think better."

  • Vim for People Who Think Things like Vim and Weird and Hard - by Harry Roberts. "the fact that, yes, people still use an editor that is over 20 years old (in turn based on a tool from the 70s), and those people number in the hundreds of thousands, perhaps they might be onto something."

  • Why I use Vim - Pascal Precht. "_once I was able to do some basic operations in Vim and actually started working again, I made almost as twice as much progress at work in about half the time. I know that sounds kind of crazy but I’m serious. And that convinced me that I made the right choice.

So, do yourself a favor and climb that mountain. Just remember that you can slide down afterwards._"

Vim Video Tutorial (from Aaron Tan)