I’ve been running Kenst.com since 2009. While the content has changed over time, the site has remained a blog. Kenst.com has gone from self-hosted on a Windows Home Server in my living room, to Blogger, and ultimately to WordPress. It’s been migrated to and from so many different hosting providers over time that I’ve lost count.
For a time all my sites were hosted on a single “shared” plan. This meant all the sites shared the quasi-dedicated resources of the plan. The problem came when Kenst.com would take the full allocation of memory and crash everything. Even with Cloudflare caching the top pages the traffic was too much. It was time to get a little more serious about hosting.
Somehow Thanksgiving is over but I’ve been buying Christmas presents for weeks. It’s amazing how quickly (but not quietly) 2020 is flying by now that it is nearly December. As with most of my updates, these are mostly for my own clarity on what has transpired but I hope they are of interest to bystanders and friends too.
About two months ago my company BloomNation announced it was rebranding itself to Promenade Group to better reflect how our business was now positioned to help 3 different verticals gain traction online: flower shops (BloomNation), liquor and wine stores (Swigg) and restaurants (Dig In). The company is growing rapidly and is in a strong position during Pandemic (thankfully). Most companies I’ve joined have been duds so working for a startup that is succeeding is a nice change of pace.
A few months prior to this, I hired my first direct report. I spent at least a full month recruiting and interviewing people for a mid-level Software Test Engineer. I’ll have more to say in the near future but suffice it to say over 100 people applied and only 1 got the job.
So many other things come to mind:
A little over 2 weeks ago was my first AST Board Meeting as President. I spent the past two years as Treasurer, et al. Not much has changed, but then again so much has.
There’s lots of cool stuff happening within the AST that I hope to be able to share in the next few months! So much good stuff. In the meantime I’ve got to bite my tongue.
I’m currently teaching the final AST-BBST course of the year, Test Design. One of the most under-rated courses we have. Lots to look forward to in 2021 with regard to courses!
While I’m not speaking at it, the original online testing conference (the aptly named) OnlineTestConf is coming in December is always worth checking out. The 2020 conference calendar isn’t over but has been filled with online conferences. If this is the way of the future, we’ll definitely need better ways to comb through the programs to find the specific things we want to learn. Information overload is real.
I recorded and submitted my 7 minute talk on “Using Test Idea Catalogs for Better Testing”. The premise is:
Testers can develop a set of tests or test concepts for a specific object or risk and re-use them in similar projects or products. Catalogs come in many shapes and forms, they can be lists or more detailed. They can be public or private. They can be developed by individual testers or as teams within companies. But they all help you test better!
In March I went through the process of upgrading to WebDriver v5. Last month I took the next step by upgrading our deployment to version 6 so we’d be current. I learned quite a bit from that first upgrade which made this upgrade a whole lot easier.
Here’s what I did to upgrade to WebDriverIO 6:
Checked the Docs. I scanned through the change log sections on breaking changes. Maybe I’m boring but nothing in the docs breaking changes notes looked to impact our setup! 👏
npm oudated . This is one of my favorite (and mostly unused) npm commands. It told me specifically what packages I had that were outdated. Hint: it was all of them. 🤯
Upgrade the easy stuff.
Based on what npm returned, I began by updating my package.json file for 3rd party libraries. Libraries such as prettier, chromedriver, moment, etc. that all played a part in my solution but didn’t deal directly with my tests. Then I npm install the latest changes.
Run the whole test suite looking for failures.
Upgrade the harder stuff.
Same thing as step 3, updated the package.json versions to be the “latest” and then npm install.
Another way to do this is to remove the node_modules folder and re-install each package based on the install instructions.
Run the whole test suite… until nothing is broken!
This upgrade wasn’t as daunting as I initially feared. With upgrades there’s always some level of concern you are going to “ruin a good thing”. Once I moved past that concern, there wasn’t much effort involved in getting things to work. Lots of credit goes to the WebDriverIO team for making the process more reasonable and straightforward, which of course they stated in their announcement:
This major update is much more reasonable and contains subtle changes that will help the project further grow while remaining performant at the same time.
I’ve been pretty happy thus far using WebDriverIO and I’m excited to see where things go!
Back in January I hosted James Bach and Michael Bolton for an AST webinar on the concept of a TestOpsy or a way to learn about the testing you do by dissecting it. Below you’ll find not only a description and the webinar video but a transcription for what I hope is easier reading.
By looking very carefully at what you actually do, identifying your own heuristics, and putting that process into descriptive, evocative words, you can discover surprising depths in each act of testing you perform. In a testopsy, you build your skills of observation, narration, and test framing. You may even discover a technique no one yet has written about. And if you do it with a colleague, it stimulates discussion on test design.
James Bach & Michael Bolton
What do we mean by a Testopsy
We are talking about an autopsy for testing. We are talking about taking a very close look at a session of testing and you can do a testopsy based on just a few minutes of testing.
Let’s say you published new layout changes to your website or you released new content or even a new landing page. How do you easily record such events so you can see what happens to your traffic? If you are using Google Analytics you can add annotations!
Simply put, annotations are short user notes (up to 160 characters) in the interface. They don’t affect the back-end data in any way. Think of them as sticky notes on your reports. After all the data has been processed and pushed into reports, you can attach notes and comments for specific dates.
They are a great way to spot correlations of data with external events.
I use annotations to provide context to the days I make big changes. While I don’t do any marketing events or run A/B tests, I do occasionally make layout changes or update menus. Here’s what my recent updates look like:
To create an annotation in Google Analytics:
On your Audience Overview
Click the small tab below the timeline
Click ‘+ Create new annotation’
Select the date for the annotation
Enter your “sticky note”
Select the visibility of the annotation (public vs private)
A sticky note showing what updates I made and when me make sense of data changes and trends in retrospect. Before I created a status page, I would use make a note of site outages so I could judge how reliable my web host was. (I should probably still do this). There’s far more I could do to be proactive but this works for now.
One of the nice things about macOS are the built-in tools. A recently improved upon built-in tool is called Screenshot which allows users to take a screenshot and record video. Taking screenshots has been around macOS forever, but taking video directly from OS shortcuts came along in macOS Mojave. The challenge is remembering the commands.
This tutorial is an attempt to capture the quick commands / shortcuts to make this process easy.
In the United States it seems like most of us will be working from home at least until Q1of 2021. I was thinking about this the other day: when will we see infection levels low enough that masks will no longer be required AND such a decision won’t lead to a rebound of the virus? And… When will a vaccine be available and widely used? In other words… it’s going to be at least another 6 months.This isn’t meant to be depressing, rather quite the opposite. Knowing the work situation will be the same for the next 6 months gives me the opportunity to change things up so the next 6 months are better than the previous.
Nearly 4 years ago I had my own home office. It was a full room and I could keep the door closed to avoid distractions. Now my desk is in the middle of the living room and I have to deal with such a busy place.
If I truly want to make my work situation better for the next 6 months what changes should I make to build an awesome home office space? Additionally, what can I do that is convenient and cost effective? The answer I found is to use as much equipment as I have access to from work and home.
Elections just opened for the Association for Software Testing’s Board of Directors for which I’m a candidate. If you are a voting-eligible member of the AST I’d appreciate the consideration as I run for my 2nd term.
The Association for Software Testing (AST), a non-profit professional organization dedicated to advancing the understanding and science of software testing, has announced a call for nominations for the Board of Directors for 2020-2022. This means my two-year term as a director is coming to an end. I feel fortunate and grateful to announce I’m running for a second term. The AST has helped a lot of people including me. For this and a few other reasons described below, it feels like the right moment to reflect on what it has been like to help run this global non-profit.
The Golden Ticket
I was elected in August of 2018 while attending the Conference for the AST (CAST) in Melbourne, Florida. An AST member since 2012, I started volunteering in 2013 after I became an AST-BBST Instructor. Coming up through BBST, I thought educational advocacy was one of the AST’s most important community services. You can’t advance the understanding of the craft until testers have a solid understanding of what already exists. I really wanted to improve our offering and felt the best way was to help set priorities at the board level.
AST Board of Directors
Elections happen every year with roughly half of the 7 person board up for election each year. The election process starts with a call for nominations and then candidates introduce themselves via questions posted to the web. Finally voting takes place during the time of CAST (typically the first week of August) and on the final day of the conference a new board is announced.
As a member-elect you are elected to a position by the sitting board members based, in part, on your preferences. In 2018 during a discussion with existing board members it came up there was a need for someone to take on the Treasurer position. It wasn’t the role I initially wanted (VP of Education was my first choice) but I felt reasonably competent so I accepted.
As with any official board position it’s a starting point for your contributions. I really wanted to focus on education but my fellow AST-BBST instructor Simon Peter (with whom I taught countless classes) wanted the position as well. We quickly both decided it made sense for him to take VP of Education and I take Treasurer. Just like we had done in our teaching we decided it would be fun to collaborate on the many changes we wanted to see in AST-BBST. I had my official role, Simon had his and yet we worked together whenever we could to improve our educational program.