Category Archives: goodkarma

Drupal from the trenches: This is my game

I've been coaching a senior architect on a Drupal site he's developing on a tight schedule. With a little bit of help, he was able to build all the functionality needed and keep up with constantly changing requirements. Now it was time to theme the site. As I was walking through how to modify the Zen theme to use the HTML, CSS, and images that he received from the designer, flipping between Vim editors in two Putty sessions connected to the web server, I saw his eyes start to glaze over. Hmm. He was definitely interested in learning how to do it, but I knew he'd enjoy learning it more if he had most of the framework already in place.

I offered to get things started. The senior architect asked me how much time I thought it would take. "Two hours," I said, which was the first number that came to mind.

After lunch, I headed to the senior architect's desk with my laptop and wireless mouse. I thought about asking him to change his password to something I could easily type, just in case I needed to start multiple sessions. Then I realized a much better way to do it would be to use my Emacs environment, which is already set up for doing really cool things with Drupal. So I switched my keyboard layout to QWERTY, used ssh-copy-id to copy my authentication ID to the server, and then opened the directory in Emacs using the location /ssh:[email protected]:/usr/share/drupal6.

Emacs worked like a charm. I edited files on the server as easily as those on my own computer, with all the syntax highlighting and keyboard shortcuts I'd gotten used to. I split windows, moved windows around, copied and pasted regions, and even did a little autocompleting.

I think I made the senior architect's jaw drop.

I finished almost all the basic theming (minus a few quirky CSS things) in one hour and fifty minutes, ten minutes less than my thumb-in-the-air estimate. The senior architect said it would've probably taken him 16 hours over the weekend.

While we were chatting about the changes he'd need to make and the other things he could learn, the senior architect asked me if I played any games. I told him that I play one computer game--Nethack (an old text-based roleplaying game)--and I only play it in airports. I pointed to my laptop and said, "This is my game." Programming has its own major challenges and minor opponents, it has progress, it has points, it has that adrenaline rush of trial and triumph. Programming is my game. Life is my game.

And it's tons of fun. =)

Emacs is not just for computer geeks; also, these are the things that keep me going

Reposted with permission because (a) it shows that people who aren't computer geeks can also love Emacs, and (b) it gave me a warm and fuzzy feeling and encouraged me to keep writing, so I want to keep it around just in case I get in a rut again.
Sacha, I'm an emacs newbie who's trying to both simplify and empower my computing life, and I've chosen emacs as the tool to do that. I'm pretty excited about that, and overwhelmed, too. Actually, a little background might help: I'm a PhD student in early modern (read: renaissance) English literature. Yeah, I'm a Shakespeare guy. I work in a field in which computers are, to most folks, MS Word, MS Entourage, and MS Explorer. I'm a nut who actually plays with stuff. (Actually, I don't tell my colleagues about it. It could honestly damage my career. I know, it's disturbing.) I also have some tech chops, being a refugee from the heady late 1990s tech boom where I co-founded a small company that made some money before it collapsed. I've been able to do the basics in emacs for years. The basics, but nothing more. My introduction this time was a rather circuitous route: I moved from Mellel (on the Mac), to Scrivener where I discovered the wonders of MultiMarkdown. Happily I discovered that I could use MMD and TextMate to create LaTeX files without having to look at a bunch of distracting LaTeX markup. I could write plain text and, with a couple of handy keystrokes, create beautiful PDF files that my committee would appreciate. The plain text files took up no space and could be edited anywhere. I could fit a bazillion of them on my USB drive and carry loads of research with me to my office on campus (where I got a hand-me-down Dell running XP v.e.r.y.s.l.o.w.l.y) and on my much speedier Mac at home and even in Linux. Neat. Still, MMD felt hack-y and was only supported by one guy and I wondered if there was anything else like it out there. Which lead me to muse-mode. From there you can guess my path of discovery: org-mode, planner-mode, remember: oh my! For a prose writer like myself, the ability to have the cursor jump forward and backward by letter, word, line, and paragraph was nothing new, but M-a and M-e have changed my life. Why don't all word/text processors understand that the sentence is the fundamental unit of prose writing? Why don't they all allow me to navigate using units that make logical sense? Whoever said that emacs was for programmers only surely isn't a writer. (This is becoming much longer than I had anticipated, sorry.) My point in writing is to tell you how invaluable I have found your two public chapters (I think they're 7 and 8) have been for me. The whole idea of writing a book about emacs as cool (as opposed to just highly functional) is both obvious and revolutionary. Know that I would buy a copy today if only it were available. I noticed in your blog that you felt you had lost some steam on the book. Please don't. My life is better, my writing is better, my research is better, and, much to the joy of my wife, my progress toward a completed PhD is better, all thanks to emacs which, based on the tools I'm using, is also in thanks to you. So thank you, and keep writing. I, for one, and hungry for more. I'm sure others are, too.
Jeffrey Windsor

Livin’ la Vida Emacs

Squee! <bounce, bounce, bounce>

Democamp10: Back at Mars

Last, and certainly not least was Sacha Chua. If we could harness it I'm pretty sure we could power a few small cities of the energy that's contained in this one, tiny person - especially when you get her talking about Emacs. Sacha's demo, entitled, "Livin' la vida Emacs" was hands down the most entertaining of the evening. Sacha has basically taken this simple, extendable text editor and pushed it about as far as it can go - at DemoCamp10 she pulled back the curtain and showed us all her little systems and apps she's created in it. I like my GUI/Windows so the whole text-based thing isn't for me but it certainly was interesting to see just how strung out she's got that machine.

