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 […]
Category Archives: Coding
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 […]
There’s a joke I like to tell my teams. Senior engineers nod in gruff acknowledgement, and junior engineers tend to laugh nervously and nod with (I hope) enlightenment. It goes like this: If you’ve been working on a piece of code for a while, and it works the first time you run it, junior engineers […]
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 […]
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 […]
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 […]
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? […]
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 […]
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 […]
Like peanut butter and chocolate, cut and tr are two great commands that go great together. cut provides an easy way to grab one or more fields from a line of text, and tr allows you to prepare the line first. Let’s start with cut. Consider the following directory listing: # ls -l total 5392 […]