Appreciating the appreciation

This month I’ve gotten several compliments and positive feedback on how TestingConferences.org has helped them. Some have been speakers, some participants looking for a conference and others have been conference organizers.

It’’s a pretty amazing feeling when (in this case) multiple people say they’ve gotten use or value from something I created. Especially since this is a side project I developed to help me learn. I introduced TC.org in October of 2015 with this blog post and since then it has grown to the top of Google’s organic search results for many software and testing conference related searches. Even though I can see the numbers having specific people confirm they are getting value is quite nice.

In other words I appreciate the appreciation. I appreciate that human touch. This is something I intend to do more often in 2018: Thank people directly when I get value from their work.

As the World Turns

“As the world turns” seems like the best way to describe the busy-ness I’ve experienced recently. Feels like I’m forgetting a lot of things and to help I’ve written them down. I’m also feeling goofy so this post might contain a few GIFSs.

Work has been busy as I split my time building out our front-end automation suite and the remaining time exploratory testing. We recently brought on two new testers and combined with the pushes we’ve been doing it’s been all WORK WORK WORK WORK WORK.

For the past 8 or so years I’ve taught scuba diving through the retailer Sport Chalet which filed for bankruptcy in April and last week finally closed the store. While I’m still certified (and skilled) to teach scuba diving I haven’t yet decided if I will. If I do teach on my own there are some logistics to figure out like insurance, pool to train out of, or I could always join another dive shop. The upside of this means I’ll mainly do fun diving and have a little more spare-time!

Outside of those two things I’ve been helping my local dive club replace it’s aging website and leading an AST-BBST Test Design course. These classes are always fun but take a lot of effort for both the instructors and students. I try not to do BBST classes back to back and despite having a one month break between classes I just didn’t have the time to decompress like I thought I would.

For all these reasons and more I haven’t written much, except for this new blog post on LAWST-style workshops over at TestingConferences.org. I have lots of things to write about, lots of things to do and not a whole lot of time. Isn’t that always the excuse? Despite this, I’ve managed to keep TestingConferences up to date and finally transferred it to its own repo! (Want to help out? Contact me!)

Recently there’s been a lot of tweets about the context-driven-testing community (CDT) as a whole (or at least with some of its leaders / loudest members) and their perceived (or actual) hostility towards test automation. Some of this was in response to Chris McMahon’s post criticizing this publication about a single approach to test automation that uses the CDT branding. It’s been interesting to watch and to try to understand and I was glad to see some remarks from a few other CDT luminaries or “announcers” of community clarify a few details:

I have yet to read the publication above so I can’t comment too much on the validity of the criticism except to say I value test automation. I think it’s the only way to be effective as a tester. I also realize it’s a complex topic. In the end though, the real value of the context-driven-community and it’s way of thinking, to quote Cem Kaner, “lies in the nature of the tester’s analyses…” and that’s the part that interests me.

To end on a funny note:

Introducing TestingConferences.org

For the past few years one of my professional goals has been to attend (at least) one testing conference or workshop per year, mostly because it’s such a great way to recharge and learn what other practitioners are doing. Unfortunately, I couldn’t find a good source of events aside from talking with others, so I pulled together a list on my own. The value of any events list is only as great as the number and quality of events listed so I’ve open sourced the list and posted it online with the hope that it becomes driven-by and representative of the community as a whole (as opposed to what I might like or prefer).

Introducing TestingConferences.org – a simple list of software testing conferences and workshops published collaboratively with the testing community.

I hope this site is or becomes a useful resource for the software community as a whole. I also hope others will help by contributing because that’s the only way it will become better or at least maintain its usefulness. It doesn’t matter if you are a vendor or just a fan of workshops and conferences, please add to it!

A little more detail

I’m not sure how I found my first conference, StarWest, back in 2011 but I did. Every other conference or workshop I’ve been to since has been a referral or recommendation by others, including:

  • The Rapid Testing Intensive workshop (RTI)
  • The Workshop on Teaching Software Testing (WTST 13)
  • CAST
  • STPcon
  • STARWest (I’ve been to this twice I think)

I say referral / recommendation because the primary way this stuff was and is communicated are through the people who’ve attended. Sure you can Google “software testing conferences” or come across an advertisement in a testing publication but those are only useful if you have an idea of what you are looking for. Even if you do those things you might come across the most advertised, most popular but not necessarily anything near you (especially if you are outside the US) or relevant to your particular tastes. To me, that’s sad.

Conferences and workshops are great tools for conferring, collaborating and learning. At least part of your decision to attend a conference or workshop is determined by knowing what conferences are available and where they are located. That’s where this list comes in. There was never any single source of active conferences and workshops; especially with workshops you had to be in-the-know, else just stumble across one that was occurring.

Now I’m asking for your help so we can publish this list collaboratively within the testing community.

Helping:

Truth is I’ve been developing this site for a while and promoting on Twitter as I added events. I suppose you could say this site has been in stealth mode and this is the official reveal.

