Thanks to for photo

Programming is not a Performance

Ian Rogers wrote “Programming is more like writing a novel then executing a performance. No I don’t mean the likes of If Hemingway Wrote JavaScript  – I mean, apart from ridiculous job interviews involving a whiteboard and pen  (NB. LShift never does that) coding is very unlikely to be a performance in an instant of time. Usually when…”

By USDAgov [CC BY 2.0 (], via Wikimedia Commons

Elm: Any good?

Tim Band wrote “I love Haskell. But, like many people who love Haskell, I don’t use it for very much. Wouldn’t it be nice to have the nice properties of Haskell (the compiler checks that your code makes sense before you run it, Quickcheck-style testing, pure functions) but produce production-quality Javascript for client-side web programming? The most tantalising…”

Why bother testing?

Ian Rogers wrote “It’d be nice to be able to make a definitive case for the benefits of software tests, but I can’t due to this one question: Is it possible to prove the correctness of a program using tests? The answer is unfortunately “no of course not” and I’ll show why below. But all is not lost…”

Old spring-cover clock with chain

A memory gotcha

Matthew Sackman wrote “A couple of weeks ago I was reading Juho Snellman’s blog on implementing a hierarchical timer wheel, and as usual, over on the morning paper, Adrian’s covered a paper on various approaches to timer structures. What I found most interesting though is the final graph on Juho’s blog post where he does some performance testing…”

Using the BBC micro:bit with PlatformIO

Tom Parker wrote “I recently acquired a micro:bit, the new BBC device intended for helping computer education. After a bit of delay, they’ve finally starting shipping the device, and now members of the public like myself can grab one. So, why this device in the middle of a sea of other options in the modern embedded environment? Well,…”

By Ramessos (Own work) [Public domain], via Wikimedia Commons

RabbitMQ’s new timestamp-tracking feature

Alex Thomas wrote “‘Rest assured our service uses a queue with guaranteed delivery, meaning that your message will always get through. Maybe not this year, but some time, definitely.’ Not quite sold? To help address the requirement for more practical service-level guarantees, we added a feature to RabbitMQ 3.6 called timestamp tracking. Tracking messages via their age has…”

By Jacopo188 (Own work) [CC BY-SA 3.0 (], via Wikimedia Commons

Analytics with SQLAlchemy

Alex Thomas wrote “What to do if a conventional, line-of-business app starts morphing into an analytics one? The situation here may be that a bit of custom SQL, introduced to do one specific bit of summarising or pivoting, expands and forms a kind of creeping undergrowth of tightly-bound code, impervious to Agile norms of modularity and testability. In…”

Dawn: Mobile bus stops display

Tom Parker wrote “When I’m out and about, I find myself repeatedly wanting to know when a bus will stop near where I am. This generally involves a phone as the TfL Countdown displays are a bit thin on the ground. Despite the advent of such things as Citymapper, I’ve still been a fan of the Countdown mobile website,…”

By Hubbard, Tom, 1931-, Photographer (NARA record: 8464449) (U.S. National Archives and Records Administration) [Public domain], via Wikimedia Commons

Simple user authentication: ASP.NET Identity and NHibernate

Martin Eden wrote “ASP.NET MVC 5 introduced a new system for managing users and authentication, known as ASP.NET Identity. Over the last few years we have built and now maintain a couple of MVC applications. We started with MVC 2, and have since upgraded to 3 and then 4. So despite MVC 5 being out since the end of…”

By Mboldfield at English Wikipedia [Public domain], via Wikimedia Commons

Call stack complexity

Matthew Sackman wrote “Over on the morning paper, Adrian’s recently covered a number of papers looking at trying to detect bugs in code using slightly unusual means (i.e. not the usual combination of lots of buggy tests and lots of static checks). So that’s been on my mind lately, at least when it gets a chance in between…”