Wednesday, June 29, 2005

Switzerland

No entries for a week – a bit of a gap by my own standards. I’ve been on holiday (vacation to US-English speakers). Went down to Switzerland for a week. We relaxed, we saw Zurich, met some friends, visited Lucerne for a few days (where I would recommend the Hotel Hofgarten), did some lake swimming, walked up (half a mountain) and generally had an enjoyable time.

Of course, Switzerland is expensive – I probably don’t need to tell you this – but its worth thinking about in more depth. What makes Switzerland expensive? Taxes are low, employment is high, salaries are high (so people can afford the prices) but you might expect these things to cancel out. At the moment I can’t answer my question.

(Another question I can’t answer: how can the subsidise the train system so much when taxes are so low? I suspect, the answer is limited public spending on health care, similar to the US where health care money is spent by the private not the public sector. This is the ultimate stealth-tax.)

What was clear is that Switzerland is a service based economy. Yes there is some farming, and some manufacturing – particularly precision engineering like watches and things but the driving forces in the Swiss economy are Banking and Tourism, both service industries - and both industries that don't like change.

(OK, maybe I didn’t see another side of Switzerland since I only visited the home of Banking and Tourism, please correct me if I’m wrong.)

What is interesting is that Switzerland potentially offers a view into the future. We know that much manufacturing and even some services are migrating to low-wage economies, so what advanced economies like the UK is betting on is keeping the high-value services. There will always be some low-value services (e.g. bar tender) but the high-value ones are the ones really worth having and they are knowledge based. Bankers require knowledge of banking, IT people require knowledge of IT, Teachers require knowledge of their domain, and so on.

I’d like to learn more about Switzerland’s economic model and what it can teach us for the future.

I’d also like to know how Switzerland got to be where it is today. How did it create such an economy?

And, the malevolent curious side of me, would like to know more about the ghosts in Switzerland’s cupboard. The place is too clean, too wealthy – I was actually relieved to see homeless people, it told me the place was real!

Wednesday, June 15, 2005

An organization mapping exercise

Last night I ran an organizational mapping exercise at the Extreme Tuesday Club. What, you may ask is that?

Well, I learnt the technique from observing Jim Coplien apply it. Jim and Neil Harrison have been running these workshops for some years, their aim was to better understand development organizations and produce the patterns in their book “Organizational Patterns for Agile Software Development.”

Typically they run the workshop with a software development team, at the end of the sessions they have a collection of index cards they can analyze and produce a map of your organization. This map can then guide you through their patterns telling you which patterns your organization is using, which is isn’t using and which it should think about using.

This is a very powerful technique. It will tell you a lot you didn’t know, much that is obvious once it is pointed out and confirm a lot of suspicious various people have. As a tool for change its a great motivator: these guys come in, spend a day with you and can describe you back to yourself.

If you want to improve your software development efforts I strongly recommend getting them to run one of these studies.

Anyway, that is something else.

The sessions I ran with help from Giovanni Asproni and Rachel Davies was not really what Jim and Neil do, it was more inspired by Jim’s workshop. And what we didn’t do was go anywhere near the patterns. In effect, it was a demo of how you might go about mapping the interactions in your team.

So, what did I learn form this?

First thing I learned was that running this in a pub, with people drinking and eating, joining late and leaving early is far from ideal!

Second thing is that the people in the room hadn’t actually worked in a team together. So, we where trying to map an organization that didn’t actually exist. Naturally, each individual had different expectations of what they expected other people to do. The guy playing the “Architect” role had a different understanding of what an Architect would do to the person playing the Customer role.

To make matters more complicated, this was XTC, by definition, the people in the room believed in Agile development, Extreme Programming, Lean Software and all that jazz. Nothing wrong with that in itself but it made things even more complicated. There are few organization which are actually out and out XP, or Lean, or Agile. Everyone has a different take. For example, the person playing the “Project Manager” understood this as an enabler role, more of a coach, while others where expecting him to manage a project.

The other problem we faced was that time was limited – OK, time is always limited but the pub was going to close at 11pm. Having seen the technique used a few times before I knew where time would be wasted so I tried to hurry it along at stages. I probably over did this a little bit but it did allow us to finish in less than 2 hours so leaving time for a discussion.

The discussion that followed was very interesting. We discussed the technique, our companies, our experiences of agile, and how the technique had shown some things that we saw in real life (e.g. a frustrated developer got fed up of project management and testing and decided to talk to the user directly.)

