May 2011

Negative productivity and learning from oopses

May 1, 2011 - Categories: geek, productivity, tips, work

So I accidentally blew away my self-hosted photo gallery because I overwrote the directories by copying them instead of using rsync. I attribute that to being slightly out-of-sorts, but the truth is that I might’ve made that mistake anyway bright and early on a well-rested weekend.

As it turns out, I back up my WordPress blog, but not my Gallery2-hosted photo album. And I hadn’t enabled server-wide backups before. You can bet I turned that on after I realized that.

It’s no big deal. The key thing I wish I hadn’t deleted was the sketch I’d made of the highlights of 2008, but that’s in my paper backup of my blog, and the rest of my sketches are probably somewhere in my files too. It’s just stuff.

The trick to dealing with negative productivity is to catch yourself – ideally, shortly before you mess up, but shortly afterwards is fine too. Do not make things worse in the process of trying to fix things.

It’s better to detect your periods of negative productivity on non-critical operations than to, say, accidentally corrupt the source code repository for the project you’ve been working on. In addition to remembering this general feeling of out-of-it-ness, it might be a good idea for me to come up with some small test for full attention/alertness before doing anything possibly irreversible. Then I would need to make it a habit, because it’s precisely when one’s tempted to cut corners and go ahead that one shouldn’t.

Hmm, checking for patterns…

Sleep 8.8 hours per night – normal (if not a little over)
Work 10.2 hours per workday so far – well above normal, and pretty high-intensity work, too
Work pattern current, 45.9, 56.9, 40.1 – current week is third of more intense period

Anyway. Dealing with oopses. Instead of beating myself up about it, I’d rather fix what I can fix, learn what I can learn, and then get on with a restful evening so that I can prepare for more awesomeness. Why beat myself up over a mistake? Better to figure out how to minimize the chances of making a similar mistake in the future, and to get on with life. =)

(Well, after wringing a blog post out of it first…)

2011-04-13 Wed 20:36

Thoughts from marriage: Learning together

May 2, 2011 - Categories: learning, life

Learning can be so much more fun when you learn with someone. Learning something with your spouse can be even better.

W- and I enjoy learning things together. Last summer, we taught ourselves woodworking. We checked books out from the library, spent hours at Home Depot looking at tools and picking out lumber, figured out how to get 16′ planks home without renting a truck or becoming a traffic hazard, and built deck chairs that actually fit us. Having a second pair of hands to hold something in place, having a second pair of eyes to check before you work – that saves a lot of time. W- also helped motivate me past the necessary-but-slightly-annoying parts, such as remeasuring the chair slats so that they fit properly. I probably would never have tried it without him, and now the chairs sit on our deck and provide an ongoing trigger for happy memories.

We’ve been teaching ourselves Dutch in preparation for our trip to the Netherlands for my sister’s wedding. W- made flashcards and has been helping me learn. Even with our limited vocabulary, we’ve quickly developed in-jokes, like the delight with which we encounter the flashcard for “spek” (bacon) or “gebakken ei” (fried egg), and how I mock-shudder at “krentenbrood” (I’m not fond of currants or anything raisin-like).

We’ve also been working our way through a Latin textbook as part of an Internet-based study group. We’re learning Latin together because we’re curious about a proper classical education. If kids of bygone eras could be well-versed in Latin, Greek, and French, why couldn’t we get the hang of it too? I’m inspired by books like The Well-Trained Mind: A Guide to Classical Education at Home. While the rest of the world wrings their hands over the state of education, W- and I want to do something. This is not a bad place to start.

Cooking provides many opportunities for learning. We’ve been moving further down the supermarket food chain:

How do we make time for this? Avoiding financial pressure helps. A frugal lifestyle means that neither of us needs to work a second job, or gets stressed out about work. We spend most of our discretionary time at home because we enjoy doing so. A nearby library provides almost all the books we want, and Internet booksellers fulfill the rest of our learning needs. Internet videos, audio recordings, and websites also give us plenty of resources.

Learning pays off in many ways. If we model this kind of curiosity and life-long learning for J-, she might be inspired to explore her own interests. It’s like the way I learned a lot from watching my mom teach herself about business and education and watching my dad learn about planes and photography. Who knows what J- and other kids will be able to do if they learn that learning is fun?

2011-04-24 Sun 09:07

Cucumber, Capybara, and the joys of integration testing in Rails

May 3, 2011 - Categories: geek, rails

Development is so much more fun with test cases. They give you a big target to aim for, and it feels fantastic when you write the code to make them pass. Tests also avoid or shorten those late-night “oh no! I broke something!” sessions, because you can backtrack to versions that pass the tests. (You are using version control, right?)

So naturally, as I worked on my first IBM project using Ruby on Rails, I wanted to know about how to perform automated testing – not just at the unit level, but at the web/integration level.

I like using Simpletest in Drupal. I love the testing frameworks available in Rails.

You see, Cucumber for Rails allows you to write your tests in English (or something reasonably close to it). For example:

Feature: Contributor
  In order to maintain security
  As a contributor
  I want to be able to edit existing submissions
  Scenario: Contributor should not be able to create or delete submissions
    Given I am a company contributor
    And there is a 2010 survey for "Company X"
    When I view the dashboard
    Then I should not be able to delete a submission
    And I should not be able to create a submission

Putting that in my features/contributor.feature" file and executing that with =bundle execute cucumber features/contributor.feature gets me a lovely test with green signs all around.

You’re thinking: Rails is awesome, but it’s not that awesome, is it? How can it know about the specifics of the application?

Rails knows because I’ve written my own step definitions for Cucumber. Step definitions are simple. You can define them with a regular expression like this:

When /^I view the dashboard/ do
  visit root_path
end

Then /^I should not be able to create a submission/ do
  page.should_not have_button("Create submission")
end

You can also define steps that parse arguments from the string or call other steps:

Given /^there is a ([^ ]+) survey for \"([^\"]+)\"$/ do |year,name|
  @company = Company.find_by_name(name)
  assert !@company.nil?
  Given "there is a #{year} survey"
end

You can even take multi-line input, such as tables.

Automated testing is so awesome!

On people changing companies

May 4, 2011 - Categories: career, work

Over the past few weeks, several people I’ve had the pleasure of working with have left the company. I used to feel confused and a little disturbed by people’s departures, particularly if they’d tried to find other internal opportunities and the timing didn’t work out. Quite a few of my mentors left IBM, and one of my colleagues even lightheartedly teased me about it.

I feel much less worried about people leaving now. I wish them luck on their next adventure, connect with them through social networks so that we can keep in touch, subscribe to their blogs or follow them on Twitter, set myself a reminder to follow up with them, and perhaps write them a recommendation on LinkedIn.

Here’s what I understand now that I didn’t understand in the beginning: It’s okay.

When people leave for other companies, they colonize those companies with the things they’ve learned in ours. They spread skills and ideas they’ve honed here, while learning even more from new cultures and new situations. New things become possible.

The network grows. Now I might be able to easily reach out to one more company, one more industry. Now I might hear about interesting ideas and trends outside my usual areas of focus. Now I might connect even more diverse worlds.

It’s not all an easy win, of course. People leave behind these gaps, these unfulfilled possibilities. They also leave new opportunities. What will their successors create? How will the organization adapt around them? How will everyone grow?

I still work on helping IBM improve, in my own little way. But now I can properly wish people good luck on their new adventures, and be confident that things will generally work out.

2011-04-08 Fri 20:23

Tweaking married life for everyday happiness

May 5, 2011 - Categories: life

One of the things that works really well for W- and me in marriage is that we invest time and effort into making everyday life enjoyable. It’s not about big vacations or escaping from life; it’s about making regular life awesome. Let’s take a closer look at that.

Sleep takes up a third of our life. We make sure we get enough sleep, as sleep deprivation leads to general tetchiness and negative productivity. There’s no sense in doing more if you end up being unhappy, so we keep our schedule light and flexible.

