Archive for the ‘Writing’ category

Why I Write and Speak

June 13th, 2010

I’m planning to give an internal presentation this week on what I do. I’ve been in my new job for three months, and although I’m still learning, I have enough of a routine that I’d like to share it with a few peers across the company to get feedback and ideas. Most of what I do is my job (that’s probably important, right?). I also still do a lot of cross company stuff (that’s probably pretty important too!).

With my remaining hours, I do “other stuff about testing” (I’ve been thinking about calling this “Project OSAT”, but it’s probably better to just call it “other stuff”). This includes writing books, contributing to other books, writing articles and blog posts, interacting on twitter, and participating in the overall testing community as much as I can find time for.

Sometimes, colleagues ask why I write, or why I speak at conferences. It’s not fame, and it’s certainly not for the money. It’s for ONE reason, and probably because of my lack of sleep due to 4:30am world cup matches, I’m going to share my motivation with everyone.

I write and speak because I’m lazy and cheap.

I suppose I should explain…

How We Test Software At Microsoft was written for one main reason. I talk to a LOT of people and companies about testing – many want to know Microsoft’s general approach to testing. I gave many of these companies the same answers. Over, and over and over again. Finally, I decided (with the help of a few colleagues) to write it all down and sell it for 25 bucks a pop (street price). There was just no way I could keep my sanity and continue to tell people about what testers do at Microsoft. Most of the articles and blog posts I’ve written have been for the same reason – I’m too lazy to give the same answer to multiple people, so when I start hearing the same question too many times, I write it down somewhere (NOTE: this is often also a good heuristic for automation).

Let’s not forget cheap. I hate paying to attend conferences (even if it’s technically my employer’s money). I do like to meet with other testers and talk shop (aka Project OSAT), but if I can get into the conference for free, I’m all over it (sometimes I even manage to get flights or more covered). So I submit proposals to a few conferences a year, and I typically get asked to speak at a few more. I do try to do a good job when I’m there (despite my laziness, I have a high bar for personal quality), but I go to conferences mostly because I get in for free.

Just because I’m lazy and cheap doesn’t mean I don’t care. I love writing, and I love speaking about testing and sharing what I’ve learned. I have worked, and continue to work extremely hard at both of these endeavors (see the note about my high bar for personal quality above). In fact, I’ve never taken money for any writing or speaking (some of probably think this is dumb, but it’s true). Way back when I first started writing for Better Software, I did this because not getting paid was easier than trying to decipher the company moonlighting policy. These days, I’ve found that I actually can get paid for most of this stuff, but I still don’t bother with it. When I consider how much I enjoy writing and speaking, doing it for free seems like the right thing to do (as long as you give me something free too – I’m still cheap).

HWTSAM – One Year Later

December 7th, 2009

I think it’s been a year since How We Test Software at Microsoft made its way to store shelves (and amazon). For the first few months, I watched the amazon sales ranking multiple times a day. I took a screenshot last December 18th that shows one of the few times we hit the #1 testing book. The book actually made up in the 7k range overall once, but apparently I didn’t take a snapshot.

image

Since then, the Chinese version was released, and the Korean version is imminent, and I’ve traded writing on weekends and evenings for more time with my family (and occasionally, more time for work). When I finished writing the book, writing another was the farthest thing from my mind, but since then, I wrote a chapter for Beautiful Testing, and have at least entertained the idea of writing something else…someday.

In hindsight, there are many things I’d like to redo with the book, but it is what it is, and I can live with that.It’s a book full of information and stories about how testers at Microsoft do their job. It’s a book about people, approaches, and some tools. It talks about when and why we automate tests, but covers a wide range of other topics as well, and I’m happy with the story it tells.

I think the book has sold somewhere around 5-6k copies (I haven’t looked at numbers in 6 months, but I’ll update this post if I do). That’s certainly not a huge number as far as books go, but it’s still amazing to me. My thanks go out to everyone who bought a copy (and more thanks to those who actually read it).

Some (more) writing tips

November 23rd, 2009

My last post contained one of the tricks I use when writing – how I use iteration when I’m writing. It’s one technique I use to make steady progress and avoid writers block. Although that post was about iteration in general, it reminded me that I have a few other tricks that I wanted to share.

Before you eagerly read on, please remember that I’m not an expert writer. I have some experience, but I don’t claim to have it all figured out. I think it takes much more than a handful of magazine articles and part of a few books under your belt to claim you actually know how to write or are anything remotely close to an expert, so please take my advice with a grain of salt. That said, there were a few other techniques I used when writing both hwtsam and my chapter in Beautiful Testing that help me a ton when writing.

First – if you want to write, dedicate some time for it. I found that I needed at least an hour to be effective, and would often block off 2-3 hour chunks of time on weekends. In one prolific stretch of writing, I took a week off of work, and wrote every day from 9-12 and again from 1-4. In my hour “off” I would go for a run and grab some food – the break was very energizing. I think I wrote 3 full chapters of hwtsam that week.

My next trick was to employ the (10+2)*5 trick (I wrote a windows sidebar javascript applet to help with this). The idea is simple. Write for 10 minutes – don’t stop. If you feel blocked, move to the next section (see my last post on iteration for more details). Refuse to be distracted by anything during those 10 minutes. When 10 minutes is up (my applet sounded a bell and changed color), do something else. Sometimes I would stare at the ceiling, sometimes I would check email, and sometimes I would glance at my rss feed. Even if you’re “on a roll”, stop and take a break. When the 2 minutes is up, repeat. Then repeat a few more times. Once you’ve gone through five of these 10+2 minute cycles, an hour is gone (and if your experience is like mine, you made a heck of a lot of progress). At this point you can launch straight into another hour, or you can do what I did and take an extended stretch and refill the coffee break. I have no idea if this will work for anyone else writing about testing (or any other subject), but I can tell you that I don’t recall ever having writers block – in fact, I sort of believe it doesn’t actually exist, but I’ll save that discussion.

Final tip (and also a sure writers block stopper) is something I picked up from Hemingway (not directly, but through the Paris Review). The tip is to stop writing every day before you’ve run out of ideas (I couldn’t find the actual quote where I read this, so bear with me). Think of this scenario: you’re cranking out some prose at the end of the day. You have a fantastic idea for a sample, story, or exposition – something that you’re ready to crank out and know what you want to do. My advice is to NOT write it. Instead, jot down a few notes that will help you get things going the next day and then call it a night. Otherwise, if you write your brilliant work at the end of the day, you’ll have to start from a clean plate the next day, and starting writing from a blank page is hard. I find it so much easer to get in the flow of writing if I already know exactly what I’m starting with in the morning. Sometimes a night of sleep also helps to vet the idea a bit more. Again, ymmv.

Hope there’s some useful stuff in here.