Upgrade Your Emacs-fu

Emacs is pretty twisty

There’s a huge number of things it can do to make your dev experience more amazing, but they’re not exactly obvious, either. (meta-shift-5 anyone?) You’ve probably found a bunch of these and already use them, perhaps like:

Ctrl-x 3 Split window vertically
Ctrl-r Search backwards
Meta-x shuriken-mode Transform your text editor into a highly concealable throwing blade with which to destroy your enemies

But there’s way more cool features lurking out there that we don’t hear about.

Having gaps and bumps in your daily workflow is frustrating and unsatisfactory

Wherever you’re at, I imagine you can sense that there’s a lot more you could learn that would improve your productivity and give yourself a greater feeling of mastery. But the flipside is that we experience frustration and dissatisfaction daily from the parts of our workflow that don’t work quite right. Ever find yourself wondering why you’re performing a repetitive operation on your code, when your computer ought to be taking care of that for you?

It’s hard to set the time aside to learn this, when you have code to ship

But it’s really important, too, especially when you consider how time we spend writing and editing code. We spend an inordinate amount of time in front of our editor of choice, and any frustration we feel using it will leak into the rest of our lives.

I worked this out personally, and I spend, on average, a scarily large portion of my life using emacs:

I’m a freelance ruby developer.
I aim for six hours of billable work per day.
Let’s estimate that I spend two thirds of that time editing (the rest goes into running tests, deployment, etc.)
That’s four hours per workday using emacs, or almost a fifth of my waking life if you assume I’m not coding on the weekends.
Woah, that’s a lot of time spent up close and personal with emacs.

Any frustration I feel about something not working quite right, I’m going to feel multiple times per day, every day I code. And you’re probably in the same boat.

Enter Emacs-Fu

I was frustrated by not being able to find a coherent, guided, step-by-step course on Emacs, so I went on a mission to upgrade my Emacs-fu and to record what I learnt as I went. Emacs-fu is the intermediate-level email course that came out of that. Here’s some benefits you can expect from the course:

You can jump straight into learning without getting distracted looking up tips

Time is already scarce enough as it is, and if the internet gets any more distracting, half our society will probably be diagnosed with ADD. Emacs-fu collects a bunch of useful tips and techniques together into one place so you can jump straight into the learning without getting lost in the interwebs.

Emacs-fu is designed to stick

Emacs-fu is designed to help you form lasting habits so you can be more productive without thinking about it. The course is broken up into bite-sized lessons and that are spaced a week apart. During each week, you’ll practice (as part of your regular development) the most valuable things you took from the previous lesson. That builds a habit, and once the habit’s in place, you’ll be able to benefit from it without thinking about it, just like you do with the editing habits you already have. When you’ve forgotten about Emacs-fu, you’ll still have the habits you gained from it.

The content’s simple and applicable every day

Here’s what’s covered:

  1. Introduction and basics
    • Explanation of shortcut key notation
    • Summary of useful functions / key combinations (eg. manipulating windows, running shells, using macros)
  2. Nifty built-ins
    • Looking up functions in help
    • Aligning text quickly and easily
    • Repeating keys and functions
    • Commenting regions
    • Selecting and indenting
    • Cursor movement
    • Auto-complete
    • Changing the case of words
  3. Regular expressions
    • Testing your regular expressions
    • Searching and replacing by regex
    • Moving between the regex syntax of Ruby/Perl and Emacs’ own flavour
  4. Configuration
    • Looking up configuration variables in emacs help
    • Where to store configuration files
    • File backups
    • A short diversion into lisp syntax
    • Key bindings
    • Indentation
    • Mode-specific configuration
    • Some useful plugins

It’s a really easy win

Emacs-fu is $29 for the course. Even if you learn just one thing that makes a small difference to your workflow, you’ll get that benefit every time you use it. And if you’re using emacs for your daily development, that’s a lot of benefit from a small change.

Emacs-fu is available by request

Contact me and I’ll set you up!

PS. There are eleven ninjas hiding in this page. Nine of them use emacs. Can you tell which are which?

This entry is filed under Uncategorized. You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response or Trackback from your own site.


Leave a Reply

CommentLuv Enabled