Software Development by Oral Tradition

One of my favorite quotes about software development is that “software development is not a product-producing activity, it is a knowledge-acquiring activity” (Phillip G. Armour, “The Five Orders of Ignorance”, CACM 10/2000).

One of the consequences is that there are fundamentally two types of “bugs” or defects: (1) “we” know how it should work, but have messed up reflecting that knowledge in the software, and (2) the software accurately reflects our knowledge, but our knowledge is in some way “defect”. Plus, there is another one: Practically all relevant software is developed in teams, and there is a chance for misunderstandings between the individuals comprising the teams.

A lot has been thought and written and invented around getting rid of these misunderstandings. So far, none of it works reliably: at the very least, the task at hand and the people on the team should determine the choice of method (and, especially in large corporations, doesn’t).
Continue reading Software Development by Oral Tradition

Brainstorming with an Anecdote

Time to kick off a brainstorming session. How to do that? – Reminding everybody about how brainstorming works? Focussing people on the topic at hand?
Fortunately, I ran across this nice article “Twitter Strangers” just in time. I re-told the article (admittedly in a creative interpretation), roughly with the following key content: about the tendency to get stuck in the same associations, about the challenge to be really creative and about a simple experiment that shows the value of unexpected contributions. It was just the material I needed to wake everybody up, establish some cliff-hangers and so on to bring some spice back into the heads.
In the workshop summaries, the resulting brainstorming was repeatedly highlighted for its energy level 🙂
For me, this proves once again: The success of any kind of group activity is determined by the ability to put everybody into the same frame of mind.

Image Credit: kevindooley / Flickr

Functional Fixedness: Real-world examples

You may remember the candle experiment from the recent post “Motivation 2.0: Daniel Pink on the surprising science of motivation“. The whole point of the candle experiment is to demonstrate that overcoming functional fixedness can not be accelerated with carrots and sticks – on the contrary.

Here, I’d like to give three real-world examples for overcoming functional fixedness. Or actually… one example for, two examples against it.
Continue reading Functional Fixedness: Real-world examples

Twitter beyond the Tornado?

Every once in a while, I get delusions of grandeur and think I can understand the world.
Given the latest major pieces of news about Twitter, I get the impression it’s that time again.

The other day, I was studying “Inside the Tornado” once again. (See Inside the Tornado: Strategies for Developing, Leveraging, and Surviving Hypergrowth Markets)

With that fresh in my mind, latest news about Twitter seem to ring a bell…

Continue reading Twitter beyond the Tornado?

Motivation 2.0: Daniel Pink on the surprising science of motivation

The other day, a friend of mine recommended another TED-Video to me: “Daniel Pink on the surprising science of motivation” (~18 Minutes). I think everybody who’s into management and/or leadership should have seen it.

It’s clearly worth watching, because Daniel is a truly gifted speaker. Still, for the hurried reader, here are the core points as I picked them up. The main theme is

There’s a gap between what science knows and what business does.

What he’s referring to is the “candle problem“: A cognitive performance test dating back to 1945. This test and a range of other examples Daniel quotes clearly shows that “sticks and carrots” (aka incentive plans etc.) actually reduce performance in cognitive tasks.

Incentives do work for mechanical tasks (which were predominant through much of the 20th century). They do not work for cognitive tasks, which dominate the 21st century. That’s the gap Daniel is talking about, and I’d like to add that this especially applies to the business of software

While science knows for more than 60 years that a bonus plan, say, for managers, reduces effectiveness, businesses reach out to higher and higher incentives in the areas where they are known to work least. One could say: They don’t know better. How else to motivate people?

And Daniel has an answer to that question: Purpose, Autonomy and Mastery.

In the video, he goes on to explain purpose – the topic in its entirety is covered in Pink’s book, Drive: The Surprising Truth About What Motivates Us.

Since then, I keep asking myself: Do you create a sense of purpose in the people you are working with?

Lost+Found quote: “What’s going on in the project” (Ward Cunningham)

For questions like, “What’s going on in the project,” we could design a database. But whatever fields we put in the database would turn out to be what’s not important about what’s going on in the project. What’s important about the project is the stuff that you don’t anticipate.

(Ward Cunningham, founder of the first Wiki)
Found at artima developer: “Exploring with Wiki” – A Conversation with Ward Cunningham, by Bill Venners;
October 20, 2003

Everybody, Somebody, Nobody. Anybody?

Anybody, Nobody, Everybody, Somebody: A picture called "Nobody's portrait" - a face with glasses, without hair, eyes, nose or mouth. Who is it? - Nobody...I think everybody knows the following story. Still, it has turned out both fun and useful for me. Regularly. 🙂

This is a story about four people: Everybody,
Somebody, Anybody, and Nobody. There was this
important job to be done and everybody was asked
to do it. Everybody was sure that somebody would
do it. Anybody could have done it, but nobody did
it. Somebody got angry about that because it was
everybody’s job. Everybody thought that anybody
could do it, but nobody realized that everybody
wouldn’t do it. It ended up that everybody blamed
somebody when actually nobody asked anybody.

Image: Flickr / нσвσ

Image and Reality

La Trahision des Images
The Treachery of Images as an example for the mis-match between the actual staus and the reflection of the status.
One frequent mishap in larger organizations is exaggerated confidence in KPIs.

It is interesting to note that the literature on management, spends little to no attention on the accuracy of the measurement, while the literature on leadership barely mentions such KPIs at all. When discussing topics that are easy to measure, like manufacturing, taking the accuracy of KPI measurements for granted may make sense – however, the business of software is so far largely resisting meaningful, repeatable measurement. KPIs are so important because, often, KPIs are tied to people’s bonuses, which immediately invites, encourages … tuning of KPI actuals.
Continue reading Image and Reality

Systems Thinking