Work takes up another third of our life, so we also make sure work is good. I love learning, working on open source, and helping clients and coworkers make things happen, so I work with my manager to make sure I’ve got plenty of opportunities to do so. W- also puts the time into improving his processes and getting better at what he does.

We invest in making chores enjoyable. A lot of this is mindset. For example, memories of the great washing machine adventure turn laundry into something that makes me smile. It helps that our washer and dryer sound so cheerful. (Really! Listen to someone else’s recording.)

“Right, Sacha, but that took a lot of work.” you might be thinking. But it’s surprising how a story can add more enjoyment to a routine task. For example: doing the dishes. I feel warm and fuzzy about the yummy food we just made, and I enjoy remembering W-‘s story about this Fisher&Paykel dishwasher. You see, when I moved in, W- had a regular dishwasher. He explained that he’d replaced his preferred dishwasher with a standard one because he had been thinking about selling the house. He kept telling me about how awesome this dishwasher was, and we joked that it was the kind of dishwasher that was accompanied by choirs. When we decided we were going to stay, we took a trip up to his parents to retrieve the dishwasher. After I saw how it was cleverly divided into two independent drawers and it had time-delay features, I became a convert. (It seems it really does go “Aaaah!”)

I’ve shown W- some clever ways to use the dishwasher, too, like using the top rack as a temporary holding space when the handwashed items need more space than the dish drying rack. Tiny improvements make life more awesome.

Sharing a task makes it fun, too. W- and I both enjoy cooking, and the L-shaped kitchen layout means that we don’t get in each other’s way. Cleaning up together makes that more enjoyable, too. Turn chores into social events to make the time fly.

What about other routines, like eating or getting ready for work? Again, this is something that can benefit from continuous improvement. For example, we switched to batch-cooking lunches and freezing individual portions. This not only simplifies mornings and saves us money, it also makes me smile whenever I have lunch. We tweaked our entrance workflow, and now it’s easier to take off our coats and put down our bags. Little things.

So that takes care of sleep, work, chores, and routines. What’s left? Mostly discretionary time – time that we can spend developing interests, enjoying hobbies, learning, relaxing, and so on. We spend a fair bit of this time together: hosting study groups, learning Latin, playing games. Sometimes we spend it on individual pursuits, like my tea parties or his calculator. We use this time not just to rest and recharge, but also to grow, and we deliberately invest in capabilities that can make future everyday life even better.

Is this kind of happiness a finite honeymoon-ish sort of period? Maybe. Who knows? But it makes perfect sense to invest that energy into strengthening the foundation and building good routines, and to enjoy the compounding benefits. It isn’t about big changes, just small and simple everyday happinesses

2011-04-23 Sat 11:32

Rails: Exporting data from specific tables into fixtures

May 7, 2011 - Categories: geek, rails

Rails is pretty darn amazing. There are plenty of gems (Ruby packages) that provide additional functionality. They’re like Drupal modules, except with more customizability (not just hooks) and fewer pre-built administrative interfaces (you win some, you lose some).

For example, the client asked me, “Can we edit the static content?” Now if I had asked about this as a requirement at the beginning of the project, we might have gone with Drupal instead–although the Rails Surveyor still feels cleaner than a CCK-based survey type, so we might’ve stayed with Rails.

Anyway, we were well into Rails now, so I looked for a content management system that I could integrate into the Rails 3-based website. After some experimenting with Refinery CMS (looks slick, but couldn’t get it to do what I wanted) and Comfortable Mexican Sofa (looked pretty geeky), I settled on Rich CMS. I nearly gave up on Rich CMS, actually, because I’d gotten stuck, but the web demo helped me figure out what I needed to do in order to enable it.

We’re still emptying and reloading the database a lot, though, so I wanted to make sure that I could save the CmsContent items and reload them. I didn’t want to back up the entire database, just a table or two. There were some gems that promised the ability to back up specific models, but I couldn’t figure it out. Eventually I decided to use the table-focused Rake code I saw in order to export the data to fixtures (seems to be based on code from the Rails Recipes book).

task :extract_fixtures => :environment do
  sql  = "SELECT * FROM %s"
  skip_tables = ["schema_info"]
  ActiveRecord::Base.establish_connection
  if (not ENV['TABLES'])
    tables = ActiveRecord::Base.connection.tables - skip_tables
  else
    tables = ENV['TABLES'].split(/, */)
  end
  if (not ENV['OUTPUT_DIR'])
    output_dir="#{RAILS_ROOT}/test/fixtures"
  else
    output_dir = ENV['OUTPUT_DIR'].sub(/\/$/, '')
  end
  (tables).each do |table_name|
    i = "000"
    File.open("#{output_dir}/#{table_name}.yml", 'w') do |file|
      data = ActiveRecord::Base.connection.select_all(sql % table_name)
      file.write data.inject({}) { |hash, record|
        hash["#{table_name}_#{i.succ!}"] = record
        hash
      }.to_yaml
      puts "wrote #{table_name} to #{output_dir}/"
    end
  end
end

Being a lazy programmer who doesn’t want to remember table names, I also defined the following Rake tasks:

task :save_content => :environment do
  ENV["TABLES"] = "cms_contents"
  Rake.application.invoke_task("myproj:extract_fixtures")
end
task :load_content do
  Rake.application.invoke_task("db:fixtures:load")
end

Then I can call rake myproj:save_content and rake myproj:load_content to do the right thing. Or rather, my co-developer (a new IBMer – hello, Vijay!) can do so, and then check his work into our git repository. =)

Now we can re-create the development database as often as we’d like without losing our page content!

2011-04-24 Sun 16:29

Condensing requirements into use cases

May 8, 2011 - Categories: ibm, learning, work

(From April 23:)

I’m helping out with a proposal at work. The team asked me to condense a 250+-page requirements document into a spreadsheet of use cases. I’m new to architecture, but I gave it my best shot, sending the architect quick drafts so that we could zero in on something useful.

My first draft was too low-level, too detailed. My second draft was a bit better, but still too granular. My third draft was at about the right level, but some use cases were still too big. My fourth draft was workable. Hooray!

When you’re learning something that’s hard to pick up on your own, figure out how you can iteratively improve with feedback. Even if an expert doesn’t have the time to walk you through the process, he or she might be able to quickly tell you if you’re on the right track. See if you can break your work down into small portions you can work on until you get them right, and apply what you learn there to the rest of the work. Good luck!

On kids and the learning of tangible things

May 9, 2011 - Categories: life

“Treat her to a scoop!” said the man in the ice cream shop as we walked by. He waved us into the ice cream shop, where W- chose maple walnut and I chose butter pecan. Our orders were rung up by a 4-year-old, all eagerness and tiny fingers at the cash register, coached by her mom to punch in the buttons and wish us a good day. I thought it was delightful.

That’s one of the advantages of a family business that deals with tangible things, I guess. I remember my dad teaching us how to transfer rolls of film in the darkroom. We didn’t help out regularly, but it was great to learn about how parts of the business worked.

It’s a little harder to show J- the magic of building applications, so we focus on tangible hobbies instead: cooking, baking, woodworking, gardening, and so on. They’re good introductions to the joys of learning and accomplishment.

2011-04-25 Mon 08:40

Rails: Paperclip needs attributes defined by attr_accessible, not just attr_accessor

May 10, 2011 - Categories: development, geek, rails

I wanted to add uploaded files to the survey response model defined by the Surveyor gem. I’d gotten most of the changes right, and the filenames were showing up in the model, but Paperclip wasn’t saving the files to the filesystem. As it turns out, Paperclip requires that your attributes (ex: :file_value> for my file column) be tagged with attr_accessible, not just attr_accessor.

Once you define one attr_accessible item, you need to define all the ones you need, or mass-assigning attributes with update_attributes will fail. This meant adding a whole bunch of attributes to my attr_accessor list, too.

