Bill Agee's blog

🤔 Reflections on test infrastructure, with a twist of user empathy.

Setting up XScreenSaver on Ubuntu 16.04

xscreensaver-config screenshot

Do you have a burning desire (or a mandatory policy) to make your Ubuntu machine lock its display when you step away?

Or do you have a fondness (maybe a burn-in desire?) for a time when screensavers had other uses?

If so, this post describes how I installed XScreenSaver (and ...

Markdown ordered lists with paragraphs

Keeping a Markdown ordered list in proper working order has always been tricky for me. I always seem to end up up with indentation characters that reset the next item back to the number 1.

Here's how to make a list containing paragraphs without the list item numbers resetting ...

Switching from Octopress to Pelican

Or: What we blog about when we blog about blogs

🐙 ➡️ 🐍

This post is the story of how I switched the underlying framework for this blog from Octopress to Pelican.

And I added a side quest: Like many Octopress users, I grew fond of the default Octopress theme, and wanted to ...

Dockerized Ghostdriver Selenium Tests

(tl;dr: This post describes how to build a Docker image for running Python GhostDriver/PhantomJS tests in a container.)


In a previous post I described how to set up an environment to run automated Selenium WebDriver tests using the Ghostdriver/PhantomJS/Python web testing stack.

But these days ...

Using 7zip in lieu of GNU tar on the command line

These days I'm accustomed to having the 7z command available on Unix-like systems (thanks to the p7zip project).

On top of that, 7zip is always one of the first utils I install on any Windows machine I work with.

So as an exercise in cross-platform style (or just for ...

Using Heroku Postgres as a Free Cloud Database Sandbox

Need a place to experiment with PostgreSQL, but not in the mood to set up the server locally?

Then try out the free dev plan on Heroko Postgres. No configuration or credit card required.

Creating a DB and manipulating it with the psql CLI can be done in just a ...

Testing Java snippets with Vim and GroovyConsole

For instructional purposes (either when experimenting on your own, or when demonstrating code to others) it's always useful to be able to run snippets of code in a REPL, or a similar environment allowing fast turnaround in the edit/compile/run cycle.

When using Java, other IDEs offer ways ...

Raspberry Pi terminal screenshots with fbgrab

Say you're on the console on your Raspberry Pi, and you want to take a screenshot. But without X running, what does one do?

Simple: Use fbgrab. To install it, just:

sudo apt-get install fbgrab

Pass fbgrab the name of the virtual terminal/tty you want to snapshot, and ...

Hello Octopress!

New year, new hosting stack! This blog is now brought to you by Octopress, hosted on Amazon S3, instead of Blogger.

After spending some quality time with the tools I used in the move from Blogger (Octopress, S3, Route 53, git), I feel like the proverbial new pair of glasses ...

Quick and dirty port scan with netcat

netcat (or "nc" on the command line) is a useful tool for many reasons.

One common test automation task I've found it handy for is polling a port, waiting for a service to start responding.

While there are many ways to do that, using nc is a handy way ...

Brushing up on cURL

The curl command line tool is a great addition to your toolbox when working on web-related testing projects.

It's difficult to add up all the ways curl is useful for testing tasks. Here's an attempt at documenting a few simple scenarios.

Installing the curl command line tool

OSX ...