marc rohloff . com

Articles | Files | Down the Rabbit Hole Personal | Leading | .NET | Delphi

My Manifesto


Back in 2001, having spent a couple of months working in a government organization I put my observations and experiences together and came up with this manifesto. I later realized that someone had already done the same thing, although they are a little more famous for theirs!
Mine is rather unpolished and more a collection of unstructured thoughts; it is still a work in progress...

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -


I used to think I was a minimalist, now I've changed my mind and decided I'm a maximalist. I believe that people are capable of so much more than we, or even they, believe. Therefore I think we need to create a minimal framework to support, encourage and guide people, while not restraining them in any way.
(OK, so maybe I believe in a minimum of things to get in the way. I've always liked the natural simplicity of Japanese houses and gardens and the way it enhances the beauty around them.)

To put it another way we need to minimise the things that hinder and do everything possible to encourage and grow those that build and activate.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

So what are the activators that we want to encourage?

* Great people are our greatest asset. Encourage them to create and to grow, give them responsibility.

* Interactions between people are activators, both by enhancing creativity and because of the satisfaction it brings of itself.

* Life and work should be fun, enjoyable and satisfying

What are the amplifiers?

* Space and freedom: to reflect, to grow, to create

* Safety: remove the fear of making mistakes

* Simplicity: There is enough to hinder without us creating more

* Small groups of bright people

* Open work spaces: Encourage communication and innovation

* Inspiring Leadership: There is so much I have to learn here

And what are the things that hinder?

* Rigid structure, especially when it is an end in itself.

* Control style management

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

So how should we develop?

I think that a development framework should do what people are not good at but not impede their creativity which is what we desperately need.
(I prefer not to use the expression ‘process’ or ‘methodology’ which tends to imply something rigid and inflexible but rather use ‘framework’ or ‘scaffolding’: something lightweight which we can build on and supports what we do. It is also temporary enough to be removed when it no longer serves its purpose.)

I think the framework should provide in these areas:


* Strong team players

* Self management

* People who want to learn and grow

* Openness and Integrity

* Quality: in product, code and designs

* Reflection: Why are we doing it, what are we doing, what can we do better?


*Extremely Lightweight methodologies (like FDD, Crystal or XP)
(Don't use a 400 person methodology for a 4 person project)

* Mentoring / Apprenticeship through
- Pair Programming
- Architecture Reviews
- Proximity/Team seating

* Communication
Using tools that support (Groupware, VCS, Wikis)


* Use Lightweight tools

* Keep documentation light
We only need to make sure that...
a) We know what to do
b) We have completed everything
c) Someone can take over our job

* Progress tracking and Estimation
(I like the simplicity of FDD for this)

* Encouraging management

* Open Communication - keep people informed

* A Stimulating Environment

Some important principles which seem to work well

* Use rules of thumb

* Don’t waste time trying to be accurate because you can't

* Simplicity in everything (minimalism)

* Open-Communication seems to be critical
Between developers, with users and with management)

* Balance flexibility of software with cost to implement

* Let team players decide what is appropriate

* User on site

* Regular releases

* The way we work needs to be fun and stimulating

* Leadership shouldn’t be control

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

 (Which I couldn't think of a better way to structure yet)

- Requirements change; in fact nobody even knows what they are. We need to build relationships between the customer and developers; not get an upfront spec and see them when we're finished.

- Creativity seems to be amplified when small groups work together (i.e. Interaction is important).

- Processes which try and control too much and try to produce ‘perfect’ results stifle the exact freedom of thought, expression and action which are required to be creative and produce innovative results.

- We need space, time and tranquillity: to think, to create and to grow. And we need freedom.

- Trying to automate too much leads to a lower reliance on creativity and relationships. Again these are exactly the things that we need to treasure as they are our most valuable assets.

- People appear to avoid personal contact. Again I don’t know why since it is so central to our existence. Unfortunately management tools like SDO give people an excuse not to communicate. Maybe we shouldn't give them these tools since communication is far more valuable than the ‘control’ these tools offer.

- There is currently a tendency to encourage extreme specialization, both when studying and working. However I think this will change as people realise that having a broader overview of things will also bring greater insights and opportunities. With this will come a change in the perception that people who have knowledge in different areas can also have in depth knowledge. i.e. It is possible to be a generalised specialist (or should that be a specialised generalist?).

- Conway’s law states that the structure of a system will mirror the structure of the team that built it. What do we want our systems to look like? Our teams need to communicate and be loosely organised.

- People seem to work better with graphical tools. Unfortunately computers seem to prefer text based tools. There is a lot that needs to be done here to improve the way we work.

- Although I believe that anyone is capable of doing much more than they do, there are way too many people that don't. I have discovered that I cannot change these people. Even though they may agree that they are capable of more they remain mediocre. It seems that you cannot create people that innovate and that strive to be more, you have to find people that are already like this.

- Too many leaders seem to be chosen for their 'attitude', not because they are good leaders. To be a CEO it seems you need to be 3 things: Male, Big and Loud (I only score 1 out of 3 here). We need leaders who inspire, encourage and make us want to grow.

About | Contact - ©2005 Marc Rohloff