Working for free, refusing to go on holiday – the future of software development!!

Tomorrow I’m meeting up with 25 students from Chalmers University. Their peers have taken off for Easter holidays, but my group has instead paid a $100 fee to remain in school for two more days. Myself, I will be working two full days without any compensation.

Let me tell you about the grand plan behind it all:

My mission for the last four years has been to try to be of assistance to organizations that are moving forward, applying Scrum/lean/agile, creating new great places to work and producing amazing products. As much as I enjoy being part of this, it has its downs for sure. Changing organizations is not for the weak of heart. On the less great days I do get frustrated by the painful slowness of adoption and by the inevitable setbacks of it all.

So, let me run this thought by you: It is a common belief that it takes 10 000 hours to be an expert in something. A lot of the people I meet have put in this time, and more, and are experts in traditional software development, project management and line management. How many hours does it take for experts like these to change old habits and acquire new ones?

Wouldn’t it just be easier to work this issue at the root, starting with newly trained students? So much easier than trying to assist experts in questioning old habits. At least I think it would. We’ll soon see 😉

So, this is what will bring me to Chalmers University for two days of unpaid work tomorrow. We will be doing a “Pay it Forward” two day “Professional Scrum Foundations” course. The course is highly focused on getting participants to experience self-organization and the soul of well-functioning Scrum/agile. After the course the students will be able to assess and demonstrate their understanding by taking the “Professional Scrum Master I”, PSMI, assessment created by Ken Schwaber, creator of Scrum.

When these people will hit the workplace they will have a different view on things and they will be another force working from within. Joining us in our mission of improving the profession of software development!

In this quest I’m joining my Scrum.org colleague Ralph Jocham. Ralph has already gotten started and we have set as a first goal to train 1000 students in Scrum(!). Read more about the “pay it forward” scrum training and “1000 student challenge” at his website!

Btw, arrangements were made by student Viktor Nyblom, facilities for the course are provided by Chalmers University, courseware is provided by Scrum.org and training is provided by myself/Cedur AB. Nobody charges anything for this. The reason we charge students $100 fee is mainly to get people signed up that will actually show up. The fees will be used to cover materials used and the cost of the PSM I assessment included. (full price of course is about $2000/person). Any surplus after that will be deposited at Kiva.org to be used for micro-loans. Trying to assist others to sort out their own problems rather to sort it out for them, just as Scrum!

If your university is interested in doing something like this, get in touch! We still have have 942 students to go…

– Henrik

Don’t send people to my Scrum Master classes

The other day a manager called me and asked if I would recommend sending one of his people to one of my Professional Scrum Master classes. I told him no.

Actually I asked him a few questions about their situation and their goals first, and then I told him no. Not that it would be a bad idea, but for a company like theirs, starting out exploring agile it would not be my first recommendation.

A two day scrum/agile class for one or two persons per team is a strategy a lot of companies have tried for many years now. Thus, we know a lot about the type of results that this strategy gets you. It usually results in some improvements, and people are generally happy, but most things in these companies are exactly like they were before scrum/agile. Thus, results are also pretty much the same. More troubling perhaps, initial improvements in these companies often fade away with time as people driving the initial change move on.

The last years, a few companies have noticed this and have moved on to get better results with other strategies. Here are some ideas on tactics that could be included in a second generation agile improvement strategy:

 

  • Start by training your complete team together, including all managers, developers and other stakeholders. Why? To create a common set of experiences and enable discussion. Remember, people mostly care about their own ideas. Common training makes it possible for everyone to have an opinion and to contribute to the discussion. That way it will be everyone’s ideas and sustainable change and continuous improvement is enabled.
  • Get expert coaching during a startup period. Even if you get the very best training you can find, It will probably just be a few days. Most people will find it valuable to get some assistance when returning to work and new ideas collide with years of habits and experiences.
  • Work on increasing the role-based skill set on the team. For Scrum Masters and Product Owners, this could be the time for specialized courses for their role, like the Professional Scrum Master/Product Owner I offer. For other roles this means other things.

 

The third generation change strategies recognize that a broader effort is needed to avoid having changes fade away after a few years. We need to deal with the whole company to make sure all its pieces are aligned. I’ll get back to that later. If you can’t wait, pick up “Leading Change” by John Kotter and/or “The Enterprise and Scrum” by Ken Schwaber.

