Computer Things
Subscribe
Archives
Software Mise en Place
April 18, 2022
I am really, really into cooking. In the heady days of 2016 I regularly threw dinner parties for 30+ people. These days I don't hate myself that much, but...
You can automate more than you think
April 12, 2022
(Sorry this is late! Dealing with COVID.) I have mild ADHD. I can focus on strenuous mental tasks, but I can't handle boring or repetitive work. Even...
The Esotech Lit Gap
April 4, 2022
I work with a lot of really esoteric technologies, like TLA+, Alloy, J, MiniZinc, and PRISM. Pretty much every non-mainstream technology has a "literature...
Take Back April Fools (also new post)
April 1, 2022
Hello everyone! So first of all, new post. It's about how I got into microscopy and a bunch of pictures I took that I like. It has nothing to do with tech at...
The Software Iron Triangle
March 29, 2022
The "iron triangle" of project management is "Cheap, fast, good: choose two". This works on the assumption that quality is a metric while time and money are...
I finally found a use for XML
March 21, 2022
The Problem When teaching things I like to break code up into a set of small changes, showing the differences between each change. So if I start with //...
That time Indiana almost made π 3.2
March 14, 2022
Happy Pi Day!1 To celebrate I want to get away from software for a bit and talk about something special. You may have heard the story that the Indiana...
The Parable of the Crow
March 8, 2022
Hey y'all! Still hard at work on the new learntla version. It's currently about a third of the length of original learntla, which is pretty impressive, given...
Software I'm Thankful For
March 1, 2022
Last week I read Software I'm Thankful For and it inspired me to do a similar piece. I use a lot of different exotic tools, too, so I think it's a good way...
A Short Treatise on Bugs
February 21, 2022
First a term: by "treatise", I'm not saying this newsletter is comprehensive, persuasive, or even correct. I'm using it to mean a very specific type of...
Website Haitus, Info on the Learntla Rewrite
February 14, 2022
Website Haitus Fortunately not depression this time, just a responsibility thing. From the announcement: I’m not letting myself work on software content for...
Why You Should Read "Data and Reality"
February 7, 2022
Once more: we are not modeling reality, but the way information about reality is processed, by people. — Bill Kent I've got this working theory that you can...
Regexes are Cool and Good
January 31, 2022
Some people, when confronted with a problem, think “I know, I'll use regular expressions.” Then they solve their problem, hooray! Regexes are great! I use...
Software Artifacts and Programming vs Engineering
January 25, 2022
Hiya everyone! Workshop is all done and I'm alive again. For those of you just joining us, I teach formal methods workshops to companies. Working on a piece...
Please stop falling for conspiracy theories
January 11, 2022
I'm a pretty gullible person. When I was a kid, my sister told me that there was a monster inside the toilet. For years after I'd flush and then run out of...
The Outside View
January 3, 2022
In Superintelligence: The Idea That Eats Smart People, Maciej Pinboard nee Cegłowski talks about analyzing AI risk with the perspective of the "outside...
2nd Annual End-of-Year Essay Retrospective
December 27, 2021
Last year I rolled up the newsletter into an ebook and gave my thoughts on every published blogpost. I haven't gotten around to making the 2021 Computer...
Sup Nerds, We Doin' a Mailbag
December 20, 2021
First some good personal news: I did a hiatus over the summer due to severe depression issues. Well, I finally got into an intensive outpatient program,...
Uncomfortable Truths in Software Engineering
December 14, 2021
New Post: ADTs in TLA+ Using Abstract Data Types in TLA+. It's an adaptation of part of my TLAConf talk. It's also a lot more advanced than most of the...
A better explanation of the monty hall problem
December 9, 2021
I know I said no newsletter this week but this just hit me and it's small enough to write up so I'm fitting it in. The Monty Hall problem is a famous...
New Post: Alloy 6: It's About Time
November 29, 2021
Read it here! https://www.hillelwayne.com/post/alloy6/ Features my first attempts at using vector graphic diagrams to explain things better, like this:...
Principles of Software Evangelism
November 22, 2021
My job these days is researching exotic software technologies and selling them to companies, which means I'm a software evangelist. And because I literally...
Alloy 6 First Impressions
November 15, 2021
So a couple of weeks ago I wrote Finding Alloy's Niche, where I said I wasn't expecting the new Alloy 6 release to change all that much. It came out last...
Documentation could be so much better
November 10, 2021
A year or so back I wrote the newsletter post Don't use Markdown for documentation, where I complained about its lack of extensibility and cross-project...
Finding Alloy's Niche
November 1, 2021
(This gets a little rambly, I'm trying to figure out some stuff and thought it'd be nice to share my thinking process.) I've been thinking a lot about Alloy...
A Very Brief SPLASH Writeup
October 25, 2021
Sup nerds! Last week the SPLASH conference— the main academic conference for programming language research— came to town. I decided on a whim to buy a ticket...
The Myth of Self-Documenting Code
October 18, 2021
One of the weirdest things about software engineering is how many people hate comments. Like actually hate. There are influential people out there who say...
Defense in Depth is actually a good thing
October 14, 2021
So my TLAConf talk is out and I was gonna talk about technique research but then I saw this tweet and knew I had to rant about it: If after-release testing...
New Essay and Thoughts on Clickfarm
October 11, 2021
New Essay: How to Solve the Sudoku Puzzle with programming New essay up! How to Solve the Sudoku Puzzle with programming. This one is a little conceptual, so...
Jewmain Driven Design
October 4, 2021
Sup nerds, I'm back from Strange Loop! I have a million ideas I want to write about now, but I'll stick to one of the lighter, sillier ones. Based on a claim...
Optimizing State Spaces with Combinatorics
September 27, 2021
I'm preparing my talk for the TLA+ Conference this week. I asked around about intermediate stuff people wanted me to cover and there was a lot of interest in...
There Was No Formal Methods Winter
September 20, 2021
Over the weekend, I read the question Is the Formal Methods Winter About to End on Lobsters: Formal methods (theorem proving, model checking, static...
How ACOUP made me a better programmer
September 14, 2021
Hey nerds, I'm back! Still not all that recovered from mental health garbage, but turns out writing is a big part of my mental health, so stopping that for a...
Hiatus
August 16, 2021
Hi everyone, My depression has gotten a lot worse in the past month and it's seriously disrupted my ability to work. I'm taking steps to handle it, but in...
Art vs Engineering
August 9, 2021
I'm finally (finally!) working on a new version of the Are We Really Engineers talk, which has got me once again thinking about the differences between...
Algorithm Monocultures
August 2, 2021
A while back I got really into "corporate blogs". Why are they so soulless? Why do they all sound the same? I asked a friend had managed one of these blogs,...
I ****ing hate Science
July 19, 2021
I'm a big advocate of Empirical Software Engineering. I wrote a talk on it. I wrote a 6000-word post covering one controversy. I spend a lot of time reading...
Program Spaces and Interesting Counterexamples
July 12, 2021
Okay so let's say I have a function f and ask you to figure out what it is. Input's a list of integers, output is one integer. You gotta figure it out by...
10 Misconceptions about Formal Methods
July 5, 2021
Whole lotta talk about formal methods last week. Moshe Vardi dropped an ACM piece, Jean Yang wrote an essay, and Nicholas Tietz-Sokolsky frontpaged Hacker...
What is a "Specification"?
June 29, 2021
What is a specification? The most popular testing library in Ruby is called RSpec, and uses the terminology of Behavior-Driven Development, where tests are...
Physical vs Logical Time
June 21, 2021
There's nothing I'm rarin' to share so I figured I'd talk about a concept in verification I see a lot but haven't seen explicitly discussed anywhere. I don't...
Comment the Why *and* the What
June 14, 2021
People say "comment the why, not the what", the idea being that the code should be self-documenting and the comments should only be a last resort for...
Designing Software with Predicate Logic
June 10, 2021
One reason I like teaching is it helps me understand things better. This came up in a couple different ways while working on the new book, and I'm too...
Users are Nondeterministic Agents of Chaos
June 7, 2021
New Post: Clever vs Insightful Code I shared an early version with the newsletter some time back, and now the final version is done! This one is less...
Predicate Logic For Programmers
May 31, 2021
May is finally, finally over. This was one of the roughest months both jobwise and lifewise in recent memory. But now all my deadlines are over, I'm fully...
Scaffolding TLA+
May 20, 2021
I'm in the process of updating my TLA+ workshop for my class next week.1 Every time I run it I get new ideas on what to improve. After April's class, one of...
New Essay, some thoughts on method vs process
May 18, 2021
No Newsletter Next Week I hate to do this twice in three weeks, but I have a TLA+ workshop next Monday. A Brief Introduction to Esolangs Two pieces of...
Esolangs!
May 4, 2021
No Newsletter next week I have some real life stuff going on and also a secret project deadline. I'd still like to make time for the newsletter, but it's...
Can Formal Methods Succeed where UML Failed?
April 30, 2021
Last Tuesday's piece Why UML "Really" Died went viral. I'm glad that people enjoyed it, and I also was happy to use all that fallow research, but something's...
Why UML "Really" Died
April 27, 2021
There's this post going around the internet called Has UML died without anyone noticing?, In the piece, Ernesto Garbarino says that UML was killed by...
Newer archives
Older archives