If you’re using accepts_nested_attributes_for, you will also need to use attr_accessible there, too.

Sharing the note here just in case anyone else runs into it. Props to Tam on StackOverflow for the tip!

2011-04-01 Fri 12:41

Back from the Netherlands

May 11, 2011 - Categories: family, life

We were in the Netherlands from May 3 to May 10 to celebrate my sister’s wedding. I still have to sort through all the pictures and sketches, but here are some highlights:

Seeing Keukenhof again: My sister and her fiancé timed their wedding so that we could catch the spring flowers at Keukenhof , which has hectares and hectares of tulips and other blooms. My family and I had been there before, when I was in high school. W- had never been to Europe, so it was his first time for everything. Taking up gardening myself

The wedding: We had a small civil wedding ceremony in the gazebo in Agnietenberg, a campsite in Zwolle. Kathy wore a white terno (full-length dress with butterfly sleeves) beaded and decorated with hand-painted blue tulip appliques; a fusion of Philippine and Dutch cultures. John wore a suit. I wore the red dress I sewed myself. =) I’ll link to photos when they become available.

Moments that made me laugh:

Den Haag: We visited W-’s friend Dan in The Hague and we had a lot of fun catching up. In the evening, we rented bikes from OV Fiets and headed to the beaches near the North Sea. The Netherlands’ biking life made me so envious: separate bike lanes going practically everywhere, rental systems, flat terrain, garages with grooves in the ramps, locks integrated into bikes, and the freedom to bike without worrying too much about opened doors or inattentive drivers…

Geek: One of the advantages of being a geek is that most people appreciate getting tech support. We don’t do this on a regular basis for family or friends, but if we happen to be in the same country and we have some time on vacation, why not? =)

Dan had warned her husband that we were both geeks and that we were not allowed anywhere near the computers or even the microwave, because we might reprogram stuff. We ended up looking into their WiFi router, writing down the password for them and their future guests, and setting the BIOS settings on one of the computers so that it could recognize the printer that was on LPT1. (Smart IO chipset for the parallel port! Gosh.) Most of the interfaces were in Dutch, but we figured it out. We also fixed up Auntie Katharina’s computer, but that’s the next story.

Germany: We were hanging out in John’s house in Zwolle, and Auntie Katharina mentioned she’s been having problems with her computer. My parents had been planning to get Auntie Katharina a new computer for a while, so that she could talk to them using Skype. Day trip!  After much back-and-forth, we convinced Auntie Katharina to let us go on this adventure. (After all, W- had never been to Germany, and it would be so nice to visit Wiesbaden again, and…) So we piled into the car, rushed back to the camp, packed our suitcases and backpacks, and headed off to Germany. (Don’t you just love being able to take a day trip to a different country?) We bought a laptop from the Media Markt near Auntie Katharina’s house, visited her son and her grandkids, then headed over to her place to set it up. Then it was a long drive back to the Netherlands for a short nap before W- and I took the train to the airport. That was definitely cutting it close, but we made it!

Weekly review: Week ending May 6, 2011

May 12, 2011 - Categories: weekly

From last week’s plans

  • Work
    • [X] Tidy up project C
  • Relationships
    • [X] Hang out with my family! Yay!
    • [X] Celebrate my sister’s wedding!
    • [X] Tidy up the strawberry and blueberry plants in the garden
    • [X] Start some bitter melon
  • Life
    • [X] Draw! =)

Plans for next week

  • Work
    • [ ] Catch up on work
    • [ ] Get ready for training trip for project I
    • [ ] Follow up on project C
    • [ ] Refile time for project M
  • Relationships
    • [X] Hang out with family some more!
    • [X] Spend time with W-‘s friend Dan in The Hague
    • [ ] Write and sketch stories from trip
    • [ ] Organize photos from trip
    • [ ] Catch up with mail
  • Life
    • [ ] Plant more herbs and greens
    • [ ] Decompress
    • [ ] Write more for upcoming trip

Time analysis

Between timezone changes and vacation… what time analysis? =)

First foray into community-supported agriculture

May 13, 2011 - Categories: cooking, kaizen, life

W- borrowed In Defense of Food from the library. I read it with him, dipping in and out of the book when he read nearby. Now we’re tweaking what and how we eat: buying organic vegetables, checking out a nearby butcher, and preparing lighter summer fare.

We signed up for a local spring share from Plan B Organic Farms. The way that community-supported agriculture works is that you buy a share in a farm’s produce and you get a portion of whatever’s being harvested. Plan B Organic Farms works with several farms, so you can get a good selection of food (and your risk is probably lower, too). We signed up for a bi-weekly regular-sized share to see what it’s like. We’ll probably sign up for a weekly half-share for summer, as the garden will yield fruits and vegetables too.

After much anticipation, we picked up our first box yesterday! It contained:

I rinsed and tossed handfuls of lettuce, baby kale, sprouts, and pea tenders with vinaigrette. I added dandelion leaves from the garden. (Mwahaha! It’s extra-satisfying to pull up weeds for munching.) A sprinkling of pine nuts on the greens, and tada! Salad.

Meanwhile, W- cooked the sausages and prepared pasta with store-bought pesto. (Haven’t started our basil plot yet!) We added some sage, oregano, and thyme from the garden – just a bit, as the plants are still small. Yummy!

Working with a random assortment of fruits and vegetables is a lot more fun now than it was back when I was a student cooking for myself. I used to get the Good Food Box (another organic/local produce subscription service) when I lived on campus. Identifying the vegetables that came and figuring out good recipes for them that wouldn’t result in too much waste – that was quite a challenge! I remember losing the list of the box contents and then flipping through the pages in my full-colour fruit and vegetable identification book (a gift from my family), trying to figure out if I had beets or rutabagas. (Beets, as it turned out.) Now, W- and I can bounce ideas off each other, we have more flexibility and a better-stocked pantry for quick meals, and we have the freezer space to handle odds and ends if needed. Yay!

I’m still looking forward to getting our garden growing. The plants look promising. I’m learning how to pack the garden more densely and to grow more kinds of food. But it’s great to enjoy lettuce and all these other things while the garden gets started, and to get fruits and vegetables we won’t be growing ourselves.

The community-supported agriculture shares will be a great addition to our kitchen, encouraging us to be more creative with our cooking and more diverse in our diet. It’ll be fun – and it will be good eating!

Cattus Petasatus

May 14, 2011 - Categories: learning

On a whim, W- and I are learning Latin. We figure that schoolkids used to learn Latin and Greek, so we should be able to hack it too. So we’ve signed up for an Internet study group, borrowed books from the library, and looked for other Latin resources.

We were delighted to find Cattus Petasatus, a Latin translation of Dr. Seuss’ The Cat in the Hat. There are even translations for some of the other books, like Green Eggs and Ham. I like reading them in addition to our textbooks. They make Latin feel more contemporary.

Learning Latin with W- is a lot of fun. He shares the ways Latin reminds him of French. He thinks I find it easier to say Latin than he does because of my background in Filipino, which also has a lot of short syllables. We review our study group homework together, laugh at the contrived examples, and look around for other resources. I’m so lucky my husband is a geek. =)

We’ll gradually work our way up to Winnie ille Pu. Maybe we’ll even put together our own Latin projects!

Weekly review: Week ending May 13, 2011

May 15, 2011 - Categories: weekly

From last week’s plans

  • Work
    • [X] Catch up on work
    • [X] Get ready for training trip for project I
    • [X] Follow up on project C
    • [X] Refile time for project M
    • Prepare for upcoming presentations
    • Added status tracking feature to project C
  • Relationships
    • [X] Hang out with family some more!
    • [X] Spend time with W-‘s friend Dan in The Hague
    • [\] Write and sketch stories from trip – wrote a few
    • [-] Organize photos from trip – haven’t looked at them!
    • [-] Catch up with mail – answered some mail, but not yet all
    • Got first Plan B Organic Farms box. Had lots of salad. Yum! Plus dandelions, too.
  • Life
    • [X] Plant more herbs and greens
    • [X] Decompress
    • [-] Write more for upcoming trip

