Michael Larsen is an invited speaker at PNSQC 2018. Larsen currently works with Socialtext in Palo Alto, CA. In his years of experience, he has worked with a broad array of technologies and industries including virtual machine software, capacitance touch devices, video game development, and distributed database and web applications.
He would say he has found himself in the role “The Lone Tester” more times than not, which perhaps helped spur his interest in speaking and sharing his expertise. Larsen is a founding member of the “Americas” Chapter of “Weekend Testing,” has a black-belt in the Miagi-Do School of Software Testing and was a producer and frequent commentator on the podcast “This Week in Software Testing.” PNSQC recently talked with Larsen about his current thoughts.
Q: What piece of advice would you give to someone who is just starting their career as a Tester?
Michael Larsen (ML): You have an interesting job opportunity ahead of you. You are following through on one of the grandest traditions of science. You get to hypothesize, make experiments, learn and share what you learn. Temper that with the fact that, as a career tester, you may be seen by some as “lesser”. You may be seen as using testing as a springboard to something else (and that’s completely OK). If you choose to be a “career tester,” you may get some people asking “why”. That’s also totally OK. You will have to deal with a job title and job responsibilities that are often ambiguous, sometimes at odds with expectations, and more than a few times finding yourself in literal conflict with others. Again, that is totally OK and it’s part of the fun of being a tester (yes, “fun”).
Q: What is the most devastating mistake that you see developers making when designing web applications?
ML: I think the biggest mistake is that too many applications are designed for normative users, with “normative” often meaning “people who look, think and act like me with the capabilities that I have”. A lot of the software made today (and this is not limited to web applications) make things more difficult for people with disabilities, both primary and secondary/situational. I talk about Accessibility and Inclusive Design because the changes needed to support it are often those that will have next to no perceivable impact on a site or application to most users but can profoundly make the experience more usable and enjoyable by many more people. By not addressing this, I feel production teams are saying, even if unintentionally “if you are not like us, you do not matter to us”. In short, practice empathy, always!
Q: What is the most common mistake that you see test teams make when choosing a testing framework?
ML: A testing framework does not exist by itself. It depends on many moving parts to actually be useful. Picking a testing framework is like picking a lung, if you will pardon the slightly graphic comparison. A lung is important but it’s of little use if not incorporated with and considered with all of the other parts of the body. A testing framework is the same way. It’s more than just saying, “We’ll pick selenium and write commands to drive it”. There are additional considerations that have to be made, such as “What environment will it be running on? How much control over that environment do I have? Will I be able to actively monitor tests, or will it need to run as a set of autonomous parallel jobs? Will it run in a VM?” Making one choice may mean leaving off the table other parts of the overall fitness of my “application body” All this takes time, effort, and possibly a lot of revisiting and maintenance to work effectively. A testing framework means a lot more than many people realize.
Q: Any pet peeves with the software industry these days?
ML: The software industry is fickle. It can’t really seem to make up its mind as to what it wants to be when it grows up. That’s not entirely surprising, as by the standards of many professions, computer science is still an adolescent (we’ve been around for seventy plus years, but compared to industries and professions that have centuries of practice to draw on, yeah, we’re still very young). I should also point out that this is also a major benefit in that we still have ways to influence the direction and development of the software industry. It’s not all set in stone just yet. An appreciation for dealing with ambiguity helps.
Q: Do you have a current favorite development or test tool?
ML: I had to think about this a bit and my choice may seem unorthodox. I love terminal multiplexers. Seriously! screen, tmux, byobu, the ability to split up a view into multiple window shards and actively code in one, execute in another and monitor in another… it’s the most helpful tool in my day-to-day arsenal. Add to that the fact that I often pair with developers, testers, and project managers using screen sessions… hands down, anything else I use pales by comparison.
Q: What do you love most about the software industry?
ML: The fact that, because it’s still young and it’s still unsure of itself, many people can have a seat at the table. We’re not yet standardized to the point where we need to be licensed the way that doctors and layers need to be. That means anyone with the desire and fortitude to dive in and learn can have a great shot at succeeding. I think we can do better on that front and I encourage us all to have those conversations and mentor/support those who would like to join our ranks.
Larsen will speak about “Future Proofing Your Software: Design Inclusively” and lead the workshop “Building a Testing Framework from Scratch”. To hear more in person from Michael Larsen, register for PNSQC today.