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 […]

ECS Starter Stack

Hi everyone, it’s been a long time since I’ve posted, but I’ve been fooling around with a new personal project, and I wanted to share some of what I’ve learned. At a high level, I’ve been writing a new website (mostly as a way to learn some new technologies and practice some old ones), and […]

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 […]

Linux commands: cut and tr

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 […]

Linux commands: find

I’m not a Linux guru. I’ve always known just enough to get the job done, but was never focused on getting deep into the command line for its own sake. Ever since joining the devops team at TripAdvisor almost two years ago, though, and more recently taking responsibility for operations at Scratch, I’ve had to learn a much broader array […]

How to set up the Android Emulator on a Mac

You wouldn’t think that a post like this would be necessary, but as I recently went through a frustrating bit of config hell in what I’d expected to be a straightforward process, I thought I’d write down the procedure that worked for me. Download and install Android Studio Download the latest version Follow the instructions […]

Cleverness kills

We had a problem. Facebook had just come out with the Like button, and had provided code snippets that allowed you to badge pages with Like counts. The problem was that it took a couple seconds for the number of Likes to load, and in some cases the resulting text was bigger than the allowable […]