Computer Things
Subscribe
RSS
Archive
A Very Brief Intro to Formal Methods (aka my job)
April 6, 2020
Office Hours Worked pretty well last time, so let's do it again! This Friday, 11 AM CST, Zoom Room [redacted], password is [redacted]. Not sure if this is...
What's the Most Expensive Software Per Byte?
April 2, 2020
Is it 1 dollar/mb? 10 dollars/mb? 100? 100,000?
Language Warts and Vim Trix
March 30, 2020
New(ish post) Last week I published a new post called 10 Most(ly dead) Influential Programming Languages and forgot to share it here. In that time we've...
Please don't write your documentation in Markdown
March 23, 2020
Please don't write your documentation in Markdown. Please. I'm begging you. Markdown is tolerable for short documentation, like a readme.md. Past that, it's...
Special Purpose Languages
March 18, 2020
Greetings from the end of the world! Sorry things are late, I had writers ablockalypse. Remote workshops All the conferences I was supposed to go to are now...
On Customization
March 11, 2020
A couple letters back I talked about how mental models don't scale. If you heavily customize the environment to your needs, it'll be hard for other people to...
Online Workshops, Project Updates, New Post
March 9, 2020
Back from vacation! Turns out I'm bad at vacationing. Anyway, quick update on projects: Crossover Project: I recently gave a 10 minute lightning talk draft...
The Opposite of Documentation is Superstition
March 5, 2020
Yes I know I'm technically on vacation but if I go too long without writing I die from a witch's curse and I don't want to work on longform projects For...
On Scaling Mental Models
February 24, 2020
No Newsletter Next Week I'll be on vacation in the Caribbean, sipping drinks and juggling for Hermit crabs. The Actual Thing I'm a vim user. I've used Vim...
Donald Knuth Was Framed
February 22, 2020
YOW! Talk My YOW! talk, "Designing Distributed Systems with TLA+", is now available! You can watch it here. Donald Knuth Was Framed The other day I was...
Happy Precedence Day!
February 17, 2020
Happy precedence day! (For my non-American followers, it's a pun on a national holiday we got today) New Consulting Offering I'm now available to do paid...
New Essay: Feature Interaction Bugs
February 5, 2020
Read it here! This has gone through some fits and starts, so it's finally good to get it out. I sketched out the first draft in 2018. 2018! ps y'all are gr8
Project updates, request for help, braindump
February 3, 2020
Update on Major Projects I've finally, finally started drafting out the crossover project. And only two months late! Right now the outline is almost a...
On Emulation
January 28, 2020
Last week I said that I had some thoughts on "emulation" but hadn't yet hammered them out. So today I'm gonna hammer them out. I might eventually polish this...
New Essay: The Business Case For Formal Methods
January 22, 2020
New essay at the site! The Business Case for Formal Methods is a primer on the financial benefits of using FM, plus case studies and a demo. It's a...
A Totally Polished and not-at-all half-baked Take on Static vs Dynamic Typing
January 20, 2020
I'm back from Madfest! Since this is a newsletter computer things and not a newsletter about juggling things, I won't say anything about it. Except I got to...
Three Ways Juggling is Like Programming
January 17, 2020
I'm going to my first ever juggling convention this weekend! If any of you are in Madison, hit me up. Not sure if I'll be able to get away from Madfest, but...
New Essay, Intentional Errors, and a TLA+ CLI
January 13, 2020
New Essay I haven't posted any essays on formal methods in a while, so let's start of the new year right: Hypermodeling Hyperproperties When we design...
Bill Kentstravaganza
January 10, 2020
Bill Kent is one of the unsung greats of software engineering. I get why Data and Reality is obscure: the 2nd edition is out of circulation and the 3rd...
Updates on the Too-Many Projects
January 6, 2020
Happy first week of the new year! Wanted to give some quick updates on the projects I'm working on, so you know what to expect from me in the coming few...
Back up your arguments plz
January 3, 2020
A couple days ago I read Putting devs before users: how frameworks destroyed web performance, a rant about why the web is so slow. You don't have to read...
On Marketing Formal Methods
December 30, 2019
Hi everyone! Back from vacation! Spent most of it cooking. Check out this beauty: Bottom layer is a dark chocolate and peanut butter ganache, top layer is a...
Why Python is my Favorite Language
December 26, 2019
Merry Hannukah! I've been trying very hard not to think about anything tech related this week, but also want to keep to a weekly schedule of newsletters....
Computer Things: YOW Roundup Edition
December 16, 2019
Hi everybody, Back from YOW! I spent the last two weeks in Australia, giving talks at three separate conferences. I was off but back now. Here's some...
Science Turf War
November 25, 2019
Conferences I'm speaking at YOW! I'll be presenting Designing Distributed Systems with TLA+ in Sydney, Melbourne, AND Brisbane. If you're coming to one of...
New Essay! (Also Workshop Field Notes)
November 22, 2019
Workshop Improvements Apologies for not sending anything on Monday; I was doing a workshop for Facebook! I had a blast, but I'm usually dead by the end of...
A few smaller updates
November 15, 2019
Ethnography of antipatterns We all can think of reasons why it's bad to use single-letter variable names in most contexts. Why people do it anyway? I usually...
What is a "beautiful" proof?
November 11, 2019
A couple weeks ago I was obsessed with a math problem. addition over the integers is commutative: a + b = b + a. Multiplication, which is repeated addition,...
Back on Windows
November 8, 2019
Over the past month my Fedora installation got increasingly unstable- hardware glitches, randomly losing internet, not entering sleep mode. Yesterday I got...
Canonical Examples
November 4, 2019
Canonical Examples Two tweets from last week. 1) A question I asked friday:¹ If you know what property-based testing is and don't use it in your code, why...
We Are Not Special
October 30, 2019
Why am I doing the Crossover Project? Because I keep seeing shit like this:¹ The person there never built a house. They don't know what it's like to build a...
New Post! Plus Upkeep
October 28, 2019
Newsletter Title I still don't have a good name, but I've decided "hell with it" and am going with "Computer Things" for the time being. If you are on this...
Automation vs Augmentation
October 21, 2019
The best chess player in the world is Magnus Carlsen. He's been the world chamption since 2013. We have him play against a 2018 macbook pro running a good...
Software isn't designed for power users
October 16, 2019
Yesterday a friend asked me to help her with a bug. She wasn't a programmer, she was using someone else's software. Helping her made me think a little on...
Data and Reality, 2nd Edition
October 14, 2019
People who've listened to me for more than, like, five minutes probably know that my favorite software book, bar none, is Data and Reality. It's about how...
On Documentation
October 11, 2019
I'm part of the Alloy (1) board and am responsible for "outreach and education", which mostly means I ask people what they find annoying about the tool. Part...
New Post: Formally Modeling Database Migrations
October 9, 2019
Hi everybody, I wrote a new post for the blog! It's about how you can use formal methods to make sure your database migrations are correct. I really wanted...
On Hating Your Tools
October 4, 2019
I recently read Why software developers (quite honestly) hate Agile, which argues that the Problem With Agile is that everybody's going it wrong, that the...
The kind of thing this is gonna be
October 2, 2019
Hiyall, No name yet, no description yet, but might as well get this started with why I want to do this. So the stereotypical view of writing is that it's...