Quick notes from Emacs Org-mode talk at GTALUG

My Emacs Org-mode talk at GTALUG was a lot of fun. I had made a quick outline of things I wanted to cover, and the discussion took us to all sorts of places – really more like a romp through the world of Emacs. I kept my talk plan small and tightly-focused – not even Org-mode, just note-taking in Org-mode – but I ended up talking about all sorts of things because they were cool and that’s where the discussion took us. This means that my outline isn’t much use for reconstructing the talk, but maybe whoever recorded it can share the audio and the video. =)

Unexpected wow moments of the day, completely not in my outline:

  • Someone’s question about my tablet PC led to showing off M-x artist-mode, drawing using my tablet, and the line and spraycan tools. (I’d never tried it before. It works!)
  • A conversation on the way to the talk led to my showing M-x snake.
  • Someone’s joking query about whether you can run vi in Emacs (following up on someone who mentioned the vi emulation mode, perhaps) led to my demonstrating vim in M-x term, which naturally led to running console Emacs within my Emacs.
  • Someone mentioned mail, so I showed Gnus, and another person mentioned adaptive scoring, and we talked about news-inspired techniques for dealing with e-mail.
  • People asked me how big my config file had gotten. The word count tool says 226k characters – ah, the process of accretion. You can learn Emacs and customize it a little bit at a time, though!

I’ve given two Emacs talks so far, and both of them had delightful audience interaction – among the best of any of the talks I’ve given. I think it’s because with Emacs, even people’s jokes give me a starting point to mention something I’ve learned about or come across or built. The energy of the session is really something different. It’s almost like an infomercial-ish “But wait, there’s more!”, but everyone’s in on the joke, they’re part of what’s happening. It’s an adventure.

I don’t want to give the impression that Emacs is just about fun. ;) Of all the software I’ve ever used, I think Emacs has contributed the most to my productivity and my learning. Not only do I find the direct benefits useful, I also really appreciate the inspiration I get from all these other people who use and improve Emacs.

So the key question I want to address with more thought is: where does one find the time to learn these things? I think you answer this the same way you make the time for things that matter – strategic optimization. Like in code, premature optimization doesn’t work. You need to figure out what actions are important and where improvements would have the most effect – where your moments of truth are. For example, it really pays to improve my abilities in programming, writing, and note-taking, because I do that a lot and it creates a lot of value at work and in life. On the other hand, I don’t stress out about typing even faster, because that’s not my bottleneck. And I also make sure to invest time into all sorts of other aspects of life, because those are important to me too.

Back to Emacs and the presentation. My goal for the talk wasn’t to convert anyone or show people specifically how to set up their environment. I wanted to give people an idea of what my workflow looks like, expose them to some of the things Emacs can do, and perhaps inspire people to learn more about their tools. (I made sure to mention lots of cool things about vi, too!) We started at 7:30 and had a great discussion for two hours (two hours!) that flew by until the organizers suggested it was time to wrap up. Quite a few people came up to me afterwards and told me that they were inspired to learn more about Emacs. Whee!

That was tons of fun. I’d do it again. It has to be an interactive group, somewhat casual (so that people feel free to interject questions) and technical (helps to have a few other Emacs users in the audience, and a general interest in tools). Voice is probably a huge component of it – both being able to communicate enthusiasm and for the conversational aspect of the discussion. Screen-sharing or projection is vital; this kind of talk wouldn’t have worked with slides. So it’s probably a talk I’d need to give in person, considering webconference interaction patterns and screen-sharing delays. Hmm…

(Maureen: there is a screenplay mode for Emacs. Isn’t that amazing? Might be worth learning Emacs. More writing resources on the EmacsWiki. If you’re intrigued by it, check out the Emacs Newbie resources.)

2011-03-08 Tue 23:40

  • Mohamed

    Hi sacha,
    Just to point out that for the purist who dislikes to leave emacs, artist-mode and ditaa can be helpful in org-mode.

    Mohamed

  • http://denis.evsyukov.org Denis Evsyukov

    It will be interesting to hear how you use vim to emacs. For me it is more convenient to use vim in a normal console.
    By the way, why or why you run it in vim emacs??

  • http://sachachua.com Sacha Chua

    Denis: I don’t run vim within Emacs, although I occasionally use vim for quick edits. ;) But it was a good joke with the audience!

  • http://www.linkedin.com/in/raymondzeitler Raymond Zeitler

    If you ever plan to travel between Boston and NYC, it would be great if you could give this presentation in the Hartford area. We could host it as an IEEE Computer Society meeting.

  • http://www.tychoish.com tychoish

    The screen play mode is great, and a joy to use, though I haven’t had
    any experience importing it into final draft or even one of the LaTeX
    templates. Because the on-paper presentation of a screenplay is so
    important for the pacing and use of a script, I worry that the
    screen play modes might not be as useful as, say, the LaTeX route. But
    it depends on your intentions, I guess.

  • patrickg

    I thought there was VIper-mode for people who want VI inside Emacs…

  • http://sachachua.com Sacha Chua

    patrickg: Yes, there are a few vi emulation modes, but it’s still Emacs with a vi skin on top of it. Running vim in term was more about joking around about Emacs’ capabilities. =)