My thoughts recently have turned to teaching beginners Argentine Tango at TLC in Southampton.

Afternoon Milonga

Afternoon Milonga by Pat Murray

In preparing for this I experienced an interesting case of synchronicity as I was reading a book by Massimo Scaligero called ‘The Secrets of Space and Time’. In this book Scaligero talks about ‘true’ movement, an idea that smacked me right in the forehead as I saw its relation to the essence of dance!

Most of the time we move normally without much thought. We think functionally: I want to pick this object up; I want to move my hand to here etc, and our bodies do this for us.

If you wish to truly understand just how much is automatic go and talk to someone with Parkinsons, a disease which afflicted by father. Even now I remember his tears as this once amazing dancer tried to will his body to do the simplest tasks.

During this unconscious movement our bodies move us. But there is a different form of movement where we can learn to be more conscious as WE move our bodies. The former is something we cannot take responsibility for, and cannot truly individually own. The latter is where we can truly express ourselves.

This second form of movement is not purely a physical phenomenon – it has its source in our thinking. True conscious movement is the physical expression of our Thinking – capital T.

Try the following exercise and you might just be able to experience how different this movement is from our normal unconscious mode:

1: Stand up in a space where you have room to stretch your arms straight above you without hitting any ceiling. Stand with you arms down your sides.

2: Raise your arms to the horizontal position as you would normally do – unconsciously, without giving it much thought. You might experience this as a pushing feeling. You should be able to feel that you do not own the movement, just its result.

3: Now return your hands to your sides and imagine that there are infinitely long threads (and I mean infinite!) extending straight out from the ends of your fingertips. Imagine that these threads are raising your hands as they pull outwards and upwards. With your thinking imagine how, as those strings traverse space, you are cutting the universe in half out from your centre to infinity. You may need to do this quite slowly and might experience it as more of a pulling feeling.

This takes conscious practice and requires a disciplined – yet relaxed – imagination. Properly done it will feel totally different to step 2. It will be as if your Thought is moving you, as if the body need do nothing but attend to the Thinking movement you are trying to realize.

This is the essence of the movement of a good dancer

They will be centred in themselves.
They will be poised in space.
They will seem to move with a graceful lack of effort.

They are doing nothing less than touching the infinite with their own Thinking movement as it expresses their individuality into their bodily movement.

They will be collapsing that infinitude to a singularity in their thought and thus, given the relationship between time and space, they can bring us to a timeless point of awareness. According to Scaligero this is the true awareness of space and time and it will take some practice.

Tango Sketch 2

Tango dancers sketch by Pat Murray

Bringing this back to dance, and Argentine Tango in particular where we learn to consciously walk with a partner, it is noticeable how difficult it is to re-learn something we normally unconsciously do. In this case something we learnt in our formative toddler years before our ‘I’ became present (usually around 3 years old).

If we can individually achieve this consciousness and attention it can be very enlightening and life enhancing.

If we can do this with our dance partner then it becomes a truly creative, artistic and sublime experience.

Happy dancing!

ACCU2016: Talk on Software Architecture Design 2: The Historical Context

[This is the second part of the transcript of my talk at ACCU2016 entitled: “Software Architecture: Living Structure, Art, or Just Hopeful Arrangements of Bytes“]

Another enlightening aspect pertaining to this issue of software design that I find interesting is the history that has led us to the current state of our modern technological society.

If we look back we can see some origins in the Thirty Years War that took place between 1618 and 1648. Some commentators have drawn parallels with the impact of WW1 and WW2 between 1914 and 1945, saying that they could also be seen as a thirty year war. (Cosmopolis by Steven Toulmin) The Thirty Years War of 1618 was a terrible Europe-wide war that resulted in the death of a third of the German population. It was a religious war between Protestants and Catholics, i.e. one religion – two factions – and raised serious concerns about the subjectivity of religious faith and the human condition. It was this that brought the quest for certainty to a head. The underlying question was: How can we be certain of what is happening in the world around us? And in the 1600s, how can we be certain of God’s plan?

It was during this time that René Descartes came to the fore. He produced his “Discourse on Method” in 1637. He was the father of analytical geometry and of course coined the famous phrase “I think, therefore I am”. But this was predicated on the fact that “I doubt”. He concluded that because of our subjectivity, we cannot trust our senses and what they are telling us about the world, so he returned to the point of doubting. Since there was doubt, there must be a being that is doubting. This being, this ‘I’, that is doubting is thinking about this so therefore I am thinking. Since I am thinking I must exist in order to do that thinking.

