June 30, 2009

Lessons learned from this phase of our Drupal project

June 30, 2009 - Categories: drupal

I learned a lot from another three months doing Drupal. Here’s a summary:

  • I learned how to write low-level design documentation. I used to hate doing this because I was much happier prototyping things in order to figure things out, and writing in a word processor instead of a code editor seemed slow. Also, laying out images was a pain in both OpenOffice.org and Microsoft Word. The key breakthrough was that after a lot of iterations, I finally got to a document that had the level of detail my project manager wanted. Once I knew what he wanted, it was easy to write documents like that. In fact, I did one better–I filled in lots of details in the validation section of the design document, and I used that for test-driven development.
  • I smoothed out more of the kinks in our deployment process. Always testing our update scripts with update.php’s access check set to false helped flush out assumptions about user ID. Our regression tests came in handy, too.
  • I practiced more test-driven development. And I loved it! =) Yay yay yay yay.
  • I learned JQuery and the ins and outs of Views+Calendar. We customized our calendar implementation extensively, and it doesn’t look half-bad. Working with timezones had given me a lot of pain, though, but I managed to address all of those issues (and I have the regression tests to prove it! ;) ).
  • I learned that I should’ve gotten a second computer a long time ago. Having a dedicated development computer and another computer I can leave on Microsoft Windows means less hassle and less stress when it comes to working with other Windows-centric people and tools.
  • I learned that I have a lot of things I can teach people about Drupal. =) Mentoring is fun!

I’m moving to strategy-focused projects next quarter, but if I were to continue on this project, I’d probably:

  • Learn more about optimization (started doing a little bit of this, speeding up a page by an order of magnitude)
  • Write more validation tests in my design documents
  • Figure out how to check that coding standards are consistently applied ;)
  • Find some way to convince folks to go for Drupal 6, or find another project that uses Drupal 6.

Making business travel awesome

June 30, 2009 - Categories: life, travel

Business travel makes me anxious.

When I book my flight and hotel, I wonder if I’ve chosen the right airport and the right flight, and if I can get to the hotel and to the venue easily. I wonder about the moments I’ll miss, the stories I’ll skip by being away. I worry about my visas and about being stuck on the wrong side of an immigration counter. I worry about losing my paperwork or running out of foreign currency. I worry about forgetting things in hotel rooms or forgetting myself in work.

I can work through the anxiety. My checklists and travel gear make packing easy. I’ve figured out the trick to doing work at airports and on airplanes. A netbook and a paper notebook mean I never run out of things to do. I wake up early. I explore public transit. Each trip gives me ideas for making the next trip better.

And when I’m there at the presentation, meeting, or workshop, I’m there, not wishing I was miles away.

Many people I talk to who have loved ones at home think of travel as a necessary evil. Travel has its perks: meeting new people, cementing relationships, experiencing new things. But it tires many people out.

If anyone can figure out how to make travel awesome, I can. If travelling will help me create the most value for our clients, the company, and myself, then I might as well figure out how to not only tolerate it, but even enjoy it.

So I made a mind-map today about the things I didn’t like about travel and the things I liked about travel, and I decided to work on emphasizing the positives. Here’s what I’m going to do to make future trips awesome:

  • Learn more. Interesting experiences + time to explore = awesomeness. =)
  • Focus on the advantages of stretching my comfort zone. Yes, it’s hard to find your way around an unknown city, particularly when you don’t have GPS or maps on your phone. But if anyone’s prepared to do it, I am. My parents took us backpacking across the US and Europe when my sisters and I were kids, and I loved reading maps. As a technical intern in Japan, I took overnight buses to Kobe, Osaka and Kyoto to see the sights, practice Japanese, and just enjoy wandering around. I’m not one for packaged tours or popular tourist spots. I love starting to find my way around a place, starting to get a feel for the public transit and the pulse of a city.
  • Take more pictures and share more media. I usually don’t
    take a large camera because I pack light, but if I carry a camera, I
    can share more experiences with W-, J-, and others. I always take a
    recorder, thoughMy netbook has a built-in webcam, so I can explore
    videoblogging and I can use it for video chat. Maybe if I take a camera, I can get better at figuring out what a place looks like and feels like.

  • Enjoy eating out more. I hardly ever eat out in Toronto because home-cooked food is fun to make and eat. When I’m out and about, however, I have to eat at restaurants. I prefer to find small, local haunts instead of eating at multinational chains. W- reminded me that I can use these trips to explore cuisines and look for inspiration. Besides, not spending time on cooking or cleaning up should give me more time to learn, write, and explore.
  • Sew more stuff. I liked bringing an eye mask that I made myself. =) I think I’ll spend this Canada Day sewing pajamas, and a passport organizer, a travel kit… <laugh>
  • Take more pictures and share more media. I usually don’t
    take a large camera because I pack light, but if I carry a camera, I
    can share more experiences with W-, J-, and others. I always take a
    recorder, thoughMy netbook has a built-in webcam, so I can explore
    videoblogging and I can use it for video chat.

  • Meet up with friends. I can get better at tweetups and other meetups. Maybe this is what a virtual assistant can help me put together–a list of restaurants near the hotel, a list of people who want to meet up… =)

Maybe I can help find ways to make travel better. =)