An Estimate is not a Guarantee

The statement that an estimate is not a guarantee might sound obvious but it often feels anything but. Over the years I have frequently heard managers complain that something has taken longer than was anticipated and have been told to improve ...Read More

Testing APIs for Backwards Compatibility

A couple of weeks ago, I wrote about Agile Framework Development and the various techniques that we have used here at Caplin to build our APIs in a way that is sympathetic to agile methodologies. One of the key problems ...Read More

JavaScript Variable Naming Convention

When I joined Caplin 10 years ago I came from a company that used Hungarian notation to name its C++ and Visual Basic variables. For me, it seemed a natural progression to continue to use these naming conventions and adapt ...Read More

Agile Framework Development

At times it seems that the philosophy of agile software development is at odds with that of framework development. Given the amount of print and web space dedicated to agile methodologies, it's incredible how little is dedicated to this topic. It's ...Read More

Pitfalls of Exception expectations in JsUnit

At Caplin we use the JsUnit framework to test our JavaScript code. Over time we have made minor modifications to it, integrating Mock4JS and JSCoverage, as well as adding a few of our own extensions that are sympathetic ...Read More

Would a setMonth() by Any Other Method Name be as Sweet?

On 31st December 2009 a unit test that had been running successfully in the Caplin continuous integration environment for two months suddenly started failing. The test in question created a JavaScript Date object, modified it using various setter ...Read More

Let’s all jump on the Kanban

We have been using agile methods - a typical mix of Scrum and XP - for some years now at Caplin. Though all of us have had some level of formal training and many years of ...Read More

Domain Driven Design: Approaches to Streaming

In Sockets, Messages and the Pub Sub Paradigm: Approaches to Streaming I discussed various techniques involved in streaming data to a browser. There are many products available making use of these techniques to solve a broad variety of problems, but ...Read More