Actually, discussions at XTC are always interesting but I don’t always feel I come away knowing something new. This was different. I got some insights from the exercise - I might write them up in more detail in the next few days or weeks.

The other thing I should say is that although this idea has come from software development its not confined to software development. It could be used to map any organization or process. (Interestingly, a lot of Jim and Neil’s patterns also apply outside of software development.)

Actually, in retrospect, since my objective was just to demonstrate the idea of the technique it may have been better to choose something from outside the software domain, say, getting a car services.

In the middle of the workshop I did have that “O no! Its all gone wrong, I can’t do this” feeling but in the end most people thought it was a great success.

(Who was it who said “In the middle of any change it feels like failure?” – I can’t remember, I think it was a Harvard Business School professor?)

I think I agree with them, it was a success for me because I got to try moderating this technique, it was a success for the participants because they go to see what an organization mapping technique could look like and it was a success for everyone because we did get some insights into the software process.

Sunday, June 12, 2005

Do you believe in Phil Crosby?

So I’ve started using a bug tracking system.

Yet hate bug tracking systems - I believe they are wrong, rather than help fix bugs they help hide them, they create excuses for not fixing bugs. They allow us to say “Its in the system” when really we mean “No way will it get fixed.”

So, why have I started using something I don’t like...

He’s the simple explanation: I’ve now taken over some product management duties and I don’t have the people available to fix the bugs. I need to keep track of the problems that are coming up. I also need to show the company “I’m doing something.” Somehow people are impressed when I say “I’ve started using the bug tracking system.”

It also means people accept there bugs.

What we really want to do is not accept them, have zero-tolerance for such errors.

So, the longer version of why I’m using a bug tracking system...

Its a stock of work to be done, a queue, a buffer between now (the time they are discovered) and the time the work gets done. When they do get done.... well, that is the question.

It does have one attribute that is useful, it allows for prioritisation. So, we can decide which ones need to get done. But then, if we had zero-tolerance there wouldn’t be a need for this. (Or, if there had been more quality built in then we wouldn’t have the need either.)

A keen reader will probably also point out that with prioritisation comes the ability to decide not to do something. Say, we identify 100 bugs, we fix the top 20 and then the people above me decide it is good enough, why use scarce resources to work on such low priority items? If it does the job with these 80 faults why shouldn’t we just save our effort?

I suppose its a bit like building a car, and when it is done you see the faults, you fix some and sell it. Have you saved yourself a lot of work? Have you allowed your workers save time during the construction - thus introducing low priority faults - and later decided which time saving items where worth going back and paying for?

To my mind, if a job is worth doing its worth doing right. If we need to save time and money somewhere we should do it in a conscious management fashion “Don’t develop feature X” - not in a sub-conscious “Joe saved 10 minutes by not tightening the screws” kind of way - doing it this way allows the guys on the production line to decide what is worth saving on.

Really it comes down to “Do you believe Phil Crosby?” - that is, do we believe “Quality if Free” ?

Monday, June 06, 2005

People know what is wrong with a company and what needs changing

They may not tell their managers, supervisors or leaders but they will talk about it with others in the pub, the coffee shop, or at the water cooler, or some other place where it is safe to moan.

It is the work of a good leader to give people a safe place to express these problems in an environment where they can be dealt with. It is the leaders responsibility to listen, understand and see what can be done.

It doesn’t mean it is the leaders responsibility to do something about it. They may decide they need to act, but more often it is their responsibility to ensure the people facing these problems can act to solve them.

All too often people think “nothing can be done” so they moan about it to one another in the pub and absolve themselves from fixing it. Sometimes they don’t feel they can fix it, sometimes they don’t think they are allowed to fix it. In an enabled organization you want people to fix the problems as and when they find them.

I think it was Gerry Weinberg (Secrets of Consulting, 1985) who pointed out that problems can’t survive in the light of day. Once a problem is brought out into the light - or named as Gerry puts it - then your half way to fixing it.

The second half is more difficult: you have to want to fix the problem.

All too often people don't actually want to fix the problem. Maybe they are scared of the solution, or maybe they fear the consequences of fixing it, or maybe one of many other reasons.

Saturday, June 04, 2005

Growing

Two things you should know before I get into the meat of this Blog.

First, I have a lot of time for the writings of John Seely Brown. If you’ve not heard of him before get yourself a copy of “The Social Life of Information”.

Second, Wharton Business School at the University of Pennsylvania run an interesting e-magazine called “Knowledge @ Wharton”. Of the newsletters I’m signed up for it is one of the few I actually look forward to receiving.