An In-depth look at CAST 2015

The Conference for the Association for Software Testing or CAST 2015 was held in Grand Rapids, MI during the first week of August. Since then I’ve been trying to reflect on what I thought, learned, liked and didn’t like. Here is that reflection in roughly 3,000 words. To speed the reading process I’ve created a table of contents.

tl;dr – overall CAST was great and I walked away with a lot to think about and apply to my job.

Speaking Truth to Power: Delivering Difficult Messages by Fiona Charles

(more…)

The idea of a Professional Tester

As rough as traveling can be, one benefit is dedicated time to catch up on reading. I finally got around to a post from Uncle Bob on “Sapient Testing: The “Professionalism” meme” and it captured something I’ve been thinking about for a some time: the label of professional(ism).

I’ve been using the “professional” term online to call attention to a potential difference between myself and everyone else: that I take my work seriously. Being a professional isn’t just about being paid to do something – there are many people paid to do jobs they could care less about (airports are a constant reminder of this); I mean professional in the sense of caring about the quality of my work, my skills and my ability to stay relevant.

After reading what Uncle Bob wrote after he attended a keynote by James Bach on the topic of professionalism, I think this says it better:

A professional tester does not blindly follow a test plan. A professional tester does not simply write test plans that reflect the stated requirements. Rather a professional tester takes responsibility for interpreting the requirements with intelligence. He tests, not only the system, but also (and more importantly) the assumptions of the programmers, and specifiers.

Uncle Bob goes on to say:

I like this view. I like it a lot. I like the fact that testers are seeking professionalism in the same way that developer are. I like the fact that testing is becoming a craft, and that people like James are passionate about that craft. There may yet be hope for our industry!

I like this view as well; I like it a lot.

Humans and Machines: Getting The Model Wrong

It seems like one of the more prominent and perpetual debates within the software testing community is the delineation between what the computer and human can and should do. Stated another way, this question becomes “what parts of testing fall to the human to design, run and evaluate and what parts fall to the computer?” My experience suggests the debate comes from the overuse and misuse of the term Test Automation (which in turn has given rise to the testing vs. checking distinction). Yet if we think about it, this debate is not just one within the specialty of software testing, it’s a problem the whole software industry constantly faces (and to a greater extent the entire economy) about the value humans and machines provide. While the concerns causing this debate may be valid, whenever we hear this rhetoric we need to challenge its premise.

In his book Zero to One, Peter Thiel, a prominent investor and entrepreneur who co-founded PayPal and Palantir Technologies, argues most of the software industry (and in particular Silicon Valley) has gotten this model wrong. Computers don’t replace humans, they extend us, allowing us to do things faster which when combined with the intelligence and intuition of a human mind creates an awesome hybrid.

Peter Thiel and Elon Musk at PayPal

He shares an example from PayPal: 1

Early into the business, PayPal had to combat problems with fraudulent charges that were seriously affecting the company’s profitability (and reputation). They were loosing millions of dollars per month. His co-founder Max Levchin assembled a team of mathematicians to study the fraud transfers and wrote some complex software to identify and cancel bogus transactions.

But it quickly became clear that this approach wouldn’t work either: after an hour or two, the thieves would catch on and change their tactics. We were dealing with an adaptive enemy, and our software could adapt in response.

The fraudsters’ adaptive evasions fooled our automatic detection algorithms, but we found that they didn’t fool our human analysts as easily. So Max and his engineers rewrote the software to take a hybrid approach: the computer would flag the most suspicious transactions on a well-designed user interface, and human operators would make the final judgment as to their legitimacy.

Thiel says he eventually realized the premise that computers are substitutes for humans was wrong. People can substitute for one another – that’s what globalization is all about. People compete for the same resources like jobs and money but computers are not rivals, they are tools. (In fact, long-term research on the impact of robots on labor and productivity seems to agree.) Machines will never want the next great gadget or the beachfront villa on its next vacation – just more electricity (and it’s not even smart enough to know it). People are good at making plans and decisions but bad at dealing with enormous sets of data. Computers struggle to make basic decisions that are easy for humans but can deal quickly with big sets of data.

Substitution seems to be the first thing people (writers, reporters, developers, managers) focus on. Depending on where you sit in an organization, substitution is either the thing you’d like to see (reduce costs – either in terms of time savings or in headcount reduction) or the thing you dread the most (being replaced entirely or your work reduced). Technology articles consistently focus on substitution like how to automate this and that or how cars are learning to drive themselves and soon we’ll no longer need taxi or truck drivers.

Why then do so many people miss the distinction between substitution and complementarity, including so many in our field?

(more…)

Shaping Your Identity as a Tester

On Thursday, June 25, 2015 I presented my first webinar called Shaping Your Identity as a Tester that was based on an earlier article I wrote called Blogging for your Career.

