Tag Archive for 'people'

Page 4 of 5

Go out and see for yourself

I’m in Singapore to do assessments . Going out there and seeing for our selves (me and a representative from the customer) makes a big difference in how the assessment works. We could have sent the teams here our ’standard’ questionnaire, and possibly follow up with conference calls. Seeing the work environment, and meeting face to face allows us to hear the things that are not being said.

singapore skyline seen from Marina Promenade by Calvin Lee

Being face to face, sharing meals helps us to establish a working relationship, and get a better understanding of what they are trying to achieve.
If we wouldn’t have gone out to see for ourselves, we would have missed important information, as well as be more susceptible to rumours. “Going out”, the questionnaire still is a useful tool, and the visit delivers richer information. Visiting also disambiguates the questions.

'Just street photography'  by saipal
* – the title of this post refers to one of the Toyota Way principles, aka Genchi Genbutsu

** – I went out to see Singapore for myself. Apparently, my self alone, as I left my camera at home.

Brown Bag session

The unprepared session at Agile Open prepared us well for the brown bag session Bernard Notarianni hosted subsequently over lunch, to show how they are done in his workplace. These brown bag sessions each deal with a chapter from Quality Software Management (the four volume book series by Gerald Weinberg).

Bernard Notarianni tells what is in the first chapter of QSM

Bernard Notarianni explains the first chapter of Quality Software Management

I’ve participated in many discussions on software quality. Usually, it leads to babble and nothingness… This time was different. Discussion on ‘what is software quality’ was focused, and I learnt a thing or two about it. The format of the meeting is simple. Everyone reads a chapter, there is some discussion on the content, and then the group does one or more exercises – QSM has exercises at the end of each chapter.
They have these meetings every two weeks. At this rate, they’ll be spending the next couple of years working on it. Bernard says it works great for them, and they’ve been doing it for quite a while now – looks like years of fun and learning to look forward to.

People are all the same…

I wanted Agile Open 2006 to have an atmosphere like Cheers:

I wanna be where everybody knows my name comic, by Repoort

‘I wanna be where everybody knows my name’ comic by Adam Hally

and it did. As I didn’t tell you yesterday (Change club), I’m now at european consultants camp. Can’t tell you what is going on there right now, as we probably don’t have an internet connection. Not having an internet connection at a conference gives it a much higher level of “off-siteness”, getting people to talk to each other, rather than talk back home, or drift off the internet. Some people bring their families, so they don’t even have to call back.

I put up a mailing list for this year’s participants, two weeks before the start of the conference. That works great as a way to (re)know our names. We had a thread of “requests for sessions”, where participants request a topic they would like to explore, and others respond with what they have to offer.

I wanted to have a “parts party” because I heard about it, but don’t know exactly what it is. Nynke Fokma, Bent Adersen and Marco Riccioni offered to host one. They discussed some of the parameters and properties of it on the list, so other participants know what to expect, and already have something to refer back to in case they’d later like to run one of their own.

The comic in this post comes from the series “Happy Go Lucky” by Repoort.

Customer Oriented Architecture

Marc calls Bullshit on (perspectives on) SOA (service oriented architecture).

“in the end, it’s about delivering value to the customer, isn’t it?”

I’m having problems with the “Architecture” metaphor applied to software for exactly this reason – software architecture often detracts from delivering value to the customer.

I think it would be wise for those discussing “software architecture” to take a deeper look at architecture than the unthinking stereotype that results from “just using the metaphor”, thereby transforming the metaphor to a (perhaps useful) analogy. Writing this post is my attempt to deepen my own understanding a bit, maybe it will do the same for you :)
So far, the use of “architecture” seems like a vain attempt of a young profession to borrow credibility from a much older profession. I believe it is time software development learns to stand on its own two feet.
The one thing I’m missing most in discussions and descriptions of “software architecture” is context and history. Building architecture has many “schools”. Each school puts emphasis on other values. An architect, or a team of architects can belong to one or more schools, at the same time, or over time. Or they develop their own style.

Building projects and architects are driven by many factors. For some it seems to be mainly aesthetics:

piramide near the louvre, paris

the piramide @ the Louvre

For others it may be research into new materials:

eiffel tower by night

Eiffel Tower
For others it may be adapting to traditional buildings in the environment:

buildings in shanghai

Shanghai
For some projects (e.g. hanging a photo on the wall) using an architect would be somewhat of an overkill. Using an interior designer might be a good idea in some cases, in the Netherlands they are called “binnenhuis architecten”, meaning “inside (house) architects”. For other projects, an architect is not enough, and an urban planner may be needed:

view on the scheveningen beach

Scheveningen, the beach front of the Hague
view on delft

Delft city centre and some of its edges
Other architects, in the vein of Christopher Alexander and Frank Lloyd Wright take a fractal view of architecture. They pay as much attention to why what lamp is hanging where (interior) as to how buildings fit in the (urban) landscape around it:

Monona Terrace Community and Convention Center parking lot overlooking Lake Monona in Madison, Wisconsin

Monona Terrace Community and Convention Center parking lot overlooking Lake Monona in Madison, Wisconsin, designed by Frank Lloyd Wright

Monona Terrace Community and Convention Center parking lot overlooking Lake Monona in Madison, Wisconsin

Inside of the convention center, also designed by Frank Lloyd Wright

I used to like the “architect also implements” pattern. Johanna Rothman’s Architects Must Write Code seems to be a more prescriptive variant of the pattern – I’m missing the contexts in which it applies, and contexts in which it doesn’t. Reading Architect as Consultant? it seems Johanna believes architects who don’t program on “the project” can’t work. In Rotterdam we used to say “Kan niet bestaat niet” (‘Can not ‘ exists not). Rotterdam was re-built from scratch, after the city-centre and more was destroyed in a blazing fire, resulting from a bombing in the second worldwar.

If you’re building just a house, “architect also implements” might be feasible, or maybe it is the master builder that also designs. If you’re re-building a city, having the urban planner run around with a hammer and a box of nails would be seen as micro-managemement.

To me the main question is: how does the “architect” know the influence she has on the project, and how does she receive and learn from the feedback about the thing as it is (being) built? For a small project, actually participating in the implementation may be a good idea. I like to pair program with others, and collaboratively develop the (technical) architecture. For a larger project, being present at stand-ups, temperature readings and retrospectives may be a good idea.

We shouldn’t forget that building software is not only about technology. A good “architect” also takes into account the landscape around the software and the people living in it. Diving deep into software development may make one focus on the hammer and nails, and forget about the landscape.

I’m currently involved in an architectural project for a Really Large Corporation that is more comparable in scale to “urban planning”. The role of me and my colleagues is more that of city planners, determining which buildings fit where, and where buildings have to be demolished to make place for highways (I’m consulting on fits and misfits of existing software, software under construction, and assessing the way(s) in which they are constructed and hosted by vendors, internal suppliers and customers).

Actually implementing things, and having done that in the past gives me a perspective that makes it easier to call “Bullshit” on this project. For instance, when SOA related performance issues come up, I can use my experience on implementing a similar system to provide a perspective.
“Implementing” for this particular project wouldn’t make sense to me; I would lose the perspective I need to participate in “urban planning” of multiple (software and organisational) systems.

To me, developing software is about providing value to the customer now and in the future. I prefer to think of “software architecture” as a fractal, taking into acount which types of events have to happen here, placing a lamp if appropriate, and at other times looking at how the buildings fit in the landscape; if and how “architecture” and “architects” provide value depends heavily on the context.

“Debugging” sessions

Nynke was apparently thinking along similar lines as I was in Right here, Right now. She writes in Bridging by thought not what it seems?:

It all depends on what significance people assign to a particular “thought”. And whether or not we need/have an authoritative source to refer to, or work from our own related recollections of experiences which can be rather vague, or hard to distinguish well enough, and hard to explain, for becoming (re)useful in an other context.

We often call such recollections “internal babble” or “irrelevant”, in order to more easily ignore associations and messages bubbling up.

By the way, her entry links to beautiful snowflakes under the microscope. Like snowflakes, no two situations are exactly the same, but they can be very similar.

