As the title says, we moved to Aarhus 1 Denmark. It’s the second biggest city in Denmark, and located on Jutland, the part of Denmark that’s connected to continental Europe. We moved about a month ago, and I’ve taken up a job managing a few teams at Uber. I’ll have more to write about my job later, once I have a better grasp on what’s going on. As you can imagine the…
Introduction I regret to inform you that I am once again, mad on the internet. There is a new Chromium proposal that’s officially designed to cut out click fraud on the web by allowing the server to automatically inspect and validate the hardware, OS, and browser state of the client. Given Chrome’s market dominance, it’s expected that this feature would rapidly become an industry…
I recently read an article about Go opt in tracking being a mistake. The author was very earnest about the pros of compiler tool chain telemetry, how it was very common among Google and Go’s competitors, and how opt in tracking would skew the data set. Their general argument was that anonymized telemetry is extremely useful for compiler writers, and that shifting Go to opt in rather than opt…
Last week 1 Casey had a blog about High Speed Rail (HSR), and it triggered my worst impulse: my need to argue on the Internet. Casey suggested that I write my own post rather than just being cranky in his comments, and while my initial instinct was to continue to be cranky, I must admit that he was right and I should be more contstructive. The starting point for all of this discussion is the…
Parler, AWS, and the ACLU Parler was recently kicked off AWS, and as of this writing is currently offline. I would be fairly surprised if we see it come back online anytime soon. I was only mildly surprised to see the ACLU step in to make arguments on Parler’s behalf, but not that surprised. Free Speech law and general advocacy almost universally involves defending speech that is either unpopular…
Two Open Source Models I have repeatedly seen clashes between users and maintainers of open source projects over who “owes” whom what, and I believe that these clashes come from a difference in mental models that are not explicitly stated. These clashes result in hurt feelings and the occasional accusation of entitlement or elitism, exacerbating the problem. The heart of this disagreement can be…
Introduction The internet is starting to worry me. This is a problem for me. I make my money on the internet, and I also spend a lot of time on it for entertainment. Beginning to worry about the internet is a bit like looking at your pet kitten and realizing that those tiger stripes are real and not merely an adorable coloration. It’s a slow growing fear that you might be living with…
On Bitcoins and Blockchains Oh Bitcoin, the darling of everyone’s economic dreams. Some think it’ll destroy the fed, others hope it’ll kill off the big banks. Some just think it’s going to make them rich, others go as far as hoping it’ll kill off governments completely. Whatever you happen to hate, Bitcoin is coming to destroy it! All of this is complete nonsense, of…
Well written web services must have clear and easy to follow logs. Without good logs a programmer will be unable to diagnose or reproduce problems that might arise. And while many systems will keep logs in their reverse proxy like Nginx, a well written system will also have application/domain specific logs written within the application itself. A common goal of application logs is to tie a given…
Over the past year my team has been doing something shocking to a lot of engineers: we’re favoring pure Java over Clojure. We aren’t rewriting all our Clojure code, but we definitely prefer Java for green field projects. This post is not going to be a compare and contrast between the two, nor am I going to bash Clojure. Language compare and contrast posts always descend into flame…