Computer Things
Subscribe
RSS
Archive
J as a Desktop Calculator
February 22, 2021
Talk Tuesday I'm speaking at Berlin Function Programming Group! Noon CST tomorrow, register here. It's my standard TLA+ talk, so there won't be any major...
"Naming Things" is a Poor Name for Naming Things
February 16, 2021
It's been a while! Let's just say the past couple of weeks have not been kind to me and leave it at that. So, newsletter. I got 40% through writing about...
No, "reasoning about code" is not a scam
February 1, 2021
Late Newsletter next week Alloy workshop. Still one slot left if people are interested! No, "reasoning about code" is not a scam Last week I read “Reasoning...
Adversarial Nondeterminism
January 29, 2021
Damn, has it been two weeks since the last "real" newsletter? I feel like my brain is out shape. Anyway, I thought of a fun metaphor to explain model...
New Essay: Are We Really Engineers?
January 18, 2021
Are We Really Engineers? It's finally ready! Part one of the Crossover Project covers what inspired me to do this all, what makes engineering "engineering",...
How I got into formal methods
January 11, 2021
Alloy Workshop There's a couple slots left for the February Alloy Workshop. Feb 8th, 10 AM - 6 PM CST. Learn how to find bugs in your designs without having...
Write Code That Delivers Value to Clients
January 1, 2021
Does a person help my team deliver software to stakeholders? If they stomp their feet and demand that we spend a week reducing the program’s memory footprint...
100th Issue End-of-Year Bonanza
December 28, 2020
It's the 100th Computer Things Newsletter! I'm celebrating with a book announcement and director's commentary on all of my 2020 essays. But first, a couple...
Cross-Branch Testing
December 21, 2020
This was inspired by a few conversations I had last week. There's a certain class of problems that are hard to test: The output isn't obviously inferrable...
The Most Important Video Game Ever Made
December 14, 2020
So first question: important how? If we're just talking "impact to the game industry" it'd probably be something like Super Mario Bros or Tetris or something...
Oracle Testing
December 7, 2020
This is another experiment in producing intermediate workhorse essays, combined with a bunch of theorycrafting. Most unit tests are "example test", showing...
Safety and Liveness Properties
November 30, 2020
Hi nerds, I'm back! I didn't think about tech at all last week so don't have a whole lot on my mind this week, but let's see what I can dredge up. Workshop,...
Computer Things: Vacation Phone-In Edition
November 23, 2020
Hi all! I'm taking my first "real" vacation since I went independent two years ago. Ostensibly the plan is to spend it all juggling, cooking, and not...
Knights, Puzzles, and Hypermodels
November 16, 2020
I, being a huge nerd, am a fan of logic puzzles. One of the most famous ones is "Knights and Knaves": you have a bunch of statements from people, where...
Why I Still Use Vim
November 11, 2020
The Stack Overflow blog recently published Modern IDEs are magic. Why are so many coders still using Vim and Emacs? Posts about Vim vs Emacs vs IDEs are...
No, your clean code won't save the planet
November 5, 2020
Need to channel my election anxiety into something productive, so here you go. One baffling trend I'm seeing recently is people trying to moralize virtuous...
Programs Writing Programs
November 2, 2020
New Essay Two workers are quadratically better than one. I shared a first draft of this a couple weeks back; this time it didn't change a whole lot aside...
TLA+ Helped Me Count to Six
October 26, 2020
The TLA+ Workshop is done! I'm taking November off from workshops do complete three writing goals: Feedback from the first draft of the Crossover Project is...
The Pendulum Swings Eternal
October 19, 2020
I shouldn't have had a newsletter this week because of the TLA+ workshop, but I forgot to say "no newsletter this week" last week so guess what, extra...
Edge Case Poisoning
October 12, 2020
TLA+ Workshop Last Call The TLA+ workshop is next week! Oct 20-22, register here, use the code COMPUTRONSTUFF for $500 off. Learn how a few hours of...
We have met the Excelnemy and he is us
October 6, 2020
Workshop The TLA+ workshop is in just two weeks! Oct 20-22, register here, use the code COMPUTRONSTUFF for $500 off. Still three slots left for the workshop!...
Mystery Knowledge
September 28, 2020
Mystery Knowledge In the misty past of 2019, when I was still giving conference talks, I always meditated for 5-10 minutes before starting. Arrive early, set...
Software Engineers Don't Have Disciplines
September 22, 2020
I know I said no newsletter this week, between the Alloy workshop and my panicked rush to finish The Crossover Project, but I found this old abandoned essay...
Updates on the Crossover Project
September 14, 2020
No Newsletter Next Week I'll be teaching the Alloy workshop. Speaking of workshops… TLA+ Workshop TLA+ Workshop for October 20-22, 10 AM - 6 PM CST. 24 hours...
Write Notes for Your Code
September 10, 2020
New Essay Decision Table Patterns: How to write better decision tables and fix common issues. If you've wanted to try formal methods but weren't sure where...
That Time I Almost Joined a Software Cult
September 8, 2020
Alloy Workshop There's just one slot left for the Alloy Workshop! Use the code YARLSNARTH for $1200 off. Are We Engineers Toxx clause is still in effect: if...
Formal Specification Languages
August 28, 2020
Alloy Workshop Slots for the September 21st Alloy workshop are still available! Learn how to model domains in a way that finds the bugs for you, rather than...
Please read the paper before you comment
August 24, 2020
Each day on twitter there is one main character. The goal is to never be it— maple cocaine (@maplecocaine) January 3, 2019 Yesterday the main character of...
What's the Deal with Message Passing, Anyway
August 21, 2020
I'm back from the moving! Things are still a bit chaotic here but hopefully normal newsletter/essays/office hours should resume next week. Alloy Workshop...
New Essay and a Very Peculiar Optimization
August 14, 2020
New Essay J Notation as a Tool of Thought. Many of you already read it as a newsletter piece, but this new version is considerably expanded and has a lot of...
New Workshop, Test Inference
August 11, 2020
Delayed newsletter next week I'm moving Monday, so newsletter should go out Tuesday. This is entirely unrelated to why the newsletter was delayed this week,...
How knowing math helps you write better software
August 3, 2020
Projects Update TLA+ workshop last week went really well! I'm super happy with the current state of the workshop and while I'll still be making a bunch of...
Syntax highlighting is a waste of an information channel
July 20, 2020
No newsletter next week Running the TLA+ workshop. No way I'm gonna have any brainpower after that. Syntax highlighting is a waste of an information channel...
Merchants on the Ivory Road
July 13, 2020
Before we get into the main bit I have a few announcements to cover: Announcements New essay I wrote a new essay! The Frink is Good, the Unit is Evil. Learn...
I have become ideas guy
July 6, 2020
Workshop There's still one slot available for the TLA+ workshop! July 27-29, remote, going to be super intense. Sign up here. Random Thoughts I wanted to...
Situated Software
July 3, 2020
New essay In what might be the shortest turnaround ever, I just uploaded weak and strong fairness. It's gone through some revisions since the draft I shared...
Why You Should Always Blindly Chase Industry Trends
June 29, 2020
Look I know you're here for the train wreck but there's logistical stuff we have to cover first. "Are we really engineers" video now available Here. tl;dr I...
New TLA+ Workshop, New PBT Essay
June 20, 2020
Thanks to everyone who came out for the "Are We Really Engineers" talk yesterday! I suspect they'll be putting the recording up here at some point, but if...
Monads and Transducers are Literally 100% The Same Thing
June 15, 2020
No Newsletter Next Week I promised one last week but the Alloy workshop took way too much out of me. Since I'm doing another workshop next week, I'm just...
Some Ranting About Examples
June 2, 2020
Delayed newsletter next week I'm doing the Alloy workshop on Monday and will have zero energy after that, so the newsletter will be out by Tuesday at the...
Defects are not the fault of programmers
May 27, 2020
Sorry this one is late! I've been having a rough time lately, which I think is pretty normal right now for everyone. But I'm doing a bit better now and hope...
Workshop Innovations and New Website Essay
May 18, 2020
Office hours What I'm thinking of doing is office hours every two weeks, alternating between an evening slot and a morning slot. So this week let's do office...
If Inheritance is so bad, why does everyone use it?
May 15, 2020
This essay says that inheritance is harmful and if possible you should "ban inheritance completely". You see these arguments a lot, as well as things like...
New Essay: In Praise of AutoHotKey
May 12, 2020
No office hours this week Still thinking through how to best do office hours. I think based on attendance it'd probably be more comfortable to do something...
Rage Against the God Machine
May 8, 2020
Content warning: mental illness, depression, abuse, PTSD, stuff like that. If you're sensitive to these topics you may want to skip this one. On Wednesday I...
How I Write Talks
May 4, 2020
New Workshop Given the interest in the previous Alloy workshop, I've opened up a second day on June 22nd. Same discount applies, [redacted] for 500 off. It's...
New Essay, Office Hours, and a short essay
April 27, 2020
Workshop Sold Out The Alloy workshop is now sold out. Dang, that was fast. If you're still interested in this, please add yourself to the waitlist. If enough...
This Newsletter is Too Popular
April 21, 2020
New Talk My Deconstruct talk, "What we can Learn from Software History", is now out! It covers why studying history so important and what it looks like to...
Making Illegal States Unrepresentable
April 17, 2020
I have opinions on this Okay so the saying is "make illegal states unrepresentable". The meaning is that we should structure programs in a way it such that a...
Announcing Alloydocs, updates on major projects
April 13, 2020
Alloydocs It's finally ready! Almost 13,000 words of Alloy reference, techniques, and pitfalls. There's still a lot of work to do when people inevitably...
Newer archives
Older archives