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 […]
Category Archives: Coding
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 […]
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 […]