Headlines for Saturday:

  1. More Emacs goodness: Refresh your memory when you e-mail using notes from BBDB (365 words)
  2. Networking tips: Bring your own nametag (365 words)
  3. Free Software and Open Source Symposium, Toronto, Oct 26-27 (114 words)
  4. A passion for social systems - clues to my next short-term step? (352 words)

Work on research



1. More Emacs goodness: Refresh your memory when you e-mail using notes from BBDB: 15:58

Inspired by an e-mail-based customer relationship management system briefly described by Daniel Charles of digital ketchup at Shoeless Joe's last Friday, I decided to hack together a system that would allow me to see the notes from my contact database (aptly named the Big Brother Database, or BBDB) when I write e-mail using the Gnus mail client in Emacs.

The first thing I needed to build, of course, was something that removed my notes from outgoing messages. People really don't need to see the kinds of notes I keep on them. ;) Well, they're fairly innocuous notes: how we met and what they're interested in, usually, although sometimes I'll have notes on people's food preferences or shoe sizes. I've recently started keeping track of the subjects of e-mail I send them, too.

(defun sacha/gnus-remove-notes ()
  "Remove everything from --- NOTES --- to the signature."
  (goto-char (point-min))
  (when (re-search-forward "^--- NOTES ---" nil t)
    (let ((start (match-beginning 0))
          (end (and (re-search-forward "^--- END NOTES ---") (match-end 0))))
      (delete-region start end))))
(add-hook 'message-send-hook 'sacha/gnus-remove-notes)

Then it was easy to write another function that composed individual messages to all the people currently displayed in the BBDB buffer, adding notes to each message.

(defun sacha/gnus-send-message-to-all (subject)
  "Compose message to everyone, with notes."
  (interactive "MSubject: ")
  (let ((records bbdb-records))
    (while records
      (when (bbdb-record-net (caar records))
        (bbdb-send-mail (caar records) subject)
        (when (bbdb-record-notes (caar records))
            (insert "\n--- NOTES ---\n"
                    (bbdb-record-notes (caar records))
                    "\n--- END NOTES ---\n"))))
      (setq records (cdr records)))))

I use BBDB to display only the people I want to e-mail, then I call M-x sacha/gnus-send-message-to-all and specify a message subject. This creates a gazillion message buffers which I can then edit. If I feel particularly paranoid, I can remove the notes section myself with C-c C-z (message-kill-to-signature), but sacha/gnus-remove-notes does it as long as it's in message-send-hook.

This code works particularly well with these other customizations:

It supersedes More Emacs fun: Composing mail to everyone with notes.

On Technorati: , , , , ,


2. Networking tips: Bring your own nametag: 20:38

I bought myself a pack of inkjet/laser self-adhesive name tags, which turned out to be a remarkably good idea. Before heading to Dave Forde's networking get-together last Friday, I printed out a nametag that not only gave my name but also included an experimental tagline: "Tech evangelist, storyteller, conversationalist, geekette".

Dave Forde's networking get-together was a very informal one, just a bunch of people standing around in a pub sipping beverages while chatting. I was the only one with a nametag - a printed nametag, at that! - and that garnered me quite a number of compliments for my foresight. Despite the lack of nametags, I was generally good at keeping everyone's names sorted in my head. Having a printed nametag on made it easier for people to remember my name in conversation, though. Having felt the embarrassment of forgetting someone's name right after an introduction too many times, I'm glad I could make things smoother for other people by wearing a nametag.

The nametag was also handy at the second networking event I went to on the invitation of someone I'd just met at Dave Forde's get-together. At that event, people wore nametags of masking tape. Again, my large printed nametag stood out, and the keywords on it prompted conversations.

I think that bringing a prepared nametag to events is a terrific idea. Even at events with proper nametags, preparing a nametag allows you to pay more attention to design and to stand out from the crowd.