In this month’s Knowledge@Wharton there is an interview with John Seely Brown, together with John Hagel he has a new book out “The Only Sustainable Edge: Why Business Strategy Depends on Productive Friction and Dynamic Specialization.”

You can get a feel for what the book is about from the interview and it sounds like it might be quite interesting. I’ll add it to my “I should read” list.

Anyway, the reason for mentioning all this comes towards the end of the interview and John Hagel says:

“Ultimately what we see is the re-conceiving of the role of the firm. Traditionally the role of the firm has been to increase the efficiency of transaction costs, whereas we see more and more that the firm has to provide opportunities for capability building of the people within the
firm. If the firm cannot do that, people will leave and seek out environments that can help them accelerate capability building better. It's a very different way of thinking about what the firm needs to provide to its employees, and the role of the employees within the firm.”

Wow! Your not kidding, this is re-conceiving the firm. I’ve been giving some thought to this since I read it a day or so ago and I think he’s right. Lets take it a bit at a time.

Yes, firms have traditionally existed to produce efficiency in transaction costs. A car manufacture has all the designers, engineers, production staff, distribution, etc. etc. in one entity because they is how they can use them efficiently, no need to ask yourself “Can I trust this supplier?” when the supplier is yourself, no need to go hunting for trucks to deliver your cars when you own a fleet of trucks yourself - you get the idea.

Only building companies is hard. And we know from experience that competition drives down costs - this one of the reasons why US capitalism beat Soviet communism. But if competition results in the lowest costs and prices why don’t we compete for everything? Why shouldthat car manufacture have a fleet of trucks when if he adds competition his costs will be reduced?

Answer: transactions costs, because the savings from setting one trucking firm against another are less than the costs of finding the firm, negotiating a contract, monitoring the contract and paying the bills.

But this is changing, trends in outsourcing - often enabled by IT - mean that transactions costs are falling and it becomes worthwhile to use competition to reduce costs. We are already starting to see the emergence of virtual companies where almost all the activities are
outsourced.

You could argue that in future we won’t need firms because they can outsource everything. But hang on, some firms must exist because they will be the outsourcers!

So, if you are a firm that exists, say you are an outsourcer so you have to do what-ever-it-is you are going to need people. Why would these people work for you?

Well, one answer is they need to pay the rent or the mortgage. But if this is the only reason people work for you the chances are they aren’t going to be very motivated, if you are using the stick rather than the carrot people may go through the motions, they may do something, it mayeven be the thing you want them to do but it isn’t going to be very efficient.

Contrast that firm with the one that does uses the carrot. They create a place where people want to work, where people are enthusiastic, where they are motivated. Suppose they are doing the same - or similar task. Who is going to be the most profitable?

The answer to that question kind of depends on how you see the world and what evidence you decide to look at. For me the answer is the second firm. Trouble is, the second type of firm is much more difficult to organize, operate and manage. It also is also he opposite of the macho images we get from TV and Hollywood: “Do it or I shoot you”, “Make it so”, “I could tell you but I would have to kill you.”

But back to the plot...

Now remember, these firms are outsourcers, other people are giving them business to transact. So, which firm is going to win the bulk of the contracts? Right, the second firm.

So the question boils down to: how do I get these enthusiastic people to work for me? (So I can have a productive workplace and win those outsourcing contracts.)

This is where the Brown-Hagel argument really makes sense to me. It is the firms who give their people the opportunity to grow. Notice the word is grow, not challenge, not highest paid, but growth.

When I think about my own career is a search to improve myself, to learn more and, yes, grow. Sometimes I’ve done this by earning lots of money and using this to travel, buy a house so I can have my own space, buy car so I can experience things; and sometimes I’ve grown by working abroad, and sometimes I’ve just grown by working on an interesting project.
Once I’m not growing I’m not interested in work and my productivity goes down, I start asking: what next?

And then I come home at night. First I might cook - I find growth in cooking, new recipes, new variations on recipes I know, practicing a familiar one or inventing something from what I have in. And then often enough (too often?) I lock myself in my study to work on some pattern paper, or a magazine article, or (re)organising some body I’m involved in, why I might even write a blog!

Or maybe I settle down with a book.

If bed-time comes and I’ve not grown a little, learned a little something, thought about things I kind of feel I’ve wasted my time.

Maybe not everybody will buy into the Brown-Hagel argument, growing isn’t for everyone. But, where you do need them, and where you can take this advantage then I think your onto a winner.