So, to summarize, Don’t let me scare you away;-) I actually really appreciate the opportunity to work with motivated professionals in my Professional Scrum classes. Individuals that I had the opportunity to watch have also been doing very well at work after passing through our latest training and assessments. My point is that I’m also happy to see that more and more organizations are realizing that individual training for a single role is just one piece of the big puzzle that needs to come together to enable sustainable improvements by applying the ideas from Scrum and agile.

What type of strategy is your organization using? What are the results?

– Henrik

Cake-mix and improving life at work

In the early 1950’s, cake mix was introduced in the U.S. Take some mix, add water, and put it in the oven. In ten minutes you had a homemade cake. Great idea, right?

It wasn’t. Really bad idea actually. Huge failure!

Until one of the vendors figured out what the problem was, took action accordingly and left their competition behind in the dust, wondering what happened.

So what happened, and why should you as a software development professional care about that?

What they figured out was that the original mixes made it too easy. Housewives of that time took great pride in their occupation. Clearly, just adding water would simply just not qualify as baking a homemade cake.

The solution was to have the housewives add a fresh egg to the mix. Fiddling around with an egg was messy enough that the housewives now felt like they contributed to the baking. Now this was something that they could serve as homemade!

And it works the same way with ideas! If you have some great improvement idea you would like to promote, you need to make sure that everyone affected by your idea will have the chance to contribute something to the mix! Then it will be their idea also, not only yours.

So, if you have worked out a brilliant solution to some problem, don’t tell your co-workers! Instead, ask everyone involved to join you, working on solving the problem. Carefully facilitate the meeting so that everyone gets to contribute their thoughts, and see what the group comes up with. (I’ll be writing more about how to do that in another blog shortly.)

But, what if the group discussion results in a solution that is not as good as one you have already worked out? Well, one advantage is that the group solution may actually get implemented. And that’s a start! In contrast, the chance that a prepackaged solution, offered by you, is sustainably implemented is very close to 0.

Also, often when I do this, I’m surprised to see that the solution crafted by the group is actually better than mine…but maybe that’s just me 😉

Wait! Someone says, maybe it was that adding the egg to the mix actually did make the cake taste better? Well, I have further proof for you skeptics, and I might do another blog on that later. But the only way to truly learn something is to try it out yourself, so next time your about to sell some new solution to your team, just consider that this may be true:

People do not like other people’s ideas, they like their own ideas!

Change your tactics accordingly and just see what happens…

-Henrik

Credit to Gerald Weinberg, in whose fine book “The Secrets of Consulting” I first learnt about this idea.

Minimum skills for running a country, a company, a team?

On my way to work today I heard that the Swedish government demands that meteorologists increase the precision of their weather forecasts to 85%. Have they heard about the butterfly effect? Are knowledge about complexity theory and chaotic systems optional for running a country? One would hope not! How about for running a business? A department? A team? Managing a product line? A development project?

Right after that a reporter confronted an analyst: How could you be so wrong to predict +20% for the stock market? It is now -20%!

Predictability makes us feel all safe and warm, but it is also an illusion that makes us badly equipped to deal with the complexity and chaos of reality.

Groups, organizations, countries, development projects and the weather are complex/chaotic systems. Minimal changes in any of a vast number of factors can cause huge and completely unexpected, unpredictable change. It takes courage to get out of your comfort zone and accept this. When you do, you can start really applying Scrum/agile.

Step one is to get transparency in place. When working in complex/chaotic environments, we cannot accurately predict the future. What we can do is to make sure we can assess the reality of today. What is the current true situation? Sunny? Raining? If you don’t have any windows, you may need to fix this first to enable transparency. When we have accurate information, we can make optimal decisions. Lets go to the beach! Lets do that picnic in the living room instead!

For software development, transparency means starting to do one thing at a time and getting transparent about how many features have we really finished. I mean really finished, with no work remaining. Ready to deliver, approved by customers, no work (“bugfixes”) postponed for the future. How many features, and at what rate are we completing them? Why focus on finished features? We do that to get better accuracy. Before we start developing a feature, its status is 0% done. When it is finished it is 100% done. In between those states, our guesses about work remaining is not that accurate.

When you get transparency in place you can start optimizing your results based on reality instead of giving in to your basic needs of feeling that the world is predictable. Product managers will actually have useful data to base their strategies on. Teams will be able to focus on stepwise implementations of continuously optimized and evolving product visions and roadmaps. Ironically, giving up the wish for predictability will give you greater control and produce results that exceed everyone’s expectations!

