Herewith gleanings from a circle of browser tabs facing inward at the world of technology. Some are weeks and weeks old: Amber Road, Clojure, tail recursion, cloudzones, deep packet inspection, and key/value microbenchmarking.
Don’t Mind Saying “I Told You So” · Per the Reg’s Sun’s Amber Road traffic picks up, it seems I’m not the only person who thinks those Open Storage boxes are the hottest product we’s shipped in years. I still think they’re being underestimated. Transparent Storage was my take last year on one of the reasons this stuff is so nifty.
Tail Recursion Bah · Guido van Rossum writes about tail recursion and Python in Tail Recursion Elimination and follows up with Final Words on Tail Calls. I have to say I was irritated by all the Functional-programming geeks intoning snottily about how He Just Doesn’t Get It; while Guido has been known to be wrong, he’s as accomplished a programming-language implementor as walks the planet.
I think I understand tail recursion reasonably well, just like anyone else who’s been to first base with Erlang. And I really dislike it.
I don’t mean I dislike the idea: it’s easy to appreciate the functional-programming benefits of that style of constructing a loop, and the closely-related benefits of Erlang’s immutable “variables”. But gimme a break, dressing the loop up as a function call, and the special variables up as function arguments, is just a great big fat stinking lie. A light is being hidden under a bushel.
Cloudzones · Check out Mark Harrison’s Virtualization, ZFS and Zetaback. I’ve never been much of a virtualization weenie, but since I landed in the cloud space earlier this year, I’ve become more and more convinced that lightweight v12n is a really big deal. I’m not sure Mark’s hit exactly the right sweet spot, but I think there’s one out there.
Deep Packet Inspection Sucks · You probably knew that already. But in case you didn’t, or wanted to feel comfier about your position, check out this Collection of Essays on the subject commissioned by the Canadian Government’s Office of the Privacy Commissioner.
Key/Value Microbenchmarking · Brendan O’Connor reports on Performance comparison: key/value stores for language model counts and it’s interesting, but the data set is too small and the problem is too specialized. What this does highlight is the need for some serious work on understanding the differences between all these fascinating new postrelational storage options. (Relatedly, back in March, I ran across How Fast is Redis?)