Nynke e-mailed me about the relevant use of a reaction. In case of an emergency, like seeing people in a burning car, careful deliberation is usually not the preferred choice of action, we can trust ourself / our memory telling us that rescuing the shocked people in the vehicle is the best choice.

Other situations require a response, and some thinking before doing. Nynke says “Stop the world… and check possible causes and effects: [...] thinking BEFORE intiating a change, THEN action, that is a response”
I was thinking of how to apply the Satir interaction model in situations where “people” (or me) give a reaction when a response would have been appropriate.

Usually the interaction model is drawn for one person. That kind of misses the point for me; an interaction involves at least one other person. When we prepared the first run of balancing act, I drew the interaction model for two persons:
satir interaction model, drawn for two persons
Seen through the lense of this model, what happens if I give a reaction, is that I speed through the meaning and significance stages, going straight to response. If the other person does the same a fight is the likely result. time out, photo of a basketball game by 'napoflickr'

“Stopping the world” is a way to break through this. Each person in the interaction can decide for him or herself to slow down. Take a time-out, ask yourself what you saw or heard, and if the situation allows, ask the other. Say “maybe we’re getting in over our head here” or “I need some time to think about this”, or “I’m puzzled”.

Dale Emery uses the interaction model as well. I like what he wrote in Untangling Communication :

By applying the same level of awareness and problem-solving skills that you use in catching problems in software, you will begin to notice the signs of trouble in communication just a little bit earlier. In many cases, that will be enough to trigger you to slow down, walk through the communication process, and get your communication back on the right track.

I’m having fun “debugging” sessions with someone. We share keys from recent events, seeing where we mis-interpreted each other. “What did you see?” “Oh?” “What did you make of that?” “Right… that is not what I intended…”.

“Debugging” sessions are a lot of fun. They help me generate more responses that generate the responses I desire. They do require a level of trust and openness, thatseems to be rare (according to what I see, and what I hear from others) .

When the required trust is not present, I have a debugging session with myself, or sometimes with a third person (e.g. a friend, coach or colleague, in my circles often rolled into one :) ).

I guess stopping myself in the moment or having a debugging session afterwards helps me create more trust and openness in situations that deserve it. And create more deserving situations over time.

Butter Flies, again

Nynke resurrected her butterfly bubbles blog. In true Nynke style, she started of with an appreciation :
butterlies are cool

Butterflies are smokin’ hot.

Later on, Nynke shows how she loves to evaporate clouds

I love clouds

And then she gives a systems thinking perspective on happiness:life is ending one minute at a time by repoort

Welcome back Nynke!

life is good comic by Repoort

(people sometimes ask me why I am self-hosting… Being able to provide a space for other people to be creative and seeing them fly is definitely an important factor).

Comics in this post are from the series “Happy Go Lucky” by Repoort.

Right here, Right now

I prefer to be fully present in the here and now, with the people around me. Nevertheless, I’m puzzling on something Jerry Weinberg wrote :

“There-then-them is in contrast to here-now-us, which are the problem-solving conditions expert consultants try to establish and maintain. When people are responding to something that happened somewhere else (there), or at some other time (then), or with some other people (them), you’re not going to have much luck dealing with problems.”

I disagree. Sometimes I can not prevent reacting on something based on what happened in the past. I used to be embarrassed about that, believing that reacting like that was irrelevant or inappropriate. I should have recognized a situational similarity in time, then assign appropriate meaning and significance to it, and only then respond.

However, more often than not, it turns out that there is a reason I’m reacting like that. Reflecting on it, and/or opening it up for dialogue with those around me often surfaces things I haven’t completely processed. Reflection and discussion enables me to raise awareneness of it, and eventually change my behaviour (If I want to).

Denying a likeness of a current situation to a past situation, you’re not going to have much luck dealing with problems.

how's your thumb, says one baby to the next (without talking)

Sessions to go around

