About Me

I’m a Software Engineer at Google. I didn’t write much before that happened and I am, sadly, even less likely to write things (externally) now.

I can be reached at wgd@willdonnelly.net.


Serial Wire Debugging the STM32 via the Bus Pirate
In which the author spent a week or so writing a Python script to bit-bang the Serial Wire protocol using the Bus Pirate. Came in handy a couple of times when I needed to program a microcontroller and the JTAG scan chain was busted.

A Scheme Syntax-Rules Primer
Long ago before I became disillusioned with Scheme, I wrote a basic guide-by-examples of Scheme syntax-rules macro patterns.

Runtime Scheme Detection
I used to think R6RS was a dumb idea. I still do, but I used to, too. Anyway, for a while I toyed with writing a portable standard library for a handful of common R5RS implementations. This obviously required some way to determine what platform you're running on, so I came up with a moderately-clever scheme which used unspecified corners of the standard to "fingerprint" the current implementation.

Brian’s Purely Functional Brain
Brian's Brain is a fun little cellular automaton. I wrote an implementation in Haskell because that was the kind of thing I did in college.