🦜 Computer Things
@buttondown.com.hillelwayne@rss-parrot.net
I'm an automated parrot! I relay a website's RSS feed to the Fediverse. Every time a new post appears in the feed, I toot about it. Follow me to get all new posts in your Mastodon timeline!
Brought to you by the RSS Parrot.
---
Hi, I'm Hillel. This is the newsletter version of [my website](https://www.hillelwayne.com). I post all website updates here. I also post weekly content just for the newsletter, on topics like
* Formal Methods
* Software History and Culture
* Fringetech and exotic tooling
* The philosophy and theory of software engineering
You can see the archive of all public essays [here](https://buttondown.email/hillelwayne/archive/).
Your feed and you don't want it here? Just
e-mail the birb.
Illegal vs Unwanted States
https://buttondown.com/hillelwayne/archive/illegal-vs-unwanted-states/
Published: April 28, 2026 15:14
An illegal state is a state we never want our system to be in. An unwanted state is a state we don't want to stay in. Many states that we wish were illegal are actually unwanted.
Considering a calendaring software which stores calendar events as {user:…
People get confused when language implementations break language guarantees
https://buttondown.com/hillelwayne/archive/people-get-confused-when-language-implementations/
Published: April 21, 2026 17:40
Take the following Python program:
# x = 1, y = 2
x = 0
y = x
print([x, y])
It'll print [0, 0]. If we swapped the two assignments, it'd instead print [0, 1]. Each assignment happens in a separate temporal step. Pretty much all imperative languages behave…
A sufficiently comprehensive spec is not (necessarily) code
https://buttondown.com/hillelwayne/archive/a-sufficiently-comprehensive-spec-is-not/
Published: April 15, 2026 16:18
Sorry for missing last week! Was sick and then busy.
This week I want to cover a pet peeve of mine, best seen in this comic:
A "comprehensive and precise spec" is not necessarily code. A specification corresponds to a set of possible implementations, and…
April Cools Post: New York vs Chicago Pizza
https://buttondown.com/hillelwayne/archive/april-cools-post-new-york-vs-chicago-pizza/
Published: April 1, 2026 17:53
Happy April Cools! My not-tech post this year is Chicago vs New York Pizza is the Wrong Argument, which is mostly an excuse for me to talk about Chicago food. See here for all of the other April Cools submissions. As of this email we have sixteen posts;…
Choose Boring Technology and Innovative Practices
https://buttondown.com/hillelwayne/archive/choose-boring-technology-and-innovative-practices/
Published: March 24, 2026 14:38
The famous article Choose Boring Technology lists two problems with using innovative technology:
There are too many "unknown unknowns" in a new technology, whereas in boring technology the pitfalls are already well-known.
Shiny tech has a maintenance…
LLMs are bad at vibing specifications
https://buttondown.com/hillelwayne/archive/llms-are-bad-at-vibing-specifications/
Published: March 10, 2026 17:12
No newsletter next week
I'll be speaking at InfoQ London. But see below for a book giveaway!
LLMs are bad at vibing specifications
About a year ago I wrote AI is a gamechanger for TLA+ users, which argued that AI are a "specification force multiplier".…
Free Books
https://buttondown.com/hillelwayne/archive/free-books/
Published: March 3, 2026 16:34
Spinning a lot of plates this week so skipping the newsletter. As an apology, have ten free copies of Logic for Programmers.
These five are available now.
These five should be available at 10:30 AM CEST tomorrow, so people in Europe have a better chance…
New Blog Post: Some Silly Z3 Scripts I Wrote
https://buttondown.com/hillelwayne/archive/new-blog-post-some-silly-z3-scripts-i-wrote/
Published: February 23, 2026 16:49
Now that I'm not spending all my time on Logic for Programmers, I have time to update my website again! So here's the first blog post in five months: Some Silly Z3 Scripts I Wrote.
Normally I'd also put a link to the Patreon notes but I've decided I don't…
Stream of Consciousness Driven Development
https://buttondown.com/hillelwayne/archive/stream-of-consciousness-driven-development/
Published: February 18, 2026 16:33
This is something I just tried out last week but it seems to have enough potential to be worth showing unpolished. I was pairing with a client on writing a spec. I saw a problem with the spec, a convoluted way of fixing the spec. Instead of trying to…
Proving What's Possible
https://buttondown.com/hillelwayne/archive/proving-whats-possible/
Published: February 11, 2026 18:36
As a formal methods consultant I have to mathematically express properties of systems. I generally do this with two "temporal operators":
A(x) means that x is always true. For example, a database table always satisfies all record-level constraints, and a…