Plans for next week

  • Work
    • [ ] Conduct training for project I in Colorado
    • [ ] Keep an eye on project M
    • [ ] Sort out upcoming projects
    • [ ] Prepare for social media / Gen Y talk for client D
  • Relationships
    • [ ] Catch up on mail
    • [ ] Write more about Netherlands trip
    • [X] Plant more herbs and greens – basil basil basil basil
    • [X] Make bagels
    • Helped hem J-‘s pants – made a hair bow, ribbon, and brooch from the scraps
  • Life
    • [ ] Set aside writing time while on business trip, and actually write
    • [ ] Think about what I want to learn next – more sewing projects?

Rails: Preserving test data

May 16, 2011 - Categories: development, geek, rails

I’m using Cucumber for testing my Rails project. The standard practice for automated testing in Rails is to make each test case completely self-contained and wipe out the test data after running the test. The test system accomplishes this by wrapping the operations in a transaction and rolling that transaction back at the end of the test. This is great, except when you’re developing code and you want to poke around the test environment to see what’s going on outside the handful of error messages you might get from a failed test.

I set up my test environment so that data stays in place after a test is run, and I modified my tests to delete data they need deleted. This is what I set in my features/support/env.rb:

Cucumber::Rails::World.use_transactional_fixtures = false

I also removed database_cleaner.

You can set this behaviour on a case-by-case basis with the tag @no-txn.

Running the tests individually with bundle exec cucumber ... now works. I still have to figure out why the database gets dropped when I do rake cucumber, though…

2011-04-24 Sun 16:21

Finding the bright side of business travel

May 17, 2011 - Categories: travel, work

I don’t like travelling. I’d rather be home: husband, cats, garden, library, home-cooked food, regular routines, everything I need where I want it to be. But we haven’t figured out teleportation and some clients want face-to-face contact, so I go if necessary.

It’s a little hard to focus on the bright side of business travel, aside from the opportunity to meet people in person. Travel changes such a large chunk of personal time. Long days trail off into the temptation to spend evening hours catching up with work e-mail or flipping through the movies on the television. Restaurants overwhelm with choices and serve too-large portions. Laughter and meows are replaced by the white-noise hum of hotel airconditioning.

But there’s a bright side there, somewhere, new opportunities that open up during every disruption. Here’s what I might be able to do this trip:

I could enjoy business travel more, I suppose, if I stayed an extra day in the cities we visit. Here loss aversion rears its behavioral-psychology head, I think; I’d find it hard to tear myself away from home a day early in order to walk around a city by myself. This is not completely true. I haven’t tried it, and I should give it at least one try. And for places I know we have friends in, I’d be happy to come a day earlier or leave a day later so that I can spend time with them. Perhaps the next trip.

It’s difficult but essential to be where you are, not mis-placed.

2011-05-15 Sun 09:26

Walking outside my comfort zone – bike? push/kick scooter?

May 17, 2011 - Categories: analysis, decision, kaizen, travel

This walking-around-a-strange-city has its pluses and minuses. Plus: I got to see Denver’s downtown pedestrian zones and how they’ve set up the 16th Street Mall with plenty of trees and benches. Minus: My phone was dead, so I didn’t have GPS, and I hadn’t fixed and brought my MintyBoost yet, and I didn’t have a physical map. I missed my stop on the way back and ended up walking an extra 4.5km. Easy enough to plan for next time. On my next trip, I’ll definitely bring a power supply!

While walking around, I thought about what would make exploration easier. GPS and offline maps are definitely big ones, which probably means just making sure that I can recharge my smartphone on the go.

The thing with walking is that if you make a mistake or you miss a stop, it takes a long time to get back on track. On a car, you can swing around quickly and be halfway across town in a few minutes. On a bicycle, you can still cover a lot of ground. Walking? Trudge trudge trudge trudge. In the dark, this can be a little scary.

Walking also means I can’t cover that much ground. I know I can take a taxi, but I find it hard to shake the idea that taxis are a luxury. ;) Public transit is good, but the schedules can be tricky. CoPilot Live for Android shows me where the nearest bus stop is. As long as I keep the last bus times in mind, I’m pretty okay with asking for directions and waiting a bit at stops.

Reasons why it might be worth hacking this:

It would be really awesome to reduce anxiety. I get fidgety if I’m walking by myself and there are few people around. Public transit schedules tend to have gaps, and sometimes it’s hard to find a place where I can get a cab. (Which of these roads will lead to a hotel? Hmm.) If I’m on a bike, I can cover more distances myself, with the trade-off that I’ll just be worried about accidents. (Bright lights, reflective tape, road caution, helmets?) Even a push scooter might get me quickly from a silent patch to someplace with more light and/or people.

It would be great to not take cabs to client sites. Yes, I know, it’s a business expense. But I still take public transit whenever possible, even if I don’t benefit from the savings. Part of it is being aware of the moral hazard of a company expense account (when you change your behaviour knowing someone else is footing the bill), and part of it is fighting the hedonic treadmill (when you get used to a level of consumption).

It would be great to see more of the places I stay at. Might as well, I’m there already. I’m an odd sort of traveller, though. I’m not driven to take my picture beside famous landmarks. I don’t collect knick-knacks. I occasionally meet up with people, but I’m also fine connecting virtually. I do like checking out thrift stores. I can’t stand paying retail, and browsing through people’s donations gives me a little idea of what people are like.

I’m probably looking at two or three solo trips over the next year and some light use back home. No big deal – the null option (listed below) might still be cheaper.

How can I cover more ground and reduce the cost of making mistakes?

What about renting bikes? Most cities have bike rentals. I’m not sure if I can generally take advantage of them – time, familiarity. Well, maybe a handlebar mount for my Android, and spare power in case I need to charge up? If the weather forecast didn’t call for thunderstorms this week, I might’ve borrowed a bike and used it to get around.

What about a folding bike? Two of my friends take folding bicycles with them on trips. That might work, too, because then I won’t have to think about rental hours or availability. I tend to pack light. My travel clothes fit in my carry-on, which means I can keep the suitcase for the bicycle. A bicycle would give me better range and might come in handy if I can’t hitch a ride with a coworker. Would a folding bicycle be worth the investment? It will primarily be useful for solo air travel, and I don’t plan to take more than two or three such trips over the next year. (Note: Watch out for airline fees!) It may also be useful for subway or bus-assisted trips – not the one to work, but maybe when visiting friends. If it’s light enough, I might also use it for short trips in spring and fall, when my town cruiser is hung on the bike rack.

How can I test this idea?

What about push scooters? Other people swear by them, as they fold up smaller and are lighter than even the lightest folding bikes. A folded-up scooter is less bulky than a folded-up bicycle, and many models can be rolled along like strollers or shopping carts. Pushing myself might be interesting given the flat shoes I typically wear, though – I might change into a pair of sneakers. A push scooter would primarily be useful for getting around town on solo trips in conjuction with public transit. It might also be useful for going to the library or to the grocery store for quick trips, and for getting to the subway station when I’m not biking to work (when rain is expected, or if my bike’s still up on the rack). I walk to the supermarket or library about twice a week, but this is usually a social walk with W- and J- too.

How can I test this idea?

If the forecasted thunderstorm lightens up, I’m going to take the bus down into Boulder tonight to check out some of their thrift stores and to try the dining options along Pearl street. While there, I can think about which of the options would have given me the most benefit.

Hmm. Thoughts? Experiences? Advice?

2011-05-17 Tue 14:37

Ordered a Kindle with free 3G

May 18, 2011 - Categories: geek, kaizen, travel

