Here, some thoughts raised by yesterday’s Agile Alliance Zoom thing.
First of all, thanks to April Jefferson for her work before and during the session. Great moderation, keeping us on track, ever so gently. And thanks to the other panelists, Antony Marcano, Cat Swetel, and Stacey Vetzal. Their thoughts and contributions were generally deeper from mine, and different in perspective. I felt that I was learning a lot.
I think there was a general theme that was trying to emerge, around the fact that all of us had experienced the joy of technical work, that we see that too often people have not found that joy, and we want to help them to do so.
By nature and nurture, especially the nurture of the past couple of Years Of Plague, I tend to work alone, sitting here at my computers, writing my thoughts and sending them out into the world. It has been a long time since I worked intimately with a team, and all three of the other panelists refreshed my recollection of the joy there is in being part of a culture of learning, as one of the panelists put it1.
I think it was Stacey who2 coined the phrase “connect with people emotionally”. Often, programmers like me try to keep things on a logical level, but people are not really motivated by logic, they’re motivated by feelings, whether they know it or now. As such, we need to recognize that when we’re trying to make and share some discovery. a logical argument is probably not our strongest move. If we can help people experience the idea, experience how it makes them feel, we’re more likely to open their hearts and minds to their benefit, and our own.
We all agreed that it would be ideal if “management”, whoever they are, truly granted permission to the team to self-organize and to make the decisions that they’re best equipped to make about the product, and the process. We also observed that all too often, the would-be permission giver is not aware of the need, or has concerns of their own that stand in the way of granting more freedom to the team. When we’re concerned about how things are going, we often try to retain control, even when it may not be the best thing to do.
There is an old saying3 to the effect that it’s easier to get forgiveness than it is to get permission. This is particularly true when the thing you choose to do has good results, and of course while I’d never recommend lying, things go more smoothly when they can’t even tell you’re doing the thing4.
Perhaps we need a new motto: Don’t ask, just do!
I think all the panelists made it clear at one point or another that a software team’s real work is learning. They need to learn what the product is, how to program it, how to work within all the constraints, how to work with each other, …, the list goes on.
Learning can be fun. There is real joy in discovering something new and juicy, whether it’s a clearer understanding of a requirement, or a nicer way of arranging the code, or a really nifty key sequence in the editor5. If we can get our team to share the joy of their little discoveries, the work will go better and we’ll be happier and healthier.
Someone who joined the fishbowl pointed out, quite correctly, that we were all talking about a marketing problem, how do we get these ideas to be understood and accepted by the people out there who need them. They gave the examples of Scrum and SAFe, which are clearly popular due to marketing.
I think I spoke for most of us, and I know that I spoke for me when I said “I didn’t get into programming to do marketing”, and then went on to acknowledge the truth of the assertion. We need to make more noise, and if we could find a way to have the noise be about a common set of ideas, it would be ideal.
It would be far better for us all to shout “Breakfast Cereal”, than for different ones of us to be shouting “Grape Nuts” and “Corn Flakes” and “Cheerios” and “Cinnamon Toast Crunch” and “Lucky Charms”6. Is there some banner we could all fly? Would that be a good thing? Maybe?
Events of the last decade have damaged our common understanding that we are all people, that we’re all together on this spaceship we ride, that we all have the same problems, and that if we take a generative7 view rather than an extractive one, there’s more than enough goodness for everyone.
I think there are at least two things we can do. First, we can ourselves try to treat everyone with the same humanity with which we’d like to be treated–indeed to treat them the way they themselves would like to be treated. Second, perhaps we can find ways to express, still in a humane fashion, that inhumane treatment is not acceptable. That second is a difficult path to walk, but once in a while maybe we can get someone to reflect a bit and change a bit.
Agile isn’t the point.
Despite that the panel was under the Agile Alliance flag, and all the panelists are somewhat invested in “Agile”, we seemed to agree that the point isn’t to be Agile, nor to advance “Agile”. Antony remarked that a methodology is someone else’s solution to some other problem from yours at some other time from now. There may be good ideas in there, but it’s nearly certain that the thing won’t fit you without alteration. The ideas are a means to some desirable ends. Most mechanically, they are a means to enable people to come together to build a software product in an effective fashion.
More importantly, the ideas are a means to creating a space in our work to be human, to enjoy the work and each other, and to prosper as people. It turns out that that will work well for the business, so if it is subversive, it’s subversive in a positive way. Let’s learn to learn and work together,
One interesting little rant came from Cat, regarding the popular notion that “Agile is a Mindset”. I can’t do the notion justice here, but Cat, and all of us, have the mindset that we have, and telling us that we have to change our mindset is at the best threatening, and–̛I think–rather arrogant.
Now if I had the chance to sit down with Cat and discuss this idea, I think I’d remind her that there are ideas that she has, or that I have, such that we wish others had them. So, in a sense, we do wish to change the mindsets of others, or at least to offer them these good things that we have in our heads8.
I think Cat would nod at that, and that we’d move on to the question of how to help people who might benefit from what we have to offer. I think we’d agree that it seems most often to be done one person, and one tiny step, at a time. If we did agree, I would then nod sagely and say something to the effect that that’s what Jerry and I mean by strawberries. Cat would probably shake her head sorrowfully and remember an urgent appointment elsewhere.
I still remember that when all this stuff got rolling, I thought that surely it would become the best known way to build software, and that it would sweep the world. That has turned out not to be the case. There has been a kind of success, especially with Scrum, whose ideas are good ones and which can do some good, but by and large, not much has changed overall.
But there are pockets of Joy, all over the world, so we’ve got that going for us. Wouter commented to that effect, saying that when he worked with teams, they often we seeking to do better and find ways to do so. And of course, he’s right, and all of us who consult and train do find those teams. Sadly, there are all the folks who do not call Wouter, and don’t even know that they should.
How can we reach those people? One at a time. Maybe sometimes a few at a time.
How can we help them find joy and humanity? One small step at a time.
Many More Much Smaller Steps. GeePaw Hill has it right.
Thanks to April and my co-panelists. So much to think about.
I scribbled notes on cards during the session. I should have put down the initials of the individual who came up with particularly apt strawberries like “culture of learning”. My bad. ↩
If you’re reading this and you recognize a misattribution, let me know. I’ll edit the article. I’m doing my best over here … ↩
Refactoring is a super example. If we refactor a little bit all the time, as we move along, things go better the effort pays off, and no one can see the difference between refactoring and other kinds of programming. ↩
Multiple cursors FTW. ↩
Happy St Patrick’s Day. ↩
I’m sure this one is due to Cat. ↩
Let’s not debate here and now whether there are ideas, and whether they’re in our heads. I think you know what I mean by that metaphor. ↩