Practical Clojure

The first thing to know about the book Practical Clojure, is that unlike its title might initially suggest, it is not a book trying to describe how to use Clojure practically. That is to say, it doesn't describe how to create enterprise ...Read More

Testing Asynchronous JavaScript with Jasmine

For many applications, when you call a method the effect is immediate. For example calling a method like showErrorMessage("Error") will instantly update the page to give feedback to the user. However, not all applications are this simple. Caplin uses StreamLink libraries to connect our ...Read More

Design Driven Testing: Test Smarter, not Harder

TDD is a great methodology that I would expect most developers to have a good knowledge of. That said, I can count on one hand the number of developers I have met who claim to follow it fully. In fact, I can count it ...Read More

Testing add and remove using GUID's

When testing features of your product it is often necessary to test state changing methods. For example, consider a method which adds an string to a hashmap. The first time you call it you will get an "OK" message but the second time you ...Read More

Caplin Reaver – Hackday Project

Caplin Reaver (name pending review) was a small project created by Neal Dangerfield and myself to explore how to make the XMC (Xaqua Management Console) into a more compelling feature for Caplin Xaqua. The XMC is a great tool. It allows developers and administrators ...Read More

The “Mobile” Hackathon

Last year’s Caplin 24 hour HTML5 Hackathon was such a success that we’ve decided it’s high time for another! (more…) ...Read More

Clean Coder

In university we were given various compulsory professional ethics modules, which I considered largely pointless. I still do. Perhaps they should simply have given us a copy of Uncle Bob's new book "The Clean Coder". When it comes to how we act as professionals ...Read More

Picking a web server language

There is nothing better than starting a new Web App. I am constantly getting ideas about how to create the next big thing. It is going to use Canvas, CSS3 and bleeding edge JavaScript and be unlike anything that the world has ...Read More

The Non-Functioning Programmer (Part 1)

Over the years I have played with a whole bunch of languages here and there and have had a lot of fun hacking different things together. But in my second year of university I was introduced to a language called Scheme. Scheme is ...Read More