We’re pretty obsessed with performance at Gilt Groupe . You can get a taste for what we’re dealing with, and how we’re dealing with it, from our recent presentation at RailsConf . One of the techniques we’re using is to precompute what certain high-volume pages will look like at a given time in the future, and store the result as static HTML that we serve to the actual users at that time. For ease…
I took a bit of a blogging hiatus. Not particularly that I ran out of things to say, but rather there were technical difficulties. The short version, because I’m sure nobody cares, is this: last fall I retired my last non-Intel Mac. My blogging workflow involves Emacs PSGML mode, and makes use of a couple obscure corners of that package. Somehow on Intel Macs, one of those corners was busted.…
Yesterday, DHH made an argument that alpha male programmers aren’t keeping women out of the tech field. I’m of the opinion that he’s wrong and that his argument is flawed, and in a moment I’ll explain why, but let me get a few things out of the way so they don’t distract from the rest of my argument. First, I don’t think that “alpha males” or the “rockstar” mentality are the only causes of…
Recently we upgraded to Rails 2.3 at work. Upon doing so, we saw our application take an aggregate performance hit of about 50%. Spending a little quality time with ruby-prof, one thing that stood out as peculiar was an awful lot of time being spent creating and tending to Ruby Thread objects. Tracing up the call stack, these were coming from inside the memcached client. Buried in the Rails 2.3…
I’m a huge fan of Norman’s previous book The Design of Everyday Things and I highly recommend it to anyone who builds things, physical or virtual. This book takes on some of the aspects of design beyond the functional or behavior, and discusses the other aspects of why people are attracted to certain objects. It’s quite interesting for the first 2/3s of the book or so, but then takes a strange…
It’s been a year and a half since my last political post. I’m a little surprised that it’s been quite that long, but not entirely shocked. I spent nearly all of this election cycle somewhat withdrawn from the whole thing; feeling disenfranchised from years of being told that my dissent was unpatriotic, and being disgusted by the amount of ugly politics-as-usual that was going on. I wasn’t…
It shouldn’t need to be pointed out, but the root of ‘useful’ is ‘use’. If you don’t actually use an object, regardless of whether you abstractly feel it to be useful, perhaps it isn’t. There is a particular risk with objects that are both beautiful and useful that we fail to use them, whether because we feel they are too expensive or unique and irreplaceable to risk damage, or because we put them…
It’s now official that OSCON is leaving Portland and moving to San Jose next year. There’s a lot of unhappiness around here about it and a definite feeling that the stated reason (rising travel costs) isn’t the whole story. Personally, I don’t think it’s clear that making the conference local for more people is a good thing. I’ve noted two years running that I felt like it was a very different…
Have nothing in your house that you do not know to be useful, or believe to be beautiful. William Morris I’ve been reading Emotional Design , and the inclusion of this quote inspired me to try to take an inventory of my house using this criterion. Of course, ideally I’d have only objects that are both beautiful and useful, but initially I’ll just make it my goal to be rid of things that fail both…
I’ve been tinkering a little more with the Beust Challenge, following up on my previous post . There are a couple significant new developments to report. First, Hynek (Pichi) Vychodil wrote a faster version using a permutation generator . Second, I also ported the first “CrazyBob” solution using a bit mask to Erlang. Third, I discovered that my overly literal ports were actually slowing things…