From Friday, June 5th, 2026
Joe Duncko, who’s an engineering director I’ve known from hackathons and local meetups for a couple of years, recently wrote a piece for his blog: Organizations Adapt to the Cost of Iteration. He argues that:
I think that this makes sense on its own terms, and it’s the kind of change that a lot of people in the software development world are hoping for. But, I don’t know that it’ll always be an easy sell to the people who run companies. I want to take a quick step back, analyze this take from a holistic standpoint, and try to figure out the risk/reward calculation that an organization faces when it strives for higher velocity. I think the basic question is just this: in the future, will organizations move at the pace of software development, or will software development move at the pace of organizations?
From Wednesday, June 3rd, 2026
The tech sector of the economy has a structurally disproportionate amount of influence over the world. A key reason is that the number of people working in tech stays relatively low even as the number of people that their product reaches skyrockets. Take Discord: they have a few thousand employees and hundreds of millions of users. Contrast this with a business like a grocery store, where the amount of work goes up fairly steadily with the number of customers and the amount of stuff that they buy, or a lawyer’s office, where the amount of money coming in is tied to the amount of billable hours worked by specific attorneys and their staff.
The reason that so many businesses want to invest in AI is the potential of pushing this dynamic even further. A traditional law firm can only take on so many cases before needing to hire more attorneys; in contrast, the theoretical AI equivalent could serve tons of people with a few prompt engineers and the AI agents that they delegate the lawyerin’ to.
Tagged as computers, work, the culture.
From Tuesday, June 2nd, 2026
Having been occupied with burdensome provincial pursuits described elsewhere for the first quarter of my life, and finding myself getting real bored of them, I decided in 2022 to try something new: full-time higher education. I hoped to meet new people, finish a computer science degree, and wend my way into the upper middle class. I took up lodgings at a nearby state college, acquitted myself reasonably well there (got decent grades, led a medium-sized student organization, worked as a research assistant and tutor for half the computer science department) and fell into the company of a few altogether quite singular and unique individuals similarly occupied; one of whom I had, whilst quitting the place, reason enough to prevail upon for a job.
Later, after a year and a half of trying to build an online retailer at a small, independent technology startup, I got outta there, as things had gotten a bit tense. This was my first foray into what’s commonly known as “white-collar employment,” and the first time anyone in my family had held such a position since my dad got laid off from his job as a switchgear designer during the Great Recession. It was a weird experience, and if that’s what white-collar work is like, I will happily go back to being a cashier at a gas station forever. But I don’t know that it is representative.
I quit, despite being offered huge piles of money to stay, because I knew that I was miserable and suspected there was more to life. A lot of things went wrong. There are a few ways I could tell the story:
From Wednesday, February 11th, 2026
Originally posted to LinkedIn.
A few hot takes for the #vibecoding era:
I. Coding has been heading towards higher and higher levels of abstraction for a very, very long time. We’ve gone from assembly language to C to JavaScript.
When I first started pursuing web development, years before the initial release of ChatGPT, people were already talking about it as primarily a process of gluing together existing code, instead of writing things by hand like the good old days.
Nevertheless, interview questions about low-level stuff like sorting algorithms still got asked, even though almost no-one has written such things from scratch outside of school for a long time. I think that this indicates something about the enduring value of being able to understand technical stuff at a high level of detail.
From Friday, February 6th, 2026
Getting overwhelmed by emails is easy; millions are sent every second. The world-spanning network of machine-to-machine systems that allows you to receive autopay notifications for stuff you forgot you signed up for is complicated, but the piece of software known as “Outlook” makes it so that when you look at your computer, you just see emails. That list of emails is an “abstraction,” which means “a version of something that’s simplified to make it easier to fit in people’s brains.”
You can think of emails as electronic signals propagating over cables (which is a low level of abstraction, of which I have very little understanding), as TCP traffic between machines using specific ports and mail transfer protocols (which is a slightly higher level of abstraction that I mostly get), or you can think of it as a bunch of new posts from Substack and Patreon, requests to donate to political campaigns, and alerts about outages from hosting providers (which is a quite high level of abstraction that I can easily use to understand my email inbox right now.)
There’s a strong tendency among a certain type of person to think of low levels of abstraction as “how things really work.” And this produces tension when combined with another fact: companies are mostly led by people operating at very high levels of abstraction.
Tagged as work.
From Saturday, April 19th, 2025
Linus Torvalds is the legendary creator of the version control system “Git” and the kernel for the operating system “Linux,” which between them are used to develop approximately 125% of all software. He also gets mad on the Internet a lot. There’s a subreddit dedicated to his outbursts. He produces headlines like “Linus Torvalds on why he isn’t nice: ‘I don’t care about you’”. His feedback is often along the lines of:
So this patch is utter and absolute garbage, and should be shot in the head and buried very very deep. Please immediately delete it from the whole internet.
Or:
“Steven, stop making things more complicated than they need to be… You copied that function without understanding why it does what it does, and as a result your code IS GARBAGE. AGAIN.”