Because the church was looking for certainty and because Descartes was able to couch this in terms that they could accept, this provided the foundation for the Scientific Revolution, followed by the Industrial Revolution which has led us to where we are now. It is interesting to consider the fact that we are at the end of 300 years or so of work based on Descartes’ philosophical premise: “I doubt, I think, therefore I am”. The aim here was to try and eradicate subjectivity.

I think that it is ironic that, although the aim was to be objective, his Cartesian coordinate system can be considered to be based on the structure of the human being! I stand up, and my head could be considered as the Y axis. I stretch my arms out to the side, there you have the X axis. I walk forward and there you have the Z axis. This points to the difficulties that are implicit in the struggle to eradicate subjectivity – to my mind it is not possible.

Because I am not a Kantian scholar I have previously refrained from mentioning Immanuel Kant, but his thinking has formed much of the basis of modern thought. He produced the “Critique of Pure Reason” in 1781, and one quote I wish to highlight here from his considerable body of work is: “The world in itself is unknowable”. This strengthened Descartes’ approach of not trusting our senses. It has given our modern scientific and technological society the excuse to allow our thinking to run ahead of the phenomena of the world.

This activity may sound familiar if you think back to the Path of the Programmer. It is a characteristic of the Journeyman phase.

With regard to my previous workshop on imagination it is interesting to see that one commentator, Mark Johnson, has noted that Kant had difficulty with imagination – Johnson states that he was “not able to find a unified theory of imagination in Kant’s writings” (The Body in the Mind p166).

The third person I want to mention, and the one I feel most drawn to, is Goethe. It was Goethe who raised the warning flag to say that there was a problem with the underlying philosophy and practice of the scientific method. He pointed out that there was too much over-hypothesizing and that the thinking was going ahead of the phenomena of the world. Observation was not being given enough time.

Does this ring any bells? It is exactly what happens when someone takes an undisciplined approach to debugging.

Goethe, however, was particularly interested in understanding the growth of plant life. He wrote the Metamorphosis of Plants in 1788 and identified two very important activities. The first one is Delicate Empiricism, i.e. carefully collecting the data, carefully observing the world without overly disturbing its processes.

The second activity, which is what gave me the impetus to give my previous workshop on imagination in 2014, is Exact Sensorial Imagination. This is NOT fantasy, but exact, grounded imagination congruent with the observed phenomena. Goethe was trying to understand how plants grew and how their forms changed during growth.

There is a link here for me with how software projects grow over time, as if they have a life of their own. A programmer needs to have a grasp of how the current software forms may change over time within such a context if they are to minimise future bugs.

The key difference between Descartes and Goethe is that Descartes was trying to eradicate subjectivity whereas Goethe was wanting to educate subjectivity.

The next very important phase in philosophical thought is the advent of phenomenology in the 1900s. The realization that the process of coming to know something is crucial to, and as important as, the conclusion. Goethe is not considered a phenomenologist as he focused on specific phenomena rather than the philosophy behind what he was doing, but he definitely prefigured some of their ideas and so could be called a proto-phenomenologist.

We need to understand that phenomenology is a sea-change in philosophical thought. Here we are, living in a modern technological society that is based upon 300 years of philosophical thought and now the underlying foundational thinking has changed significantly.

I see software development as a discipline that is in the forefront of trying to understand what this change of thinking means in practice. We need to understand how we develop our ideas and we need to understand our own cognitive biases, the subject of Dr. Marian Petre’s keynote “Balancing Bias in Software Development“. My point here is that we can do a certain amount in teams but there is also some personal work to do in understanding our own learning processes.

There is a wonderful quote by Jenny Quillien who has written a summary of Christopher Alexander’s Nature of Order books. She says in a preface:

“Wisdom tells us not to remain wedded to the products of thought but to court the process.”
(Jenny Quillien Delight’s Muse)

I think this is a lovely way of putting it. The process needs courting, it has to be done carefully as with Goethe’s Delicate Empiricism.

As background one of the main people I have read in terms of understanding the philosophical issues around phenomenology, yet in tune with Goethe’s thinking is Henri Bortoft, who’s writing is very understandable, particularly his book “Taking Appearance Seriously“. He draws on the work of Gadamer, one of the more recent phenomenologists.

ACCU2016: Talk on Software Architecture Design 3: The Issue of Doubt
ACCU2016: Talk on Software Architecture Design 1: The Path of the Programmer

My Thinking is NOT for Sale

Its 2 o’clock in the morning and I am finding I cannot sleep. A thought that is so off the wall has been gripping my mind for a while now and I am finding it more and more relevant to what I have seen happen during my career as a programmer.

The title is worth restating:

My Thinking is NOT for Sale