After much consideration (and you know how I analyze my decisions), I ordered the 6″ Kindle with free 3G and WiFi. I chose the smaller Kindle instead of the DX because I have tiny hands, and the Internet said that the DX might get a little tiring to carry if you have small hands. I chose the Kindle instead of an iPad or Android tablet because I wanted a device for travel (decent battery life and the ability to search for addresses / public transit directions). Roaming data charges for iPad or Android use would be really expensive. Even if Amazon discontinues Whispernet (as it might – who knows?), it’ll be worth it if I can get a good couple of years. Books will actually be a nice bonus, not the key selling feature.

I read a ton of books, and the Kindle can read the EPUB books I check out of the Toronto Public Library. It can also handle PDFs. You can bet that I’m going to try Albert Harkness’ “An Easy Method for Beginners in Latin” as soon as I get the Kindle unboxed and charged up. I might as well learn something on the way to the airport. =) It’ll be better than my Android, which has problems viewing PDFs with images in them. The Harkness e-book is all images (it’s a scan of an out-of-copyright book), so I haven’t been able to read it at all on my Android.

Of course, there’s actually buying books from the Kindle store and having them delivered on the fly… Tempting! I will have to set a book budget. I hardly buy books now – the library’s been enough for me – but I may get swayed by the new releases that will be instantly available.

Here’s hoping that Amazon’s delivery mechanism goes without a hitch and I receive my Kindle on Friday! If not, I’ll have to figure out how to reship the package back home.

Fingers crossed!

2011-05-18 Wed 22:09

Travel updates: GPS, Pearl Street, Vibram toe shoes

May 20, 2011 - Categories: geek, kaizen, travel

From Thursday evening: Success! I spent late afternoon and evening wandering around Pearl Street Mall and thereabouts in Boulder, Colorado.

I walked around a bit more, checking out Buffalo Exchange and Goldmine Vintage. I like browsing through second-hand stores. You get a more eclectic, more comprehensive feel for a place’s style, and you can often pick up some great deals. Both stores had smaller selections than Goodwill, but they had interesting items. I didn’t buy anything, though. Looking at clothes in general makes me want to get back to my fabric stash and my sewing machine. =) I did look around for inspiration, and I experimented with some colour combinations and silhouettes.

From Phone

While walking along the Pearl Street Mall, I came across Outdoor Divas, a store focused on women’s sports clothing and accessories. I found some travel things I liked. Outdoor Divas also stocked Vibram, the toe shoes I remember reading about on a productivity blog. I’d been curious about Vibram for a while. It’s supposed to be a more natural way to walk, because your toes can go where they’re supposed to go instead of being confined and deformed by a narrow toe box. I have wide feet and I avoid shoes that squeeze my toes, but Vibram shoes would be taking that one logical step further. MEC occasionally stocks them in Canada, but it was somewhat cheaper to get them in the US considering currency values, foreign exchange fees, and taxes. Being able to fit them to find the right size for me was certainly helpful, and it was great having better shoes to walk through the rain with! I also picked up a pair of performance toe socks – wicking, fast-drying, and with a colorful pattern for extra fun. (Performance toe socks! By golly.)

For dinner, I had udon topped with tofu at Hapa Restaurant. It was so delicious and so filling! The soup was delicately flavoured and the tofu was just right. They’re justifiably proud of their udon, and it was the perfect way to round off a cold, rainy day.

I made it back to the Boulder Transit Center with plenty of time to spare. The BOLT bus (Boulder-Longmont; the city has cute names for bus routes, such as HOP, SKIP, and JUMP) took me to the Twin Peaks mall (fare: $4), and I walked to the hotel. Being able to review my route using the GPS made me worry much less about missing my stop or walking around the outside of the mall.

Thoughts:

Neither a bike nor a push scooter would’ve been of much use for that excursion. It was all about walking – but then again, I stuck pretty closely to the pedestrian mall downtown. For pedestrian-oriented places, I might just need GPS and possibly 3G. For places that are spread further apart or that lack sidewalks, a bike might come in handy.

CoPilot Live rocks. I set it to turn the backlight on near turns and to warn me of upcoming turns. This was great for walking around and for making sense of my bus ride while minimizing battery use. I also really liked the local search for points of interest, which is how I found my way back to Hapa. Sweet!

I can save battery for GPS by skipping WiFi on my Android. With some discipline, I managed to avoid using my Android for WiFi browsing until I was safely back in my hotel room. WiFi drains the battery surprisingly quickly. I had run out of battery on Wednesday, when I had used my Android for lots of browsing before leaving for my adventure. With WiFi off, my phone battery lasted through a few hours of GPS navigation, and it still had about 50% left when I reached the hotel.

Hey, this Vibram thing looks promising. I’ve just started wearing this funny-shaped shoe, but I think it’s more comfortable than my other flat shoes. I’m already plotting when I’m going to be able to wear them next. Unfortunately, not to the office, but I might head downtown again tomorrow to check out the Goodwill in Boulder. Besides, it’ll be raining. No sense puddle-wading with my leather shoes. I know the Vibrams can deal with puddles. I may buy gloves and legwarmers, though!

Waiting for my Kindle

May 20, 2011 - Categories: geek

I’m waiting for the delivery of my Kindle. Well, I’m not really waiting for it. I’m waiting for my co-worker so that I can hitch a ride with him to the office. But my Kindle has made its way from Arizona to Colorado, with a brief stopover in Ontario. (What?!) It got loaded on a delivery truck at 7:27 AM this morning, and now we’re down to the wire and wondering if it’ll get here before my non-morning-person coworker gets his coffee. No big deal if it doesn’t. I can pick it up when I get back to the hotel.

I’m this close to waiting for it and then just taking the bus to work, but that way lies temptation – even though it would be great to fully charge it before heading out later. Must. Resist.

7:56. My coworker has made an appearance. Oh well! I’ll see my Kindle later. =)

Presentation draft: Mentoring on the Network

May 21, 2011 - Categories: mentoring, presentation, speaking

Gail LeCocq asked me if I wanted to give a presentation for the Other-Than-Traditional-Office (OTTO) group in Toronto. At the time, I was preparing The Busy Person’s Guide to Learning from the Network, so I suggested that. When she got back in touch a ew weeks later to confirm, though, I realized that I wanted to talk about a different topic instead. I suggested a topic on mentoring, which several people had asked me about. Here’s a rough draft.

Mentoring on the Network
View more presentations from Sacha Chua

Why

Mentoring. We all know mentoring is good for your career, but sometimes it’s hard to make time to find and meet with mentors. Here’s how mentoring can make a big difference in the way you work:

So mentoring is good, but how can you convince someone to invest the time and energy into mentoring you, particularly if you can’t make that face-to-face connection with them or develop familiarity by working together in a colocated office?

Mentoring can be difficult if you’re a remote employee. In an office, you might bump into someone you admire and ask them questions, your manager might walk over and introduce you to someone, or you might buy someone coffee or lunch while picking their brain. When you’re remote, you need to be more creative about connecting with people.

On the plus side, you can connect with possible mentors around the world. This means you can learn from very different perspectives. You can get a sense of what life and work is like in different business units and geographies.

Finding mentors

In IBM, you can use the Bluepages company directory system to find people who have volunteered to mentor other people. IBM Learning organizes speed-mentoring events where you can connect with many possible mentors, ask quick questions, and follow up for additional help or introductions. IBMers are also usually open to e-mail requests or questions.

Mentors can be older than you or younger than you, in the same business unit or in a different one, next door or around the world. Keep your mind open, and reach out. It doesn’t hurt to ask.

You can build a mentoring relationship over time. Start by connecting with your potential mentor and asking for a small piece of advice. Act on that advice if it’s good. Send a thank-you note with the results. Ask for more advice, and share more updates. Share what you’ve been learning from other people, too. If it turns out to be a good fit for both you and the other person, you might ask if you can set up a regular monthly chat to learn more.

