Posts

Taking Breaks in a Disciplined Way

Image
I worked with a team where everyone was trying to do pair-programming, but it was too hard for them. I asked what made it so hard, and they told me it was simply so exhausting. They were slumping in their seats by 10:30 in the morning, and by mid-afternoon, their productivity had plummeted. I looked around the room to see if everyone had the same experience. They all nodded their heads. This was the big problem that was plaguing them. I asked them how they were doing the pairing. They were forming up in pairs, and working all morning straight through without break. They went to lunch, and after lunch rejoined their partner and worked until quitting time. They really were sticking with the pairing, and I had to admire their dedication. They were working so hard to try to build great software and working so hard at pairing that I was deeply touched. But here is the problem, too.  They were working too hard at it to be able to do it well. Biological Beings We are bio...

Why TDD?

Why do we care if people call what they're doing TDD or BDD or why do we care if they actually do it? Saying It When people mislabel what they’re doing and refer to it as “BDD” or “TDD” or “Scrum” or “Agile” when it isn't, it screws up all the conversations that follow until we manage to unravel that they’re really just doing automated testing, or iterations, or what-have-you. Clarity in a conversation has the same value as clarity in code, and maybe more so. Someone told me that they were doing TDD, and we were well into the conversation before I realized that everything I had said for several minutes had been totally misconstrued. What they thought was TDD was “holding a testing sprint before release” So, the value in crisp terminology is improved communication. What is the value proposition for misusing terms? I guess some people — even in the agile world — don’t know that TDD and BDD are processes, not artifacts or tools; and that neither is just another ...

The 5 Ts

When I'm talking to Agile teams, we often talk about the role of management: whether it exists, and if so what it is. I always fall back to the principles of the agile manifesto : Business people and developers must work together daily throughout the project. Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done. Of course, there is more to it than that in an organization. If we were, as some suggest, to get rid of the managers someone would have to assume the duties that managers actually fill in organizations. It's possible via holocracy and sociocracy to do such a thing, but what would it mean? I like managers.  I love leaders, I have some issue sometimes with bosses, but I like managers. I like having them. I have enjoyed being one. I even like administrators. In my mind, managers are people who are trusted to care for, spend, and attend to certain aspects of the work which I call t...

Can We Process Our Hurts Without Going To Categories?

It Begins As A Reaction People who are hurt and angry sometimes give in to two unproductive natural urges: Hurt the other back so they'll think twice next time Disconnect oneself from the other to build distance emotionally  Maybe it's these two urges together that drive people to go to categories instead of keeping the context of an interpersonal struggle between two people. It leads to using pejoratives related to the other's race, gender, age, sexuality, religion, etc, probably because these are known sore points, probably because they are shocking (and so speak to pain), and probably because they also leave the other categorized as 'less than'. It satisfies both urges. We don't have to give in to those twin urges.  Most of us have given in at some point in our past.  When I look back far enough into my past I can dredge up an example or two. I would like to make excuses, but I know it was ignorance and willfulness and that I knew it was...

A VERY brief note on certification..

I'm well-known for my distaste of certifications for software developers, trainers, and coaches. What seems to be less-well-known is the reasoning behind that. GETTING certifications is not the big problem. I do not seek or accept certifications, but it's not because owning them is evil.  Yes, a certification is a proxy for a reputation.  Yes, I value reputation greatly and certification almost not at all. No, it's not because the certifications are too easy to acquire.  No, having a body I trust more doing the certification would not help. No, I don't want to certify people or back a certification. No, I'm not jealous because they're making a lot of money. No, I am absolutely not against education in any way, shape, or form.  Vendor Distraction My problem is that once you become a certifying body then certifying more people becomes an important part of the revenue stream. You want to do so profitably so certifying more trainers to sell more ...

There is no such thing as a scrum development team....

Yeah, I know that's a heck of a clickbait title, but it's also the thesis of this blog post. According to the Scrum Guide (2016) : The Development Team consists of professionals who do the work of delivering a potentially releasable Increment of “Done” product at the end of each Sprint. Only members of the Development Team create the Increment. Development Teams are structured and empowered by the organization to organize and manage their own work. The resulting synergy optimizes the Development Team’s overall efficiency and effectiveness. Development Teams have the following characteristics: They are self-organizing. No one (not even the Scrum Master) tells the Development Team how to turn Product Backlog into Increments of potentially releasable functionality; Development Teams are cross-functional, with all of the skills as a team necessary to create a product Increment; Scrum recognizes no titles for Development Team members other than Developer, regardless...

Agile Training Roller Coaster

Image
A long time ago, I was in a company that (like my current company) was known for training and coaching agile teams. Some of our customers were continually asking us if we could double the class size so more people could sit in. Others were asking us to deliver the same content in half the time. Some were asking for both. Some didn't stop at "double" or "half." As we discussed more and more people getting less and less exposure to the deep ideas behind Agile methods (and XP technical practices in particular) my imagination got the best of me and I giggled. I was imaging a line of people on some kind of a conveyance, being carried past inspirational posters with agile slogans and images on them. Maybe something colorful like this (one of my favorites) Modern Agile wheel: Maybe something particularly clever and memorable from our Industrial Logic collection: Maybe like this one from acm-software : I initially thought of it as a moving sid...