This is not so much a shouted response to all those times that good technical effort has been driven carelessly under the steamroller of prevailing economic needs – usually those of the money swallowing monsters that are most companies – than it is a statement of an underlying truth, if only I can express it well enough and in shorter sentences. So here goes…

If you pay for software you will not get what you need. In fact you CANNOT buy software because it is not a finished product. The current economic model we have just does not fit and I believe this is why there is so much trouble in this area.

What is important about good software development?

Over my 30 odd years of work the primary creative and energizing point has been the interaction between the developer and the actual user as a system has come into being. The best of it has been the conversation between the two as they navigate the area of the user’s needs. If the developer is skilled, both technically and personally, they help facilitate both parties in mapping an unknown area, probably only vaguely expressed in the “wants” that the user can currently identify.

This is a conversation of human discovery in thinking.

It is priceless.

It is a gift.

It is a Free process. Capital F.

It cannot be bought.
It cannot be sold.
It is NOT a product.

It only makes sense if the effort is freely given by the developer. The inner costs of doing this are so high that it requires a high level of motivation that can ONLY be internal. To try and shoehorn it into our current ways of thinking about money devalues the process and I think this is what is underlying the problems I have seen happen many times.

The kicker here is that it is likely that it can only be funded by gift money. That means that there can be NO LINK between the funding and the final “product”. I use quotes because that word is a misnomer of what is actually going on.


Just go and read a book called Turing’s Cathedral by George Dyson and you will see how the Princeton Institute for Advanced Study was funded by donation. This was where John von Neumann worked and developed the architecture that underlies modern computers.

The picture of how the whole current edifice of modern computing was birthed from gift money just blows me away. I find my thinking so bound up in the capitalist model that to separate the resource – i.e. the money to give time for people to think – from the product of that thinking in such a way shows up the illusion of the current funding models for such work.

Is that enough to allow you to see it? Truly?
If you can then maybe you might understand why I am having trouble sleeping because in my tossing and turning my feelings tell me it could change everything…

Or maybe this is all just a dream and I shall be sensible when I wake up.

ACCU2014 Workshop : Imagination in Software Development

A week ago on Saturday 12th April I facilitated a workshop at ACCU2014 on Imagination in Software Development which I am pleased to say – thanks to the participants – went very well.

Before the workshop I thought I had bitten off more than I could chew, having read through a lot of Iain McGilchrist’s book “The Master and His Emissary” and realising that using analytical thinking for such an exercise is very difficult. However thanks to my long suffering team at work giving me the chance to do a dry run, I was able to get feedback about what did and did not work and so ended up making some rather last minute changes. The final workshop format ended up being completely different to the dry run.

Before moving onto the exercises I gave a half-hour talk about the links between phenomenology; software; and brain hemisphere function, most of which in hindsight could have been left until after the exercises. My main objective, however, was to raise self-awareness about the participants’ internal imaginative processes.

I thought it would be good to highlight some of the primary ideas that came from the exercises, both in terms of the workshop’s preparation and its execution.

The need to get away from the software domain

The exercises in the workshop involved:

  • Listening to a story excerpt from a book.
  • Watching a film clip of the same excerpt.
  • Performing a software design exercise individually.

Each exercise was followed by discussions in pairs. It became abundantly clear that if you give a bunch of programmers a technical exercise, it will behave like a strong gravitational field for any ideas and it will be very difficult to get them to focus on process instead of content. Indeed during the workshop I had to interrupt the pair-based discussions to make sure they were talking about their own inner processes instead of the results of the design exercise I had given them! By reading a story and watching a film clip first it did make it easier to highlight this as a learning point since it was much easier to focus on internal process for the story and film clip.

Individual working instead of in small groups

The trial run with my team at work used small 3-4 person groups. I found that the team dynamics completely overshadowed their individual awareness. I therefore changed the format to make the core design exercise an individual process, followed by discussions in pairs. This had the desired effect of bringing their internal processes into sharper focus. The more you know about an area the more difficult it can be to “go meta” about it.

Some great insights from the participants

When listening to the story 3 processes were identified which occurred in parallel:

  • Visual – Picturing.
  • Emotional.
  • Logical – Probing.


  • The film was much more emotionally powerful, to the point of feeling manipulative.
  • But it was felt to be ‘weaker’ due to the imagery being concrete.


  • When performing the design exercise the ideas were experienced as a story, but as a sequential process rather than a parallel one.
  • The logical analysis required thoughts to be made explicit by writing them down otherwise it was hard to hold them in awareness.
  • There was a more conscious awareness of past experience affecting current ideas.
  • The initial analysis was wide-ranging followed by focussing down to the core ideas.

So if any of the participants make it to this page – I would like to say a great big thank you for getting involved.

Slide set follows: