VSCode Remote and the command line

I use Visual Studio Code in conjunction with terminal windows. I’m very used to using source control, building and running tests from the command-line and I tend to work on sufficiently weird things that VSCode’s ideas about what a build is don’t map well. When poking around my source tree, building or running tests I […]

Injustices and Anachronisms

A couple of weeks ago I was thinking happily about the fact that my kids will never know a time before marriage equality in the country that they’re growing up in. The US Supreme Court struck down bans on same-sex partners marrying less than a month before they were born. There was some talk of […]

Reusing Passwords

I have a confession. Sometimes I reuse passwords. Not for anything that “matters”, but I’ve ended up using a couple of passwords a lot of times. And inevitably some of those sites get hacked. But where did I use them? Chrome remembers all my passwords but unfortunately doesn’t seem to offer a straightforward API to […]

Partisan Divide

There’s an American election on Tuesday. Whatever the outcome of the races, the partisan polarization is disturbing. Roughly 40% of the electorate considers each presidential candidate to be unqualified to even run. I don’t have the right to vote but my perspective is just as absolute. I’m right, but I’d say that wouldn’t I. Each […]

Tyranny is mostly pleasant

In my life I’ve been lucky enough to visit some brutal military dictatorships. From Suharto’s Indonesia as a child to Mubarak’s Egypt more recently, they’ve been really pleasant to visit. My impression is that most citizens of these countries were fairly unencumbered by the political system they lived under. Some people had terrible time – […]

Low Fidelity Abstraction

It’s only through abstraction that we’re able to build the complex software systems that we do today. Hiding unimportant details from developers lets us work more efficiently and most importantly it allows us to devote more of our brain to the higher-level problems we’re trying to solve for our users. As an obvious example, if you’re […]

HTTP/2 on nginx on Debian

I run my web site off a Debian server on GCE. I like tinkering with the configuration. I hear that HTTP 2 is the new hot thing, and that’s going to mean supporting ALPN which means upgrading to OpenSSL 1.0.2 and nginx 1.9.5 or newer. But they isn’t supported in Debian 8. I used apt pinning […]

Writing ES6 without a transpiler

I like modern JS features. I’ve been using some like const and let for a long time in specific contexts like Gecko chrome (when I worked on Flock & Songbird). Recently I’ve been playing with the features that have been standardized as ES6. I tried a bunch of different build-system and transpiler approaches but I found […]

Australia Days

Photo credit: Finn Pröpper I really like Australia. I was born there, I grew up there, my parents brothers and sisters all live there. I don’t have a single national identity, but ‘Australian’ is the one I put above the others. It’s a physically beautiful and inspiring country. At their best its people are generous, […]