uTest recorded it and made it part of their uTest University series, you can check it out here. I’ve also embedded the video below for easy viewing. The slides are pretty simple. My part lasts less than 30 minutes, the rest of the time is spent answering questions fielded from the 75 or so participants who joined. Check it out:

If you joined the webinar and your question wasn’t answered or if you have any questions after watching it here, feel free to leave me a comment (or contact information) or connect with me (on the right) and I’d be happy to respond!

The Anti-Library

The writer Umberto Eco belongs to that small class of scholars who are encyclopedic, insightful, and nondull. He is the owner of a large personal library (containing thirty thousand books), and separates visitors into two categories: those who react with “Wow! Signore, professore dottore Eco, what a library you have! How many of these books have you read?” and the others – a very small minority – who get the point that a private library is not an ego-boosting appendage but a research tool. Read books are far less valuable than unread ones. The library should contain as much of what you don’t know as your financial means, mortgage rates and the currently tight real-estate market allows you to put there. You will accumulate more knowledge and more books as you grow older, and the growing number of unread books on the shelves will look at you menacingly. Indeed, the more you know, the larger the rows of unread books. Let us call this collection of unread books an antilibrary.

Nassim Nicholas Taleb in the Black Swan

A Collection of Menacing Books

The more I attend conferences, interact with others and read blogs in the various software communities I take interest in (testing, entrepreneurship, technology, etc.) the greater the number of books I find I’d like to consume. It seems almost automatic these days to ask for books or references someone has found useful to solve problems or gain a wider (or deeper) perspective on a subject.

Yet a collection of books on a list or sitting on in Dropbox isn’t nearly as menacing and doesn’t call to me the same way as having those books sitting on my shelf where I have to watch them age.

No Clutter
I try to find balance between only owning those things I can and do use regularly and a more consumerist desire where I need to have lots of options. I’m more on the minimalist side where I want no clutter (of anything) so I constantly edit what I own. Part of this comes from wanting to be practical and trying to understand trade-offs between buying something now or something better later. Part comes from the fear of getting “behind” or having too many choices.

This manifests in many ways including trying not to accumulate too many books.

A Research Tool

When I first toured Cem Kaner’s personal library I fell into the first category of people from the quote above. I think I said, “Wow what a library”, as the size of his personal collection was more immense than anything I’d seen. Now it wasn’t comparable in size to Umberto Eco’s but it was impressive enough that I felt the need to tell him so. My parents have book shelves filled with books they read twenty years ago but Cem had bookshelves full of books he hadn’t read and those he kept around for reference. After my “impressive” comment, Cem made it clear the point of his private library was not built to impress but as a research tool.

Keeping materials around for research or reference makes sense. Some you might keep around because you feel a special attachment to or because they gain in value but most books don’t. They aren’t trophies either.

The Anti-Library

The anti-library (or antilibrary) seems like the logical compromise between acquisition and usefulness. Get rid of those books you’ve read and aren’t likely to reference again and keep the collection of books you haven’t. Don’t make it your library, make it your anti-library.

State of Testing Survey 2015

In December of 2013 I mentioned Lalit Bhamare and Joel Montvelisky created a survey for assessing the “state” of the testing community to help the community to get a better understanding of what is going on around the world and help testers improve things. They published their results in a report that’s worth a read (PDF).

It’s 2015 and since I think the survey is a worthwhile effort I’ll do my “civic duty” and participate in this years survey. I encourage you to do the same by going here.

Here’s your official save-the-date:

https://twitter.com/PractiTest/status/557076285386932224

AST Membership and Learning Goals

It’s official I’m a member of the Association for Software Testing or AST as it’s commonly known.

I’ve been meaning to sign up so I can take the BBST Foundations Course, meet some local (or not so local) context-driven testers, perhaps post on their discussion boards and eventually head to CAST (I’m aware you don’t have to join to go).

I’ve been bouncing around the idea of setting up some type of local tester chapter / meet up place where testers can get together, train with each other, perhaps join in a weekend tester session, learn from each other, etc. The problem is I’m not sure how to go about doing it.

In other news I also signed up for Udacity’s Software Testing (CS258) class. I’m not a programmer and it does require Python programming experience so I’m going to focus on getting up to speed before the class. I’m curious as to what they’ll teach although the syllabus gives some hint. Units include:

  1. Introduction
  2. Domains, Ranges, Oracles, and Kinds of Testing
  3. Code Coverage
  4. Random Testing
  5. Advanced Random Testing
  6. Consequences
  7. Conclusion
The mention of Oracles has me interested and so does the “kinds of testing”. I wonder how this relates to Test Techniques? Based on the site description the class seems geared more towards programmers for example unit 4 and 5 are about automatically generating test cases (Random and Advanced Random Testing). Regardless I convinced one of my co-workers (who’s a programmer) to take it with me; I might be able to learn something about testing from the programmers perspective.
If you read my previous post What Testers Need to Learn some of the areas James tells tester’s to understand include Mathematics and Technology. Udacity has an Intro to statistics and quite a few technology classes that could potentially help testers.