Publications
32 publications total. These are references to my published works appearing outside of this blog, in reverse chronological order. You may also be interested in my technical portfolio, my presentations, and press articles about me.
- » EngFlow Blog
Describes a methodology for evaluating a software project's build performance when using EngFlow or other remote caching and remote execution products on continuous integration workloads. - » EngFlow Blog
A reference explaining how to access canonical repository names under Bzlmod in a portable way using either macros or custom Make variables. - » EngFlow Blog
A reference explaining how to "holdrules_pkg
right" to avoid silent breakages while maintaining proper Bzlmod compatibility. - » EngFlow Blog
A reference explaining why runfiles libraries are essential to Bzlmod, how they work, and how to use them. Also points out that one should use the rules_python runfiles library over Bazel's builtin Python runfiles library. - » EngFlow Blog
A reference tying together a lot of experiences, resources, insights, and tactics resulting from migrating large, complex dependencies to Bzlmod. I hope it helps others overcome friction and avoid remaining stuck on Bazel 8 after Bazel 9 removesWORKSPACE
altogether. - » Pipeline Fixit (Episode 17)The Stall Seat Journal (Cvent)
This episode publicized the upcoming Pipeline Fixit. I organized the Fixit not just to engage early adopters in various Grouplet initiatives, but to create urgency for the Grouplets to launch minimum viable versions of various initiatives based on the "Pipelines, Roles, and Checklists" model from Episode 5. - » The Hackathon, AWS, and You! (Episode 13)The Stall Seat Journal (Cvent)
This episode publicized the upcoming Second Annual Cvent Innovation Lab (a.k.a. "Hackathon") and the prospect of AWS training sessions, presented by AWS Technical Account Managers, for those who register for the event. - » The Stall Seat Journal (Cvent)
The Cvent Doc Grouplet launched The Stall Seat Journal, a tribute to (read: "blatant rip off of") Google's Testing on the Toilet on June 25, 2018. This article is the fifth episode. It explains how modeling Grouplet processes on the concepts of pipelines, roles (from the "Commitment model"), and checklists enables incremental, scalable, widespread organizational change. - » Using API wrappers to isolate dependenciesSchibsted Testing on the Toilet
Before I left my friends at Schibsted at the end of June 2017, I put one more Schibsted Testing on the Toilet episode in the bank, which they published a few months later. This episode introduces the concept of writing your own API wrapper for external dependencies, to isolate the dependency and define your own "internal API" for your application that's completely within your control. For example, theRedisClient
from the Custom Links application that wraps the API provided by the Redis npm. - » Control via CompositionSchibsted Testing on the Toilet
My clients on the Eng Prod team at Schibsted in Barcelona already had the idea to start publishing their own Testing on the Toilet series by the time I arrived on April 18, 2017. I helped give the effort a push by supplying a Google Doc template-slash-how-to, and by contributing this episode, the third in the series. - » 18F Blog
The third and final post of my "Turning learning up to eleven" trilogy, describing knowledge sharing initiatives that will impact government beyond product delivery. - » 18F Blog
The second post of my "Turning learning up to eleven" trilogy, describing efforts to increase transparency into 18F's internal operations. - » 18F Blog
The first post of my "Turning learning up to eleven" trilogy, featuring my DevOps Enterprise 2015 talk, Pain Is Over, If You Want It. - » 18F Blog
A description of 18F's ever-evolving onboarding process, co-written with Emileigh Barnes and Colin MacArthur. - » 18F Blog
A description of my experience using and contributing to Bitly's oauth2_proxy, fulfilling the open source dream of reaching across organizations to give back to projects that serve our needs. - » 18F Blog
An introduction to 18F Guides, which we intend to use to coalesce best practices, ease onboarding, equip US Digital Service teams, and engage with the broader industry. - » 18F Blog
An introduction to 18F Pages, a U.S. government-approved platform for publishing Jekyll-based content from 18F as an alternative to GitHub Pages. - » 18F Blog
An introduction to the 18F Hub a Jekyll-based documentation platform that aims to help development teams organize and easily share their information, and to enable easy exploration of the connections between team members, projects, and skill sets. - » DigitalGov
Syndication of my original 18F blog post - » 18F Blog
An introduction to the concept of snippets, with my actual snippets from the previous week as an example - » 18F Blog
Introduction of my presentation of the same name, in light of my role as part of 18F. - » Communications of the ACM - Practice, July 2014 (Vol. 57, No. 7) - Author info
Reprint of the ACM Queue article of the same name, submitted by the ACM Queue editors for publication in the Practice section of CACM. (Original CACM link, ACM Digital Library link, blog announcement) - » ACM Queue - Security, 2014 - Author info
Explores how "goto fail" could have been prevented by unit testing, and demonstrates how existing responses to the bug fail to address the root problem of a lack of unit testing culture. (Original ACM Queue link; ACM Digital Library Link, blog announcement) - » Martin Fowler's website
Explores how the "goto fail" and Heartbleed bugs could have been prevented by unit testing, and makes a case for adopting a unit testing culture; I also have a detailed list of prior work that contributed to this article, and this blog post tracks all of the installments - » While My Heart Gently BleedsTesting on the Toilet
The Official Google Testing on the Toilet Episode 330, based on my original TotT-inspired one-page treatment - » Finding More Than One Worm in the AppleTesting on the Toilet
The Official Google Testing on the Toilet Episode 327, based on my original TotT-inspired treatment - » AutoTest Central
Syndication of my original Heartbleed and Heartbreak blog post on AutoTest Central - » A long-form article about the Apple SSL bug, aka "goto fail", submitted to Communications of the ACM
- » A Testing on the Toilet-inspired one-page treatment of the Apple SSL bug, aka "goto fail"
- » AutoTest Central
A brief history and description of the Google Testing Grouplet’s Small/Medium/Large test size schema; posted to AutoTest Central - » AutoTest Central
An explanation of how unit testing and/or basic testable design principles might’ve prevented Apple’s recent SSL security bug, aka "goto fail", from slipping through to release, with working code; posted to AutoTest Central - » AutoTest Central
A summary of how the Testing Grouplet changed Google’s testing culture from the bottom up—literally; posted to AutoTest Central