I participated in (re)writing a bunch of discovery session and tutorial proposals for agile2006. That turned out to be interesting, as all but one of them got selected, amidst fairly stiff competition. We decided not to run the xp game – running too many sessions is bad for the quality of individual sessions, and there are similar sessions in the programme already.
As this conference is going to be large, we tried to let our sessions scale to larger audiences, amongst other things by having more co-hosts per session than normal. That leads to a web of sessions, where some sessions share almost the same set of hosts, but not quite. After acceptance, I had a hard time deciding how to give my best effort in running the sessions. I decided to take responsibility for running the sessions where I am first or second organizer, and support other sessions in a ‘best effort’ way, where I’ll do whatever I can based on time and energy that I have.
Participating in many proposals with many co-hosts is slightly confusing. But fun.

I’ll be co-hosting

  • The drawing carousel – a pair programming eXperience
  • Simple tools for communication – a Balancing Act
  • Systemsthinking workshop – using the Diagram Of Effects (DOE) to effectively change your work environment.

Together with Marc Evers, hopefully supported by (in various configurations, depending on the session and what suits our co-hosts in the schedule) Laurent Bossavit, Emmanuel Gaillot, Rachel Davies and Lynne Azpeitia.

I’ll be supporting in preparation and/or running (tool words is in the same slot as systems thinking unfortunately):

  • Tracer Bullets (an experiential session on feedback) by Rob Westgeest and Tjakko Kleinhuis
  • Tool Words, Weapon Words by Laurent Bossavit and Emmanuel Gaillot
  • Writing on the Walls (about the use of information radiators) by Laurent Bossavit and Emmanuel Gaillot

Writing on the Walls is new, Tracer Bullets revamped – I haven’t had the good fortune of attending it so far.

Reading energy

A new old friend of mine said “I’ve always enjoyed reading, but never enjoyed writing” I’m puzzling on that one, as she does seem to enjoy writing in chat windows. Let me write about reading that gave me energy: Continue reading ‘Reading energy’

(0)

It’s no coincidence.

The thing I like about the internet, is that it easily cures me from believing to be original. Through Nynke Fokma and Lynne Azpeitia I got this link to

What business can learn from open source and blogging by Paul Graham. I am resonating a lot on this one.

So these, I think, are the three big lessons open source and blogging have to teach business: (1) that people work harder on stuff they like, (2) that the standard office environment is very unproductive, and (3) that bottom-up often works better than top-down.

Ever since reading The Timeless Way of Building, I’ve been looking at many office environments with bewilderment. Usually, they’re not the right place to be creative. Even with all the values and practices of agile software development that can make it more predictable, It takes time to play and reflect to arrive at truly simple solutions. If I want to solve something, or ever write,

I’m usually better off going into the garden for a bit. How many offices do you know that have gardens?

At the end of the piece Paul Graham goes into startup culture (as most startups start out of home). When people ask me what it is like to run your own company, like I do, I usually say (with a smile) ‘don’t try this at home, kids’. But, as Paul Graham writes:

And as the example of open source and blogging suggests, you’ll enjoy it more, even if you fail. You’ll be working on your own thing, instead of going to some office and doing what you’re told. There may be more pain in your own company, but it won’t hurt as much.

I had some pain, it does hurt, but not as much. I ‘ve met people who paid far more ‘learning money’ than I did (so far). If something goes wrong, I’ve got only myself to blame, I can learn, and try again. Recently I find, that I am finding more and more the work I excel at and enjoy. As Lynne says: ‘live the life you imagine’.

I believe that the growing popularity of blogging, open source, wikipedia, Dilbert, agile (software development) and starting your own company is no coincidence. People are looking for better ways to live and work, and many are no longer waiting, like children, for their employer to make this happen.

Do I believe it is possible to achieve this inside companies as well? Yes, if you manage to change slowly, work with proven results, and keep playing the ‘professional’ games necessary to keep you in step with the rest of the company. Many agile teams enjoy more fun and productivity, and other ways of working and more respectful interactions are spreading. For most of us, it’s probably easier to try other ways on our own, or within the confines of a team (but watch out for being too succesful ;-) .

Some businesses can change from the inside, many business can change only if there is sufficient outside (e.g. market) pressure. Many more change into non-existance, because they are outcompeted. It’s no coincidence.