If your potential mentor posts blog entries or profile updates, you can use that to build a relationship as well. Read what they post, comment, and share any updates on insights you’ve picked up from them and applied in your work or life. Send thanks – or better yet, post your thanks online too.

Making the most of mentoring

Helping others is fulfilling, and you’ll learn a lot along the way. Even if you don’t consider yourself an expert, you’ve probably learned a lot of things you take for granted. You can help people get started, save time, and learn more. Give mentoring a try!

Some ways to connect with mentees:

Don’t forget to mention your mentoring during the Personal Business Commitments (PBCs) review. It’s a way of giving back to the community and investing in others!

Next steps

Now we get to the networking part of this presentation, where you might find a mentor or connect with a mentee. You’ll probably want pen and paper for this one, so you can write down people’s names. Let’s go around and introduce ourselves. Say your first and last name, then answer these questions: What do you need help with? What can you help people with? Then say your first and last name again, in case people missed your name the first time around. (Spell your name if you need to.) If you’re listening to someone’s introduction and something interests you, feel free to connect on this call or through Sametime!

What do you think? What would you like to share with other people looking for mentors or mentees?

2011-05-20 Fri 14:55

Notes from the airport: Missed my flight; not the end of the world after all

May 21, 2011 - Categories: travel

For the first time in my life, I missed my flight. I was in tears. I called American Express, and was on hold with them while they rerouted my itinerary through Vancouver. It will be an overnight flight and I’ll arrive Sunday morning instead of Saturday night, but I’ll arrive.

Then I called W-, who told me things were going to be okay and helped me remember that I was strong. I don’t feel very strong at the moment – my fingers shake – but I can feel the storm of panic and frustration and self-pity pass. Denver International Airport has free wireless, but I can’t seem to connect to it. I used my Kindle to send him a Twitter direct message with the flight details the travel agent gave me. I may be frazzled, but I still turn to frugal workarounds for roaming charges.

There’s a lesson in here about timezones, public transit, and triple-checking my departure time against my printed ticket instead of my copied itinerary. Better to learn the lesson this time than at a more crucial moment – that’s what I always tell myself when I make a mistake large enough to throw me off-kilter. Better now than later. Better a small situation than a life-or-death one. Going home, with Monday a day off, on a US-Canada flight, a missed flight has much smaller ripples than an inbound flight on a critical business trip or an expensive personal trip halfway across the world–and I still get to distill from it whatever it can teach me about life and myself.

That’s the second thing I tell myself during these hiccups: It all becomes part of the story, the rough watersas well as the smooth. I’m learning that after that initial flood of panic, I feel this preternatural calm sets in. I can’t change the past, so I don’t fret about it. No amount of worrying is going to change my short-term future. This nervous energy can be channelled into writing. Not too long from now, there’ll be a day when everything will be back to normal. Why stress out about things I can’t change and that won’t be permanent? Everything is going to be okay.

The situation is not that much different from a hypothetical world where I’m sitting in the airport patiently waiting for my intentionally-booked flight to Vancouver with a connection to Toronto. I’ve done that before. After setting the wheels in motion, it is an easy thing to shift to that track, like rail lines that start at different stations and converge. I learn what I can from stress, then call up that feeling of purposeful waiting.

Missing a flight, surprisingly enough, isn’t the end of the world. (Even if you miss said flight on May 21, the supposed day of the apocalypse.) Even though this is my first missed flight, the travel agencies and airlines have handled innumerable cases like mine before, and they know what to do. The American Express agent found another route to get me to Toronto. although it takes much longer than my original flight does, and arranges it for the change fee $150 plus the fare difference. Better than losing the full value of the flight, for sure! I don’t know if IBM will allow me to expense the increase in my fare, but if not, I can charge it to my experience fund – and thank goodness I have one, so that unexpected expenses don’t plunge me into more lasting troubles. I already know the process for paying part of my American Express card in case IBM policy doesn’t cover the itinerary change. Even though the flight lands early in the morning, W- will be there to meet me. Boy, will I be ever so glad to see him! Everything’s going to work out okay. Worst-case scenario, I pay for the fare difference myself, and it takes me a little longer to save up for my next goals. No big deal.

W- is right. I’m strong. I bounce back almost involuntarily. Maybe this hiccup will help me become even more resilient, if I remember to take the right lessons from it, if a future crisis makes me think, “Aha, I know how to deal with this, I’ve survived something similar before” instead of “I’m such an idiot, I can’t do anything right, like that time I missed my flight.”

Things I am glad about:

There are more thoughts for this list, but I’m at the gate waiting for the flight to Vancouver. Everything will work out.

2011-05-21 Sat 17:00

Victoria Day weekend: back to the garden

May 22, 2011 - Categories: gardening

Back home and back to the garden! The plants had been very busy growing while I was away. The oregano at the back has doubled in size. The peas are climbing up the twine. The blueberry bushes are flowering. The dill’s starting to sprout. Some of my spring onions have even made it, although a few had been dug up by squirrels who disagree with my landscaping.

The Victoria Day long weekend practically marks the start of the main gardening season. The garden centres are open during the holiday, and the herb and vegetable starters have joined the annuals. People are out planting.

W- and I walked around the neighborhood looking at people’s gardens. Down the street, Awesome Garden Lady’s plants are lightyears ahead of ours, and she’s already started harvesting herbs. We looked at the flowers in other people’s gardens, the way the perennials and annuals were arranged, the color combinations that caught our eyes. We identified fruits, herbs, and vegetables tucked into unusual places: mint slowly spreading across a front yard, alliums (onions, probably) with delicate bulb-like flowers, strawberries peeking out between hostas.

I think we’ll plant the front yard for herbal teas and other edibles. =) That will be fun and useful! Here’s what I’d like to plant:

Common name Height
Sage 2-3′
Bergamot 2′
Anise hyssop 2-4′
Lemon verbena (potted/annual?) 4′, can be more compact
Catnip (potted) 3-4′
Stevia (not hardy) 2-3′
Peppermint (potted) 2′
Variegated common thyme 6-10″
Sweet woodruff 6-12″
German chamomile 12-24″
Lemon balm (potted) 12-24″
Curly spearmint (potted) 12-24″
Pot marigold (annual) 18″
Purple basil (annual) 18-24″
Lavender 12-24″
Golden lemon thyme 6-8″
Marjoram 12″
Cilantro (annual) 18-24″

This is roughly based on http://www.countryliving.com/outdoor/garden-plans-finder/herbal-tea-garden-plan-2, with possible substitutions for things that are not hardy in Zone 5. I’ll probably arrange it in some kind of a circle, with the taller plants in the middle.

The library has a couple of books on herbal tea gardens. Exciting!

2011-05-22 Sun 19:13

Gardening: Horticultural investments, social dividends

May 23, 2011 - Categories: connecting, gardening

It started when we peeked through the bedroom blinds and saw our next-door neighbour cross the street to the house of the neighbour opposite us. He waved to them and took a wheelbarrow of triple-mix soil from the cubic yard bag sitting in front of the house, rolling it back down the curb, across the street, and up the other curb to his house. “They must’ve gone in together on a yard bag of soil,” W- said. It probably didn’t require much neighbourly coordination – a casual conversation, an offer of help – but we envied the ease and connection it implied. We knew our neighbours on either side of our house, but not so much the ones across the street. How could we get to know more people in the neighbourhood?

Gardening, apparently, is an excellent way to meet people over here. Investing in perennials and annuals turns out to pay social dividends. We dug up and gave our front-yard irises to one of our neighbours – we made space for new plants, and he added some more colour to his garden. We replanted the front yard as a herbal tea garden, with the sidewalk box planted as rows of colourful annuals (including one row of edible flowers, the petunias). We dug up the boxwood and juniper shrubs, placed the new plants, and chatted with neighbours and passers-by who complimented us on our garden. We even had an extended conversation with Awesome Garden Lady Down the Street, who as it turns out is Mrs. Wong, and who gave us extra vegetable seeds and plenty of advice.

