The Two AI Consensuses

Being a software engineer these days is weird. We used to think that we were the stars of the global economy, impossible to hire without crazy perks and ridiculous packages, but then the Zero Interest Rate Period ended and we realized it was all a mirage bought with cheap money. Now, everyone from high school […]

Tools and Agents

I had an interesting conversation with a colleague after my last post, about whether it was possible to get the best of both worlds, or if any new tool would necessarily make you dumber. And I had to stop and think – what was it about an IDE with autocomplete that seemed unobjectionable, while LLM-based […]

Building a Dumber Team

Having kids is weird. Here are these human beings, with their own interests, likes and dislikes, and absolutely no knowledge. I mean yes, over time they build up experiences, but they start out with literally nothing. You have to teach them how to go to the bathroom, how to use a knife and fork, how […]

The Restaurant Reviewer

When a new person joins my team, I like to have everyone go around and share some unusual fact about themselves. It’s a good ice breaker – everyone usually tries to think of something interesting, and I’ve had people who were bus drivers, sky divers, and in one memorable case, someone who’d eaten something he absolutely […]

Simple nginx configuration

This is going to be another short technical post. As I mentioned previously, I’ve been coming up to speed on a set of new technologies in preparation for a new job (more on this soon!). I started building a site in NextJS, and have since decided that: Normally, I would build a server in my […]

Starter AWS stack

I was recently giving a friend some advice on how to set up a minimal stack for a starter project, and somewhere along the line realized that my MVP was approaching a dozen different AWS services. Time to stop and start reevaluating life decisions, people. So, I went back to the drawing board, and set up […]

The PERN stack

For the last year or so, I’ve been working in a pretty standard Javascript stack – Mongo, Node, Express, React. Modeled on the so-called MEAN stack, this has the advantage of a native Javascript data store along with some reasonably mature tooling. But I wondered – why didn’t this have its own four letter acronym? […]

Special Skills

Consider the generalist software engineer. She has a solid grasp of CS fundamentals, knows several programming languages, can write scripts, program user-facing front-end code, and work on deep algorithmic problems in the backend. For her, coding is a set of logic puzzles, debugging, patterns and anti-patterns, architecture, and tradeoffs between fast, cheap, and good. Most developers […]

Full-stack Javascript

I’m a Java guy. Or rather, I’m a C++ guy who ended up in Java. I like statically-typed languages, and think it would be cool if Java had double pointers (or at least reference parameter types) and explicit memory deallocation. I spent the better part of a decade coding video games in C++, and twelve […]