Archive for the ‘Music’ category

Stop Guessing about my STAR presentation

May 3rd, 2010

If you're new here, you may want to subscribe to my RSS feed. Thanks for visiting!

For anyone who recently attended STAR East and saw my presentation, thank you for attending, and for reading my blog. Some of you have viewed the slides on the proceedings CD and noticed that it’s not really like what I presented. I tend to change quite a bit of material between the date the slides are due and the actual presentation (In fact, I added a new slide about an hour before the conference).

Here are the slides I presented last week. Stop Guessing How Customers Use Your Software

And here is the video I showed about what happens with Windows error reports.

Trivial Pursuits

March 28th, 2010

I think a true passion for learning is one of the things that makes testers great. The best testers I know are always looking for concepts or viewpoints they haven’t heard before and looking for opportunities to learn anytime they can.But it’s usually not enough to just to want to learn – you need some skills on how to learn – on how to learn what you don’t know you don’t know. You have to be able to do a lot more than type things into a search engine. If you want to learn about something, search engine results are just the first clue of many that will take you on the learning journey.

I’ve taken two classes in my life that I will forever be grateful for taking. The first was typing in 9th grade. I was awful in the class, but it’s amazing how the basics have helped my productivity throughout the years (just ask anyone who’s ever been annoyed with me for continuing to type while I carry on a conversation with them). The other class was a Methods of Research class in grad school. To be specific, the class was Mus 510: Methods of Musical Research. The class was entirely about how to find information…and it was intense. My favorite part of the class (and the most hated for many others in the class) was the weekly “trivial pursuit” exercise. Each week we were given a page of questions, and asked to find the answers (and note where we found them in a specified bibliographic style). This was 1992, so the internet wasn’t really cranking along enough to help. Instead, the university library was our playground.

So you can get an idea of what we went through, here are a sampling of some of the questions. There is no additional context – this is exactly – and only, what was written on our assignment sheet.

  • Whose death was “bewailed” in Thomas Campion’s Songs of mourning in 1613? Where in this country will you find a complete copy?
  • Who made two snare drums dated 1839 and 1841 now owned by the New York Historical Society?
  • In what book will you find biographical notes on 53 song composers of India?
  • Who first decided that A should be 440 vibrations per second?
  • (and, my favorite…) What does “Gabriel” have between his teeth?

Every week we’d have ten or so of these, and every week I’d arrive at the library at 8:00am on Saturday when they opened, and wrap up just in time to leave at 5:00 when they closed. It was a long day, and it was mentally hard work, but I loved it. Little did I know that I was studying to be a software tester.

What I learned was how to dig deep. Start with whatever you think is the keyword and look there – then look for citations or references. If there aren’t any, look for unique phrases and search on those. During my eight hour Saturdays in the library, I learned that the first place you look for an answer is almost always only a clue for where you need to look next.

Let me put it another way – if you think you found the answer on your first try – or think you know what something is truly about because you read the wikipedia article or someone’s blog post, you will almost always be wrong. If you want to be a great tester, don’t settle for surface area answers – dig deep and pursue!

Give ‘em what they want

September 16th, 2009

Last night, I was sitting in bed reading the latest issue of TapeOp (music recording magazine). I used to be moderately involved in recording music, but these days I mostly just follow the trends and try to stay sharp. TapeOp has a lot of interviews with recording engineers and producers, and it’s great to hear what their thoughts were when they made some of their more famous recordings.

I feel sort of stupid that it took me until last night to notice (yet another)  interesting parallel with music and software. Recording is mostly a waterfall process. You record, then you mix, then you master. Some iteration is possible – you can record one song or a whole album before you mix – but most of the time, you finish recording, then you mix. When you’re dong mixing, you master. What’s interesting, is that there are a massive number of opinions on how to do each of these activities. Which mics are “best”? What rooms are best for recording a jazz combo? Do you record rock guitars with mics perpendicular, or at an offset? When should you use multiple mics? Where do you add eq? How loud do you make the vocals.

Then, there’s mastering – which in my opinion is awful on almost every pop or rock recording made in the last 10 years. Mastering (IMO) ruined the latest Metallica and Springsteen albums (and probably many others that I haven’t bothered listening to).

Whatever I think, the albums sold millions, and were (AFAIK, critically acclaimed). You know why – because despite the mastering – despite the fact they may have not used the best microphones or mic placements possible, it’s what the customer wanted. You can take the most well-rehearsed band in the world – use top notch equipment and fantastic production to recreate their sound exactly. You can add just the right punch and pop and remove any harshness and engineer the best recording ever.

But it doesn’t mean it will sell. Customers want something different, and if you don’t give them what you want, all you have is something that you are proud of, and not something that puts dinner on the table. Along the same lines, you can’t ignore the technical part of the process. Engineering quality still makes a difference, as long as you’re doing the right thing.

Same thing as my current day job.

Improvement through practice

September 3rd, 2009

In music, the better you are at the basics, the better you are on the bandstand. Even the pro musicians I know practice almost every day. I think testers (and developers) forget the value of practice too often.

In The Passionate Programmer, Chad Fowler suggests doing the exercises on CodeKata. I checked them out, and sure enough, the Kata are great, and I plan to start working through them. A few years ago, I solved a bunch of problems on project euler as an exercise to keep myself sharp.

As a tester, it’s sometimes hard not to practice. As I interact with software, I often ask myself “what if” …then I try it and see what happens. But this is only “sort of” testing – it’s my tester DNA seeping out into my every day life.

I’ve been thinking about other ways to practice testing. I’m a member of uTest, but I haven’t taken the time to test anything. I suppose I could volunteer to test a non-profit’s web site or find a product I like to seriously beta-test – or I suppose I could look into volunteering a few hours a week in a MS product group.

How else do you practice testing?