It is well known how to do this for software based development efforts by applying Scrum and other agile methods. That does not mean it is easy. And it takes courage. 85% of all organizations report that they are using elements of agile techniques, but very few have actually done what I talked about above. That means they have not addressed the main issue. It takes courage…

– Henrik

Scrum Skills Series, “Retrospectives, part I”

For a while, I have been thinking about writing a series of papers with hands-on advice on how to use Scrum. Note that I don’t claim to know exactly what your environment looks like and how you should best make use of Scrum, only you can figure that out.

No, the idea with the paper’s is to share collection of techniques that I have found to work well. If you find them interesting, you can try them out while you are experimenting to get to a way of working that best fits your current situation.

The format of the papers has been choosen to be somewhere inbetween a blog-post and a book. I will try to make them small enough so that many people will find time to read them, yet long enough to contain some useful information.

So, lets see how it works out! Today I posted the first paper: “Retrospectives, Part I – Getting Started”

I hope the paper will be useful both for newly started teams and for existing teams that are interested in improving their retrospectives.

If enough people are interested, I have a series of papers planned out covering various aspects of starting up Scrum teams and how to keep finding improvements.

The paper can be downloaded from here

So, let me know what you think!

Scrum, getting lost and asking for help

Once I got lost driving to the airport and kept driving for so long before asking for directions so that I missed my flight home…

With people in nothern Europe returning from their vacations I have two questions for all of you that are using daily standup meetings in your teams:

1. How long were you driving this vacation before admitting being lost and asking someone for directions?

2. Did anybody report an impediment being in their way at your daily Scrum this morning? (This is question 3 in a standard daily Scrum meeting)

I recently read an article by Yves Hanoulle where he comments on how hard it is for most of us to ask for help. Either we don’t want to bother others or we want to be able to work things out by ourselves. And it may take a while before we realize that we might need help.

Yves’ advice is to change the third question in the standup meeting to “where do you need help?”. This sounds like a great idea.

I think I would like to try a variation and change it to “With what could someone best assist you?”. If you do that everyone has to think of something, and you cannot routinely just say “all is fine, no help is needed”

Try it! I know I will!

Passed Certified Professional Scrum Master II

Got the news today that Ken Schwaber had graded my responses to the essay style questions and that I passed the Professional Scrum Master II exam! So far only about a dozen people in the world have passed the level II certification exam and I’m the only person in Sweden it seems!

I have worked in agile teams for more than ten years now and as a full time agile coach for several years, so why did I bother to take this exam?

For one thing, I thought it would be a nice challenge! I find that trying to figure out the answer to tough questions always deepens my understanding. In fact a lot of what I learn, is from people asking me questions. So, I thought it would be interesting to work through some questions considered important by the co-founder of Scrum, Ken Schwaber.

Well…boy did I get what I asked for! Almost needed to use to full two hours to complete the test and some of the questions were really tough! I passed with a 95% score though. I misread one of the questions and I’m not sure that I agree in a few cases where my answer was rejected, so I’m quite happy with that!

Besides the challenge, I took the test just to check it out, and I was very pleased with what I saw. Until now ScrumMaster certifications in the Scrum community have been handed out without the person being certified having to do anything except to stay in a room for two days. I think the new written ScrumMaster assessments from Scrum.org are a welcome change to that! A lot of people, like me, will get more motivated to grasp the subject a bit more thoroughly before taking the test and that will be a good thing! Especially in the case of the level II assessment, where a lot of questions are in essay style, I also think that the assessment result can be an indicator of knowledge.

Another thing that Scrum.org is doing is widening the spectrum of training offered. In addition to ScrumMaster skills, you can now also get training in skills needed as a developer on agile teams. Other types of skills like facilitation and team skills are also mentioned as possible candidates for Scrum.org offerings if I remember correctly. This addresses a main problem in real life Scrum implementations today. People may have a basic understanding of Scrum, but they have not yet experienced what types of issues that can be resolved by adding technical practices for example from eXtreme Programming, XP.

Nothing has affected the spreadin of agile so much as the strength of the Scrum brand. As unfair this may seem to the other fine ideas in agile this is a fact. Hopefully the new Scrum.org organization with its fresh ideas will now contribute to getting the level of agile actually practiced in real developments teams to a higher level.