Here’s what we planted today:

Weeding and cultivating the front yard will no doubt keep us busy throughout the season, and familiarity leads to conversations. I hope to get quite a few herbal infusions out of it too, and perhaps even a garden party. Our back yard garden is growing well, but is understandably limited as a conversation starter.

If you’re an introvert with a front yard, you might want to give gardening a try too. It’s easier for both W- and me to talk to people when there’s an excuse to do so, instead of just chatting with people out of the blue. Gardening provides an excellent excuse – people talk to us, or we can ask about other people’s gardens as we walk around. Lawns might draw remarks if they’re well-kept, but a more diverse and colourful garden will probably be easier. Have fun!

2011-05-23 Mon 17:35

Experimenting with standing desks

May 24, 2011 - Categories: geek, kaizen, life

(From May 12) People in IT tend to spend a lot of time sitting in front of a computer. Unfortunately, sitting is bad for you, so we’ve been looking for ways to improve the structure of our work.

I came down one morning to find the router on the kitchen table – not the networking kind of router, but the woodworking kind of router that spins at more than 20,000 rpm. You see, W- built a bench-top router table last year. The router table houses the router and has a long edge that fits into the Workmate vise for stability. With the router lowered and the long edge set along the kitchen table’s edge, the router table turned out to be about the right height for a standing desk for W-.

I’m shorter than W- is, so I needed a footstool to correct the ergonomics of our router-kitchen-table combo. This was inconvenient, but we found another option for me: the kitchen counters. With my slippers (Kaypee Islander flip-flops with thick soles and comfortable support; I’ve had them for years), I found it easy to type on my computer throughout the day.

W- reported that the printer downstairs also provides a platform at the right height for a laptop. Once you start looking around for surfaces at about the right height, you find many.

If standing works out, the next step might be to find a semi-permanent place, maybe even hook up a monitor for even better ergonomics.

Doesn’t take a lot of money to experiment with standing desks. Just a little creativity. =)

2011-05-12 Thu 19:09

The flow of opportunities in a large company

May 25, 2011 - Categories: ibm, work

Henry Will asked me how I got to work on such interesting projects. What worked particularly well: blogs? presentations? networking?

Working in a big company is a bit different from marketing yourself outside. In a big company, it’s easier to establish and maintain large networks of people, and the organizational structure also helps pass messages up and down. When you hook in through a number of connectors (for example, my manager), figure out the tools for finding opportunities on your own, or build a reputation, opportunities can flow easily. Outside a large company, word of mouth is still powerful, but it can be difficult to build those relationships over distance and with an large number of competitors.

I do a lot of work related to Web 2.0, social media, Gen Y, PHP, Rails, and AJAX. For consulting and strategy work related to Web 2.0, social media, or Gen Y, I find that most of the leads come in through the presentations I’ve given, or from people I’ve worked with in the past. Short presentations with catchy titles or designs can go a long way. I haven’t been proactively investing in presentations. I tend to create them on request. Presentations take a lot of time for me to prepare, so I try to maximize their ROI. In fact, I get a lot more value from the blog posts that I write before a presentation (full speaker notes, ideas, etc.) and after a presentation (questions, lessons learned).

Many of my PHP/Drupal, Ruby/Rails, and AJAX work comes in through my manager, who knows about my different skills and interests. Sometimes I search our professional marketplace for upcoming opportunities requiring those skills so that I’l always have projects in the pipeline. I actually like this work more than consulting (which can be fuzzy and hard to define), so my manager and I try to pick development projects that will keep me busy and happy while still being flexible enough to accept consulting work.

If you work in a company, it really helps if your manager knows what you’re good at and what you’re interested in. He or she may be plugged into streams of opportunities, and help the right ones flow to you. It also helps to invest time into sharing what you know and helping other people out. That way, people know what you’re good at, and they can keep an eye out for things that fit too. You might get to the point of having too many opportunities, which is a great problem to have. If so, build relationships and help others by sharing those opportunities. Good luck and have fun!

Taking a break while working on presentations

May 26, 2011 - Categories: speaking

I’m taking a break from working on presentations. Not a long break – there’s still a lot of work that needs to be done – but I need to get myself back into the swing of preparing presentations after spending so many weeks doing development. This means stopping when I can tell my mind is resisting, figuring out why, and tweaking how I work until it works again.

Many people would rather watch presentations or flip through slides than read blog posts or books or search results. for presentations. I really should just become okay with slurping in tons of information, digesting it, and regurgitating a summary.

The core of the resistence: I’d much rather build cool websites than talk about trends. Development is clear. You know what you know. You know when you’re making progress. You know when you’re correct. At the end of the day, things are better.

Presentations are a whole lot fuzzier. There’s this entire Jacobian struggle with a topic, trying to get your arms around it, struggling to understand and be understandable. You’re never quite sure if people will actually change their lives (even a little bit?) after listening to you. I always try to influence people’s lives through presentations. Why spend time preparing or speaking for anything less? But then there’s more risk of rejection – or worse, apathy.

I try to use presentations to change my own life, too. At least I learn something, try something, do something. Besides, all the ideas become part of me, raw material for unexpected combinations in the alchemy of learning.

It’s a struggle to hold down the imposter syndrome that threatens to choke me. I remind myself that these rough presentations can be drafts for people to improve on, perhaps the spark that triggers something else. It’s okay.

Maybe I should stop accepting presentation invitations for now, and focus instead on creating new presentations as a way of deadline-less deliberate practice. I can commit to giving them in person only if I’ve created and revised them already. Maybe I should do what Jonathan Coulton does: set the challenge of making a Thing a week. He’s brilliant and he writes funny songs. Maybe I’ll have more fun making presentations when I get better at making presentations through practice.

Ways I can get better at making presentations:

Developing a workflow with Autodesk Sketchbook Pro

May 27, 2011 - Categories: drawing, sketches, speaking

J- is digitally inking her writing assignment using Autodesk Sketchbook Pro on the Cintiq 12WX drawing tablet downstairs. I’d become a big fan of Autodesk Sketchbook Pro while working on it on my laptop, so I thought she might prefer it over GIMP. The pen-based controls are intuitive, and the feel of digital drawing is better than the frustration of redoing and reinking on paper. Now she’s off zooming in and out, adjusting her brush sizes, and working with a large and zoomable canvas. =)

screen_1306425369.99

I’ve been using Autodesk Sketchbook Pro to do more and more of my presentation planning, too. The workflow is slightly different from Microsoft OneNote. With OneNote, I can draw storyboards, then scale up the storyboards without any loss of information and without jaggy lines. (The joys of vector drawing!) Autodesk Sketchbook Pro lets me scale up rough sketches, but the interpolation isn’t always smooth. Instead, I storyboard everything. Then I hide any layers I’m not working with, lower the opacity of my storyboard layer, add new layers on top, and draw each slide as a full-size layer. I do any colouring on a second layer below the ink, so that the black lines stay crisp. The finished layers are easy to copy to a separate presentation program.

So how does my Autodesk Sketchbook Pro workflow compare to Inkscape? When I use Inkscape (a proper vector drawing program) for presentations, I usually set up an infinite canvas, and clone a series of rectangles for my storyboard. Inkscape makes it easy to sketch elements here and there, rearranging them on my storyboard, rotating and scaling them to fit. After I do a little masking and line adjusting, I import the finished slides into a presentation program. Simple shapes are easy to colour. If I need to shade things more, I can import the images into GIMP.

I can still do text presentations, but they’re a little less fun. ;) Drawing takes time, but I like the practice. How do you do your presentations or drawings?

2011-05-27 Fri 18:52

Weekly review: Weeks ending May 20, 2011 and May 27, 2011

May 28, 2011 - Categories: weekly

Things have been a little hectic around here. =)