Clip-on nametags may be even more effective because then I don't have to worry about what material I'm wearing. They also allow other tricks. I remember Richard Boardman's nifty lifehack for nametags. The CHI 2006 nametag holders were top-loading plastic, so he put business cards behind his nametag. He also put business cards he received into the nametag case. Very accessible location - no shuffling around for a business card case.

Note to self: I should always carry masking tape and a marker to these events. To help even more, perhaps I should always carry self-adhesive nametags. Hmm...

Preparing a nametag was definitely a good idea. You should try it at your next networking event!

On Technorati: ,

3. Free Software and Open Source Symposium, Toronto, Oct 26-27: 20:57

Via Kelly Drahzal: there'll be a Free Software and Open Source Symposium in Toronto from Oct 26 to 27. Admission for full-time students to the symposium is just CAD 10.00! I will so be there, if only to hang out.

The workshops look like mainly intro courses, which isn't bad. I'd like to see more people get into development. I wanted to get into the workshop for educators because I want to convince everyone that open source development really should be part of all computing students' experience. I can get quite passionate about that! The workshop seems to be full, though, so I may need to talk my way in.

Coming? =)

On Technorati: , , ,

4. A passion for social systems - clues to my next short-term step?: 23:37

Each day brings an opportunity for me to reaffirm my decision that connecting with people is important to me and that I want to learn how to be really good at building and maintaining relationships. I've been spending a fair bit of time thinking about the tools for doing so, from my extensive customizations of the Emacs Big Brother Database to why I like OpenBC.

Every time I use Emacs+Gnus+Planner+BBDB, LinkedIn, OpenBC or even my little black Moleskine notebook and fountain pen, I always find little things to improve. I'm in that zone again, and I'm having *so* much fun. Emacs and my Moleskine are nearly infinitely hackable within the constraints of computer and paper, respectively. As for LinkedIn and OpenBC—that *itch* is making me want to write code for someone else.

The last time I felt like this was when I was in the thick of Planner development, working with a fantastic community of enthusiastic users around the world. It was *amazing* being able to make all these little differences in people's lives. I stayed with the project until I found myself too content, and then I turned it over to someone else because it was something that deserved passion.

Maybe I've found my coding passion again, something wider in scope than the little ways I customize my blog or my e-mail client or my contact database.

The more I think about it, the more attractive it is. How strange that low-key services like LinkedIn and OpenBC appeal to me more than the big names in the industry! I have the feeling that I'll be able to make more of a difference there (at least for now) than in companies like IBM, Google, or Yahoo - although those three are certainly exciting in terms of the other cool geeks I'd get to work with...

... but oooh, imagine the opportunity to work directly with really cool users? I could so totally rock. I'd *love* to be able to bring my technical *and* social passions to the table. That feels like a good short-term next step.

Figuring out my options...

On Technorati: , , ,

E-mail sent

  1. E-mail to Mark Chignell
  2. E-mail to Michael Chan
  3. E-mail to Ari Caylakyan
  4. E-mail to Matt Mullenweg
  5. E-mail to Greg A. Fitz
  6. E-mail to Pete Forde
  7. E-mail to James Walker
  8. E-mail to Sacha Chua
  9. E-mail to Bruce Cannon
  10. E-mail to Daniel Charles
  11. E-mail to Shane D'Costa
  12. E-mail to Greg A. Fitz
  13. E-mail to Clara Fong
  14. E-mail to Jay Goldman
  15. E-mail to Harvey
  16. E-mail to Kai Fai Ho
  17. E-mail to Iris
  18. E-mail to Charles McCulloch
  19. E-mail to Jamie McQuay
  20. E-mail to Joshua Meles
  21. E-mail to Helen Overland
  22. E-mail to Wayne Penney
  23. E-mail to San
  24. E-mail to Colin Smillie
  25. E-mail to Le Quan Truong
  26. E-mail to Perry Wong
  27. E-mail to Sacha Chua
  28. E-mail to Mike Tsang
  29. E-mail to sacha
  30. E-mail to Mike Tsang
  31. E-mail to John Sullivan
  32. E-mail to Sam Watkins