What we've been doing

Fly for Scala 1.2.4

The latest version of Fly for Scala has been released and is available at http://www.flyobjectspace.com/.

Read the rest of this entry »

Software Quality – Syntactics

“If you have built castles in the air, your work need not be lost; that is where they should be. Now put foundations under them”. Henry David Thoreau

This third article about Software Quality is concerned with syntactics, by which I mean the syntax of collaborating components and systems, and the people that use them.

Read the rest of this entry »

This Business of Analysis – Domain Knowledge

Many people involved in software development understand their business domain – i.e. they have business or domain knowledge. This is, for the most part, a good thing, for it means that they can have reasonable confidence that they share syntax and semantics with other stakeholders.

However, there are two common issues related to domain knowledge that bear some discussion. The first is the assumption that if we have sufficient domain knowledge, then we understand the problem. The second is a failure to recognise that in almost every significant software development effort, there is more than one domain that needs to be understood.
Read the rest of this entry »

Technorati

A temporary post for a Technorati Profile

Software Quality – Semantics

This article,the second of a series of articles discussing Software Quality, is concerned with semantics and its importance in building maintainable, extensible and robust software systems.

Read the rest of this entry »

This Business of Analysis – The Problem

Analysis is usually a significant part of most software development efforts. As such, it would be reasonable to assume that analytical methods are well understood, even if analytical skills are not commonplace. However, there is often a great deal of tension between stakeholders that centers on the mechanisms and products of analysis, indicating that this assumption is not valid.

The reasons for this are many and varied, and I will explore them in this series of articles.

Read the rest of this entry »

Software Quality

Walk into a room of software developers and invariably the conversation will turn to the dreadful quality of code in their workplace or the industry as a whole. They will speak very passionately about such details as Test Driven Development, loose coupling, inversion of control. Or how much better things would be if they could use languages like Ruby/Scala/Clojure/Lisp/Haskell (if they talk about Haskell then hire them).

But the production of high quality software is much deeper than simply following a set of rules such as ‘write small methods’. So what does Quality mean  and how does it apply to software?

Read the rest of this entry »

Welcome to the new Casual Miracles website

Our website has been in need of some care and magic for quite a while, the old one could charitably be called functional.

We asked Keren Lerner at Top Left Design to rebuild our site and her team has done an excellent job, Gemma in particular who had to put up with me trying to decide colours, logos, etc. Roy Twitchin also helped us with the copy for the site which has been invaluable.

Apart from building a new site, we have had a very busy year despite the recent crisis in banking, and are going to be writing a series of blogs about our experiences, particularly the challenges of introducing modern software processes into traditionally run businesses.

On the technical side, Lance and I have continued to work on open source projects when we have time, you can see those listed here: http://www.stateofflow.com/projects. One which has been really useful over the years is JEDI, a Java library for working with collections in a more functional style.

Although Java is our main platform for development, I’ve been doing a lot with Scala lately so expect quite a few posts on that subject. My first real project in Scala is a client side API for Fly, an extremely fast, if not the fastest, object space written by Nigel Warren.

I hope you like the new site and will consider bookmarking our RSS feed to keep up-to-date with us.

Site Designed By Top Left Design