Over the past two weeks

  • Work
    • [X] Conduct training for project I in Colorado
    • [X] Keep an eye on project M
    • [X] Sort out upcoming projects
    • [X] Prepare for social media / Gen Y talk for client D
    • Booked flight to New York
    • Biked to the office twice
    • Presented “Mentoring on the Network” to 50 IBMers
  • Relationships
    • [X] Catch up on mail
    • [X] Write more about Netherlands trip
    • [X] Plant more herbs and greens – basil basil basil basil
    • [X] Make bagels
    • Helped hem J-‘s pants – made a hair bow, ribbon, and brooch from the scraps
  • Life
    • [X] Set aside writing time while on business trip, and actually write
    • [X] Think about what I want to learn next – more sewing projects?
    • Found out what happens when you miss a plane (world does not end)
    • Lots of gardening! Redid front yard as a tea garden

Plans for next week

  • Work
    • [ ] Finish Gen Y/Gen C presentation
    • [ ] Get started on project M
    • [ ] Wrap up on project C
  • Relationships
    • [X] Help J- with homework
    • [X] Make cute cat soap holder
  • Life
    • [ ] Fix this calendar bug: what can I do to make it easier to remember events and tasks?
    • [ ] Draw a presentation-style thing for myself =)

Dealing with a bad calendar week

May 29, 2011 - Categories: geek, kaizen, life

I’m having a bad calendar week. I don’t check my calendar often enough, and I miss things. The other day, I missed a Skype chat. Yesterday, I sprinted to the subway station in order to get downtown for a 4:30 PM performance of the opera Orfeo ed Euridice. I made it to my 5th-floor seat just before the lights dimmed. I’ve missed other things in the past – not many, but enough to point to a clear life-bug that I need to hack.

What can I do to get back into the rhythm of having a solid, trusted system for calendar reminders and tasks?

Put it in my way. I always check my Android in the morning. I can clean up my task list, add calendar entries to my lock screen (I’m trying out Executive Assistant on my phone), and get into the habit of checking those before I indulge in reading feeds. I added a calendar widget to my home screen too – I think that will help.

Set up interruptions. I can set my calendar alarm to something I usually notice, such as my ringtone. When I combine this with using timed mutes instead of manually muting my phone, that should make it easier to let important things interrupt me.

Here we go!

May 29, 2011: bagels, banana bread, bok choi, bath stuff, and books

May 29, 2011 - Categories: life, sketches

image

Today was a wonderfully domestic day. I did laundry, baked bagels and banana bread, helped J- make a soap holder based on Nyan Cat, planted bok choi seeds, and sewed a bright orange cover for my Kindle so that I stood a better chance of finding it around the house. I’m starting to feel properly relaxed, slowly unfolding myself from the ack!stress!stress!stress! of travel. Not too relaxed – I’ve got another short trip coming up – but I’m beginning to feel normal again.

Made a kitty soap holder

May 30, 2011 - Categories: sewing

I think I’m getting the hang of crafting. When J- said that she was thinking of sewing a stuffed-toy-like soap holder for one of her school projects, I prototyped something along those lines to see how easy it would be to make. I liked how mine turned out:

It can act like a washcloth, and it can hold all those little scraps of soap that otherwise fall down the sides. =)

Seasons and salad days

May 30, 2011 - Categories: cooking

imageThe stove idles as we switch gear to salads. No heat. No cooking. Just the whirl-whirl-whirl of leaves in the salad spinner, a quick whisk-up of salad dressing, and whatever I can grab from the fridge. Today: chicken on top of kale and lettuce tossed with a lemon vinaigrette. Even the chicken was a kitchen shortcut, bought from the supermarket rotisserie.

Salads don’t fill me as much as a warm meal would, except with a certain self-satisfaction. I tell myself that salad is better for me. This helps me ward off the temptations of rice and adobo, pan-fried bangus, spaghetti bolognese. Mmm. If I can eat those in the heat of Manila summer, I can certainly make them during Toronto’s spring. But we still have salad greens in the fridge, and they will go to waste soon enough. We’ve signed up for a summer share of a community-supported farm, so more vegetables will come in. No sense freezing the spinach, then, or saving the beets. May as well eat them. Behavioural economics in the kitchen: the loss-aversion approach to eating well.

So I stock up on slivered almonds, olive oil, and different kinds of vinegar, thumb through recipes for inspiration, and talk myself into enjoying the fruits and vegetables that are harder to get the rest of the year.

In the Philippines, where it’s warm all the time, my meals felt abstracted from the seasons. Here in Canada, nature’s influence is practically inescapable: what to buy at the supermarket, what I feel like eating, how I want to prepare it. Winter is baking season and soup season. Spring brings the first salads. Summer is a burst of colour and flavour, barbecue afternoons and ice-cream treats. Fall winds down with an abundance of root crops and the return to pies. I miss being able to eat whatever I like. No, I miss the constancy of those likes unshifted by the sun. I still like baked lasagna, but it feels odd to make it when the days are so long and the spinach is wilting.

Basic Vinaigrette (adapted from the Joy of Cooking)
About 1 1/2 cups, which is more than enough for two people’s worth of salad as a main dish

1 small clove garlic, peeled
2 – 3 pinches of salt
Mash into a paste; the tines of a sturdy fork will do the trick

1/3 to 1/2 cup red wine vinegar or fresh lemon juice
1 shallot, minced – you can also use part of an onion; I didn’t have any
1 teaspoon Dijon mustard (optional)
Salt and ground black pepper to taste
Whisk with the garlic and salt – use the same fork you used to crush the garlic, to cut down on the washing

Add slowly, streaming it in with one hand while you whisk with the other:
1 cup extra-virgin olive oil – or really, however much oil you need; taste periodically to make sure it still tastes like vinegar or lemon juice instead of being too olive-y.

Learning from Mr. Collins: Practice, conversation, and what to do when someone says something mean

May 31, 2011 - Categories: communication, life

"You judge very properly," said Mr. Bennet, "and it is happy for you that you possess the talent of flattering with delicacy. May I ask whether these pleasing attentions proceed from the impulse of the moment, or are the result of previous study?"

"They arise chiefly from what is passing at the time, and though I sometimes amuse myself with suggesting and arranging such little elegant compliments as may be adapted to ordinary occasions, I always wish to give them as unstudied an air as possible," [said Mr. Collins.]

Pride and Prejudice, Jane Austen

In Pride and Prejudice, Mr. Collins thinks up compliments and practises them until they flow smoothly. He comes off smarmy and supercilious, but the idea is generally useful.

imageI have a confession to make: I practise responses. After I find myself tongue-tied or I respond to something with less grace than I want to, I rehearse it and similar situations in my mind so that I can figure out a better way to respond. I think about translations that help me get to what people might really mean, phrases to use, tones of voice to adopt, ways to bring the conversation back on track. It’s a little like the way a witty retort might come to you hours after an argument (there’s even a name for this: l’ esprit de l’escalier, staircase wit), but done deliberately, and for good and self-improvement instead of for scoring points or getting back at someone. Deliberate practice makes perfect, after all.

For example, if someone says something sexist, I know my response won’t be silence, it will be something like "That’s sexist!" in as joking a way as I can manage – and I’ve practised not taking it personally, so it bounces off me. (Kapoing!)

I’m still figuring out what to do when someone says something mean. It happens to the best of us. I struggle to avoid saying mean things, too. I’m glad my first instinct isn’t to fight fire with fire, because that just makes things worse. I can recognize when something may be mean and stick up for myself: "That’s mean!" – not "That’s not fair!" or "That’s not nice!", which are a bit soft. I can separate what someone says in the heat of a moment from who they are and from what I think about myself, and I’m working on getting faster and more instinctive at doing so.

The Internet suggests several ways to deal with hurtful words:

I want to get to the point of being able to respond with loving-kindness to whatever life throws at me.

How do you deal with the occasional hiccup in people’s niceness?

2011-05-31 Tue 12:18