About me

I currently freelance as a development/product consultant, so if you want to see these ideas applied to your team and process get in touch.

black and white portrait

I learned to program when I was 14. It was the best puzzle game ever and continues to be a real love. That’s true even in this age when we don’t write code, and sometimes we don’t even glance at what’s produced by agents.

Before database backed web applications became easy through great frameworks, I developed database backed applications for small businesses and non-profits.

In the last year of the last century I went back to school at Berkeley, CA for Mechanical Engineering. All I have to show for it is a two year gig working on the ATLAS detector for the https://en.wikipedia.org/wiki/Large_Hadron_Collider. One of my responsibilities was creating a database that calculated the interference of the parts themselves on the first two layers of the detector. I decided then and there that there was no way the detector would work, and yet less than 10 years later the accelerator was running and had proven the existence of the Higgs boson. I like being wrong.

ATLAS detector

Two fun facts about the collider:

  1. In the event that anything went wrong in the accelerator, it took two months to slowly and carefully disassemble it in order to make a fix. Mechanical engineering is very slow and almost exclusively about how to get things into or out of the correct place.
  2. A pigeon once somehow shorted out the accelerator when it dropped a french bread loaf, on the French side of the loop. That proves that g-d exists to make fun of the God particle. That’s what the Higgs boson is nicknamed.

Since then I’ve built some products in the startup space, but most of my consulting and CTO work has been around fixing technical debt with changes to culture.

During the US Obama administration I was drafted to work on some of the world’s biggest technical disasters. I spent most of my time there in 2015-2016 working on the 2020 Census. I worked with developers building the app and the deputy director. Mostly I was trying to explain them to each other. I was ultimately unable to convince leadership to step away from a five billion dollar purchase of a weird system that wouldn’t scale. Spoiler: the biggest issue with government technology is all the draconian rules that govern purchasing. The census purchase didn’t scale, and the developers on the ground stepped in three weeks before the app went live to save the day.

After working at the federal level, I moved to California government. I created the first digital web application for the DMV driver’s licence and IDs. It was part of an effort to make voter registration default to opt-in. The roll out was brutal on the DMV staff. None of our research plans for the roll out were accepted and the application didn’t integrate with the archaic back end. You may have heard that government workers are lazy and unresponsive. The staff spent the night and did other heroic efforts to get people the services they needed. Despite that ugly start, the application is easy to use and led to a lot more usable web interfaces for the DMV and California.

Recently, I was working at Cisco on their Meraki dashboard. My role was to influence more than a thousand developers to write better code without staff or support. It worked! Code coverage went from ~65% to over 80% over five years on a four million line code base. Complexity went down and code ownership became clear. All this led to faster coding and better coding patterns just in time for the AI revolution.

I got to spend my last six months at Cisco focused exclusively on AI and compliance. This blog is the story of what I started learning there and have continued to learn.