From time to time somebody asks me if I’d like to try something completely new or different. And though I’m not a very daring person, I say – yes. It was like that when I was seven and my mother asked me if I wanted to go to the music school and play some instrument, and then I devoted half of my life for it with the belief that it will last much, much longer. It was like that some time ago when I was asked by Paweł if instead of going to the programming conference, would I go to Hamburg for Lean Kanban Central Europe 2014? And I answered – guess what. And it was a good answer.
It would be impossible to cover all the thoughts I had the pleasure to listen to, since I’d have to write an entire essay about each session, but I’ll try to share at least a few of them.
first steps on new board
The journey started with a keynote presented by Mary Poppendieck with an overview of commonly raised topics in the agile world. So, she was talking about what makes a winning team. About how it looks in a military model and how it should work within the team. How it is important to have awareness of the overall situation, goals, timing, but also on the constraints of each level. About how reliability stems from mindfulness. And also that we should change from being a delivery organization into a problem solving one. A nice talk to start with.
And then came problems. And their beauty brought by Arne Roock. What is the problem? Arne presented a definition of the gap between the perceived and requested state which lead to the conclusion that to solve the problem we can either change our perceived state, our desired state or our perception.
In his talk Arne presented to us why, when a problem is encountered, we should avoid jumping to conclusions and rather stop for a bit and start asking ourselves “why?” and this is a very important question. Not only WHY something is wrong, but also WHY we want to fix it, WHY we failed in preventing a problem. And this is important if we want to be better in the future, not only using the same known solutions for the same known problems appearing over and over again. As a helpful tool to do this he briefly presented the idea of A3 thinking which was more deeply covered later by Claudio Perrone.
The following talk by Martin Jensen treated about culture as THE competitive advantage.
A combination of well understood structure and culture provides internal efficiency and external attractiveness. That’s why we all want to work in companies with a strong culture. Even if you were to copy structures, methods, rules from other companies, you can’t copy their culture, though. But what is culture? Slogans written on walls? Definitely not. It’s about feelings, about what people think when they arrive at work, symbols, about how people behave. But it is not easy, values have to be described and understood, even everyday behavior needs discipline.
After the break we enjoyed a great pecha kuchas session on which Paweł Brodziński, Chris Young, Markus Andrezak and Claudio Perrone shared their experience in very witty way and it was both knowledgeable and fun.
time for seasickness
And then came two brilliant talks which actually made me truly depressed because of how often we do fail in preventing our clients from hurting themselves. But the good thing is when you know that the client will ignore your questions and suggestions there are authorities which you can send them to:
No 1. Joshua Arnold – Value and Urgency: The power of quantifying the cost of delay.
In a time when everything is on demand, where every feature is a must, priorities start conflicting. And in this case, every week of delay in launching a project is causing lost of potential income we have to realise that it’s not only the product will start earning later, but in the longer perspective it won’t be able to reach its potential level at all and in the context of periodical products we may not fit the given period of time. It creates to the cost of delay which can be measured per week and nobody likes to watch income passing away. That’s why priorities are important, knowing values – basically measured in the users willingness to pay – and when to start something or when to stop.
Another thing are black swans, those features, there are not many of them, which may have the highest cost of delay. If you identify them, you may be able to make much better decisions in terms of value and urgency.
No 2. Troy Magennis – Risk Management and Forecasting.
Risk forecasting have several sources such as: work, dependencies, throughput. For all of them you need data, and that data comes from the people – a terrible system to manage. People are biased, even expert opinions have to be checked. But even if they bring not necessarily expected data don’t ever embarrass them, you’d destroy any chance of getting reliable data from them again.
Another thing are estimates. We – developers – usually don’t like them, they’re either too optimistic or not acceptable for the client. Knowing the past is very important, you can then make your forecasting more contextual. Even then estimation should be trained and practiced and it should express uncertainty, so instead of using point estimates try using ranged estimates. They are, by the way, much more honest.
The day was closed by Karl Scotland talking about kanban as a whole system which has its interventions and impacts, so we could look at it from very different perspectives. Within interventions we have studying customer needs, delays and feedback, sharing learning by visualizing it, stabilizing the process by wip limiting – for this, the definition of ready and done has to be clarified – and search, measure what may be improved and why. From the impact side – flow, potential and value are the ones, which come.
a brand new day
The next day came with a keynote by Henrik Kniberg and looking into the connection between problems and projects. Quite often people think that to start a successful project you need a good idea but it’s not what it should start from. It’s rather an unsolved problem, which has to be well understood. Then you can think about stakeholders and their needs, and simply iterate until mvp. Henrik was also talking about the distance between makers and users and how it is important to minimize it.
Than, starting from the point where a traditional hierarchy is a flow of blame in which we all are victims, Claudio Perrone showed us that as agile is focused on process and tools, we have to remember that those tools are FOR individuals. And as solving problems is a manager’s and programmer’s everyday life he described how the A3 thinking method may be helpful. It looks pretty simple, just take an A3 shit of paper and follow the exemplary schema – why do we consider something as a problem, what is the current and expected state, what possible steps we may take and what prevents us from doing them. Don’t forget to ask the 5 whys here, it will give you the chain of the facts. Then go to countermeasures and required steps, and check them so you can end with some conclusion about what to do next. Simple, isn’t it? Just remember, do it with a rubber and pencil, check often with somebody you can treat as a mentor, and share what you learnt, make it visible. So it’s not only about solving problems, it’s more about making problem solvers, since it’s not the matter of what we do but what we learn by doing this.
depth is coming
Want to hear about politics in a lean / agile environment? Be aware, Katherine Kirk is on her way.
Corporations encourage psychopathic behaviors on all levels which may lead to psychopathic leadership. As we know, a psychopath doesn’t know compassion, unfortunately normal people can turn it off too. It all may be seen in internal politics. And politics may be even increased by lean and agile. That’s where going from a static structure and hierarchy to a rotational one may help.
Also when using agile tools we have to remember that our approach will change the outcome. Moreover, we have to know that we are in a constant state of delusion, and we have to get rid of the “I know” attitude and simply accept it. What we can do is investigate reality by looking into many sources and notice that intentions are not necessarily coherent with outcomes which causes discrepancies. What’s more, we have to test our ideas, contemplate and seek vipassana insights.
So to cool down politics follow this strategy: take a big breath, equanimity, transform understanding into insights, practice compassion and be curious, patient, sustainable and have a bit of grit.
I’m not sure if the lack of questions was because it was so obvious for the audience or rather that they needed some time to see how deep it was.
captain, captain, may I lead?
After that experience I choose to listen to Esther Derby talking about leadership on all levels. Lets define a leader. Somebody who says “do what I want”? Nope. Somebody who inspires, uses charisma to encourage people? A bit closer but still not yet. How leadership is defined not only in this talk, is G. M. Weinberg’s definition as a process of creating an environment in which people become empowered. So when thinking about empowering people some things are important. Knowing all what’s and why’s both for the small and big picture, which translates into clarity, creating proper conditions since people want to do their work and organisation should simply support it, and remember about constraints so people know how and when they can act and what they can’t do. And if there is any bounded autonomy it should be articulated so people know how to move. So no matter on which level, steering, enabling or front line all these three: clarity, constraints and conditions have to be known and coherent in length and breadth. It will give transparency and trust. It’s not easy, it can’t be achieved fast, but it’s worth the effort.
In the next talk Liz Keogh took us on a journey through the metaphors we tend to use and how they affect our everyday work. We treat our activities as a substance, as something we can take from one desk to another, put something into it, like into a box, and then move it outside. These are very persuasive. We talk about code quality as if it was a tree which grew here, but what we mean is coding quality is where we would like to improve.
Another thing we do is breaking things into small pieces, and then to even smaller to make them go faster and faster, but after joining them back not necessarily we get the whole thing again. We are definitely more than the sum of our parts. It’s interactions which makes the whole. And interactions between people means relationships. Developers, testers, users should not be separated. They should be connected, they should interact. So, paraphrasing Liz, just think what would happen if instead of working FOR people we would start working WITH them?
ride the power, gambling man
And then, Marc Burgauer asked us: What’s the worst that can happen? He talked about trust, about how it is important, and how it is hard. If trusting yourself is the most neglected type of trust, how we can achieve it with others? A command and control attitude can bring only loyalty through fear and as a discharge of discomfort it leads to the blame flow. Trust is not a prerequisite, it’s an outcome. It comes from everyday commitments and transparency, from sharing your world and meanings. It’s also about failures. If you haven’t failed you haven’t tried hard enough – it’s one of the mottos. If you are not allowed to fail, how hard will you try?
Ride the power was another thing Mark talked about. It’s about the mindset you need, when you are attacked and it’s mainly about four things – re-expressing your position, listing points of agreement, checking what you learnt and presenting your view inside of shared context.
The whole conference was closed by Don Reinertsen’s keynote about variability and robustness. As an opposite to fragility we try to achieve robustness, both, passive and active with more feedback loops. With the latter we still have to remember, that some feedback loops may hide information, so checking more indicators than the primary one is very important. And don’t rely only on watching statistics, go and talk to devs. But this is not everything. We live in a stochastic world and in many cases variability is considered as something bad. By being robust we want to absorb variability. But what if, with more options, we start performing better than without, if more options gave us more outcomes? That’s the real anti-fragility. That’s why we should exploit opportunities, check options and bypass obstacles, simply – be a smart gambler.
back on the mainland
This was definitely a wonderful experience. I was not able to attend all the talks, you know, conflicting priorities. I hope they would be available on videos soon – I recommend you to check the conference page for this. And if you’re still not convinced, check #LKCE14 too.
Some people asked me if there was a sense for me – a developer – to attend such conference or if it means that I’ll start to be a manager now. As for me this knowledge is not only needed for managers, product owners, or CEO’s but for developers as well. We work closely with our clients to embody their idea of a product. We talk with them every single day. Often we intuitively know that what they want us to do is just so completely wrong. And only with our intuition, even experience, we are only devs. Why should one listen to us? That’s why having such a set of tools and knowledge is also important for us. Actually, that’s what I would teach kids at school.
So, I jumped into an unfamiliar boat and I’m really curious where this cruise will take me.