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:
But there's way more cool features lurking out there that we don't hear about.
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
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?
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.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.
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.
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:
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 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.
Here's what's covered:
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.
PS. There are eleven ninjas hiding in this page. Nine of them use emacs. Can you tell which are which?