By brewbooks from near Seattle, USA (Orbicular Granite) [CC-BY-SA-2.0 (], via Wikimedia Commons

CodeMesh 2014 day 2

Tim Band wrote “So, I went to day 2 of CodeMesh this year, James having taken day 1. Here’s a brief round-up of what I saw. Chad Fowler – Keynote “Tiny” An entertaining talk, talking about how the concept of “seven plus or minus two” applies in all sorts of categories of things (although Chad definitely leans towards…”

By David Ingham from Bury, Lancashire, England (P2204757 Uploaded by oxyman) [CC-BY-SA-2.0 (], via Wikimedia Commons

More Clojure component patterns

Ceri Storey wrote “Like the proper nerd that I am, I’ve been recently playing around with the National Rail data feeds, with a view to drawing some pretty pictures of quite how differently timely our train services are. So, when you’re developing at the REPL, it’s convenient to be able to cleanly shutdown and restart a n service.…”

By Chris McKenna (Own work) [CC-BY-SA-4.0 (], via Wikimedia Commons

LocationHistory visualisation part 3

James Uther wrote “I’m a bit like a dog with a bone about this LocationHistory thing (or a dog returning to his vomit?). Previously I had a bash at mapping my movements around London, then spent a bit of time trying to find out what the file format really was. This time, I’d like to tidy up and…”

Lunchtime Hack: Decoding LocationHistory

James Uther wrote “Last month we took a look at how we might get our location history from Google and show it on a map. We found that the real deal is found at Takeout and consists of a file that’s mostly an array of lat/lng/time entries, but with some sort of ‘activities’ sub-elements sometimes. After a quick…”

(defn reloaded/-main [] …)

Ceri Storey wrote “I’ve been using Stuart Sierra’s reloaded pattern on a few Clojure projects recently, and I hit upon the problem of how best to use Stuart Sierra’s reloaded with a typical long running application. So, I thought I’d share one possible solution. Most of the code should be self explanatory, but there are a few things…”

Honeycomb, 2001, Gavin Mackintosh, South Molton, UK. Creative Commons, via WikiCommons.

Java multi methods new home

David Ireland wrote “I’ve split Java multi-methods out of LShift’s Java library. That’s mostly because Guava has equivalents for just about everything else in the library, but the multi-methods part is still unique, as far as I’m aware. You can find it here. You can raise tickets there as well. For more information, see the original post. Here’s…”

Lunchtime hack: My cycling routes

James Uther wrote “Like most Android users (because I think it’s the default) Google tracks my location. Thankfully, they provide a way for me to view and edit the data collected (Thus satisfying some major rules of personal data collection – well done!). But the interface on location history is clunky as a visualisation, so let’s spend lunch…”

CSS Transitions can’t animate display change

Sam Carr wrote “I’d like to demonstrate a fairly simple CSS issue that caught me out, and the straightforward solution. Put simply CSS Transitions do not work if there is a change in the display property as part of the same change that fires the transition, but you can workaround this by separating out the display change. If…”

By Janos Korom Dr. from Wien, Austria (Requiem in Mariazell (4)) [CC-BY-SA-2.0 (], via Wikimedia Commons

Requiem for the Command pattern

Tim Band wrote “Is there anything sadder than the Command pattern? The exemplar of the once-proud Patterns movement, the one that everyone understands and can see the power of, the one that has an instant applicability to many applications: the undo system. I remember a time when undo seemed a luxury to be implemented only by the most hardened of programmers; then the command pattern made it achievable by any decent coder. Now, the Command pattern is just that extra cruft you have to write when your language doesn't have good support for closures.”

A simple Knockout page router

Sam Carr wrote “Knockout.js is a pleasantly simple approach to data-binding ViewModels into your HTML. Like many JavaScript libraries it sticks to a core mission with a few simple concepts, which makes it quite approachable. Its simple template support means that you don’t need to write much code to get a top-level page router going in your single…”

By Alberto-g-rovi (Own work) [CC-BY-SA-3.0 ( or GFDL (], via Wikimedia Commons

When in Rome

David Ireland wrote “I’ve been trying to integrate js-sequence-diagrams into Trac. I’ve reached the point where I can choose between my sequence diagrams getting rendered, and the rest of the Javascript in Trac working. And it’s all because of an underscore… There’s a popular library in the Javascript world: underscore. In python _ is used to internationalize a…”

Getting back into front-end web development

Sam Carr wrote “I’ve been working on a small SPA (Single Page Application) – just HTML, CSS and JavaScript statically served and doing its thing entirely in the browser. I learned a great deal throughout the project, but here are some of the things that strike me as most valuable. Get a good workflow going I used Grunt…”

Two Magnolias, one container

Tim Band wrote “We are using Magnolia in a number of projects here at LShift. I have been feeling that Magnolia has a simple way to do most things, but often there are a number of other plausible alternatives that gradually lead you into wasting enormous amounts of time. Here I want to present a simple way to…”

Predicting and controlling correlations in differentials of addition mod 2^{n}

Paul Crowley wrote “This is a paper I wrote in collaboration with Scott Fluhrer in 2005. It was not accepted for FSE 2006; it would have been better if I hadn’t waited until 2014 to make it public, but better late than never. It arose from a discovery I made when developing attacks on Salsa20 for “Truncated differential…”

A study in Scala

Sam Carr wrote “Cards on the table: I like Scala. Right now it’s my go-to general purpose programming language, but I know that many people have a dim opinion of it, or appreciate its positives but are heavily conflicted by its negatives. Actually I do put myself in that latter camp, though I think I’ve got deep enough…”

Grunt uglify file specs

Sam Carr wrote “I struggled a bit finding relevant examples of Gruntfile configuration for Uglify, so having solved a few specific problems myself, here’s what I came up with. This is just a snippet from the whole Gruntfile of course, and contains half-decent comments already, though I’ll provide some extra explanations below to point out the most interesting…”