DemoCamp10: Congratulations

DemoCamp 10 was held last night, and three of the five presentations were from U of T. Sana Tapal (now at Jonah Group) and Andrey Petrov led off with the Online Marking tool; Jonathan Lung (who was part of the student team that presented at DemoCamp 5) showed us all how productive PHP procrastination can be; and Sacha Chua tried to convince us that Emacs isn’t actually bad for you. The other two demos were a social networking/quotes site called, and Broken Tomb, which advertises itself as the world’s first commercial Smalltalk host. There wasn’t any new technology, but the presenters were entertaining, and it was fun to read the stuff that flashed by on the screen during their demo; the Smalltalk demo had a lot of technical and other difficulties.

Demo Camp Toronto 10 : The return to MARS

Sacha Chua showed off what can be done in the scriptable environment, in this case emacs, as she went from Text editor, to a.i. doctor, to game engine to task / email organizer and beyond. Sacha was six feet tall on that stage, even though she did not actual levitate at anytime (although she came close, as always). A Tour de force of the Emacs, a text editing tool built in a interpreted lisp language environment, bascially a personalized productivity platform which allows for massive customization. Sacha had the crowd entertained and enthralled. (Sacha blogged her own impressions and mentions that Emacs was speaking to her!)

What would you do with Sacha Chua?

Within Toronto’s Web community, Sacha Chua has become one of the leading “personalities”. Armed with infectious enthusiasm, charm and smarts, she would be an excellent person to hire once she graduates from UoT. The key question is how best to use her talents. It would probably be as a “super customer service rep, who can come into a bad situation and get everyone happy by the time she leaves. If I was an HR person from Microsoft, IBM,, etc. I’d be knocking on Sacha’s door ASAP.

On Technorati: ,

Awww, good karma

You are really becoming an great speaker ;) btw, I was hanging around the back and overheard people asking if you had gone yet - apparently you were the only thing they were there for! awesome!

E-Mail from Mike Tsang

On Technorati: ,

Random Emacs symbol: color-values - Function: Return a description of the color named COLOR on frame FRAME.

Reaching across the ocean: sometimes you just have to make things happen

When Simon called me up to say that he was really excited about working with QSR because of their interest in Asterisk but that they hadn't gotten in touch with him yet, I said, "Really? That's it, I'm going to make something happen."

So I did. I didn't have anyone from QSR online in my buddy list, but I knew that if anyone could find people, it would be Clair Ching. (Tip: If you ever need any kind of information, no matter how obscure, ask a librarian!) She gave me Ian's cellphone number. I tried calling it up, but my cellphone seems to be blocked for international calls. She called it up, but Ian didn't answer. I sent a text message to Ian asking him to go online.

Clair also pointed me to other QSR people like Marvin Pascual. Marvin told me that Ian was probably out to lunch or en route to dotPH because it was Friday. He gave me Ian's Yahoo Messenger ID and dug up Myna's cellphone number. I remembered that Ian told me I should talk to Myna about business development opportunities, so it was terrific that they were traveling together.

I noticed that I had a Google chat message from J. Angelo Racoma. I remembered that Angelo's associated with dotPH, so I asked him to track Ian down, possibly by calling the dotPH folks. Angelo set that in motion, too.

... and when I saw Ian's Yahoo Messenger status change, I was, like, "w00t!" I messaged, "Thank you for letting me assert my SUPER GEEK GIRL POWER and renicing myself to -20!"

Big, big, big kudos to Clair Ching, J. Angelo Racoma, and Marvin Pascual for helping me track Ian down and get him online right then and there. I owe homemade cookies and lasagna all around. You rock.

Simon and Ian had a great conversation threshing out the technical aspects of the project. I think they were basically establishing that they knew what they were talking about and that the other person did, too. While they were doing this, Myna and I chatted about the business side of things.

Good stuff. I think it'll be a terrific fit, and I look forward to seeing what'll come of it. I'm glad I helped make that phone conversation happen, if only because I exerted enough will for them to get around to talking. I knew they'd have a good conversation, but it's sometimes hard to get around to it what with everything else going on.

Sometimes you just have to make things happen.

On Technorati: , , ,

Love 2.0

Photo by Rob Dudley. License: Creative Commons Attribution.


Just wow.

Whenever I falter and lose sight of my way, other people lift me up, set me on my feet, and point me back in the right direction.

Where would I be without my family and my friends and those random strangers and acquaintances who take a moment out of their busy days to reach out to me in all their generous humanity?

I am thankful for these moments of sadness and confusion, however brief they are, because they give me an opportunity to appreciate and deepen my respect for the wonderful, wonderful people in my life.

From friends who called and messaged and e-mailed as soon as they read my doubts, to my mom whose encouragement addressed my fears and strengthened my resolve, to coworkers who not only told me of interesting opportunities but also expressed their concern

I am loved beyond my ability to comprehend, and if I can spend the rest of my life sharing that experience of love with other people... wow!

It's been said that it takes a village to raise a child. I am being raised by the world.

On Technorati: , ,