Google Analytics

Thursday, February 20, 2020

Why You Shouldn't Point Tech Debt, Take 2

I want to expand on not pointing technical debt stories. As I finished the last blog post, I realized that I had made the presumption that teams should only assign story points to stories based on business value. Then I proceeded to basically lay out the argument for why a team should (or in some cases should not) pay down their technical debt, kind of skirting the entire question of what not assign points in the first place. A classic case of begging the question: We only point things that are valuable because they are things that are valuable. If you already have bought into that statement, you wouldn't be here asking the question of whether to point tech. debt or not.
So now I want to back the premise that a team should only point work that is of value to the business. One of the developers I support is a fan of both metaphors and the NBA, so I would like to present my argument in these terms: When you watch a basketball game rebounds, assists, steals, and turnovers are all very important to the teams. However, at the end of forty minutes, the one stat that matters is how many points each team scored. Just like having a lot of turnovers will hurt a team's chances to win, technical debt is going to drag down your development's ability to deliver new features. In the end, however, the business runs on the value of the features the team delivers.
I mentioned previously that a team may look to distinguish between technical debt points and business value and still somehow combine those to estimate output. I don't believe that this is really an apples-to-apples comparison, however. Some technical debt MUST be addressed and some subset MUST be addressed IMMEDIATELY (particularly if bugs and incidents fall into that technical debt bucket). For example, our organization recently moved its package management from a Nexus repository to Artifactory. Every development team had to change projects to point to Artifactory. No value was delivered to the customer, but this had to be done by a set deadline else project build pipelines would cease to work. We also have contractual obligations for SOC 2 and PCI compliance driven by hard deadlines. Managing API keys and updating network diagrams does not deliver value to our customers but must be done and must be done by particular dates. If that date is a couple years off the tradeoff with choosing to bring in business value may be relatively small. That cost increases, however, as the deadline approaches.
Another thing that makes estimations of technical debt unequal to estimating business value is that technical debt, in my opinion, is generally more difficult to accurately estimate. I say this because if it were easy to accurately assess the risk, effort, and value of paying down debt that teams would actively engage it rather than accumulating it. I believe technical debt accumulates, in most cases, precisely because we find it difficult to assess risk, effort and payoff. "If it were easy, we'd have done it." I know me saying this is my own opinion based on experience and that in some cases teams know exactly the risk and effort and the value simply isn't worth addressing the debt. That said, this is one more reason why, in my experience, I do not believe teams should point technical debt. To extend my metaphor further - a made basket in basketball is worth a set number of points: one for a free throw, two for a standard field goal, and three for those beyond the three point line. A steal, like paying off technical debt, may result in points, and it may not. A coach can't tell his team, "If you get this many steals we are sure to win the game." He can look Jimmy Chitwood in the eye though and say, "Jimmy, if you come off the picket fence and make this shot, we win the game." (That isn't exactly how it happens in "Hoosiers" and I realize I've taken this too far, but I can't get this far into a basketball metaphor and not bring up one of the greatest sports films ever made.)
A final reason why I do not see technical debt and business value estimates to be equivalent is that a team can timebox paying down technical debt. For user stories delivering business value there is some discrete level of effort involved in delivering that value. Generally a user story that is 80% done will deliver 0% of its value. (This in itself is probably another blog post regarding the INVEST model for writing user stories.) Paying down technical debt can be timeboxed, though. I could devote half of a sprint to moving my package management to Artifactory. That's not the same as being able to say how much I am delivering, only the time invested. Perhaps I will get two projects done, perhaps it will be ten - I know how long it will take and how much it is affecting the team's velocity in delivering business value, but not how much it will ultimately benefit the team internally. Still, it's perfectly fine to timebox addressing tech debt, whereas it generally is not with user stories.
Ultimately the business is requesting an estimate on when valuable code will be delivered to production. This is kept simple if your user point estimates correspond to business value delivered and technical debt is not pointed. It becomes an exercise in Sabremetrics if you insist on pointing technical debt as you do business value.

Why You Shouldn't Point Tech Debt

Let's suppose we have a team that does 20 points of work per sprint, but a tenth of that work (2 points) would wind up as technical debt. So, if our hypothetical team wanted to accumulate no debt, they could deliver 18 points of business value, paying off the two points of potential debt, just like paying off your credit card in full at the end of each month.
We could also have our hypothetical team deliver the full sprint of work toward business value and choose to carry the debt into the next sprint. (Of course, we will ultimately fall somewhere between the two hypotheticals, paying down debt as the opportunity arises, carrying it when the friction it causes is relatively less than the business value being delivered. Humor me, though.) So with the first sprint we deliver 20 points and carry two points of debt into the next sprint. The thing we know about debt is that it comes with a price, interest charges! For the sake of argument, let's say our team is paying Lucky Luciano type rates on their interest so that every two points of debt costs us a point of work each sprint due to the friction it causes.
(Tech debt is like sand in the gears of your development process. It will cause things to move slower and slower until development grinds to a halt completely. Of course it works slowly over time, and the interest you pay on it is much lower than 50% per sprint. However, a system of any size that has been around for any length of time has accumulated much more than a tenth of a sprint's worth of debt. Your dev. team could probably work a couple months right now on nothing but technical debt.)
But back to our hypothetical --
So now, in the second sprint, our team can accomplish 19 points of value and accumulate two more points of debt. In the third sprint they are going to do 18 points, just as if they had been paying the debt with each sprint, but now they are six points worth of debt. Of course, in the fourth sprint the debt has caught up on our team: They begin doing less as if they had been paying it off with each sprint, and it will spiral down from there.
When this becomes a big deal is when the business comes to the team and says they would like to add 90 more points to the system and wants the team to estimate how long that work will take. In the first scenario the team can relatively confidently say the work will take exactly five sprints. (Amazing how that worked out to be exactly divisible by 18!) In the second scenario the estimate would depend on where the team was with their debt. A completely greenfield solution would take five sprints, yes, with an accumulated debt of about another half a sprint. If the team couldn't start greenfield, though, it could be six, seven, eight... sprints. While in the first scenario, it would be five sprints regardless of what point the team began developing.
So comparing the team to itself in the two separate scenarios (because we'd never compare velocity of different teams as apples-to-apples, right?), it is not accurate nor fair to say they are delivering the same amount of value in both cases. With an effort lasting fewer than five sprints they will deliver more in the second scenario, delivering value and accumulating debt. More than five sprints and they deliver more by paying down debt every time.
Now suppose another scenario where our team has accumulated 20 points worth of tech debt. Rather than deliver only ten points of value with the next sprint, they choose to take the hit and pay off the debt, delivering no business value. On the next sprint, however, they are back to delivering 18 points of value (accounting, once again, for immediately taking care of any debt). After the third sprint they've delivered 36 points of value compared to what would only be 27 if they continued stumbling carrying the debt. We can measure the difference in value, nine points after 3 sprints, being delivered by the decision to pay off the debt. If we measure debt and business value the same way, that comparison won't be made. It isn't that the comparison can't be made -- And I realized that as I wrote this post. With some bending over backwards while jumping through hoops and some algorithms written in python, comparisons using tech debt pointed as stories could be made. In my next post, though, I will argue why a comparison like that probably won't be made and shouldn't be made.

Friday, August 24, 2018

"How can I make my company realize that they are NOT agile?"

I just got an email from a company called agile42 that I talked with at Mile High Agile. I was really just looking for a good place to save this for my own use, but figerd that agile42 wouldn't mind if I gave them some free advertising by sharing it here.

Q: How can I make my company realize that they are NOT agile when they say they are?

agile42 Insight:
This is a great question and one we often get from the community. If a company is saying "We're all good, we're agile now!", it likely means they're looking at it as a binary measure - that they simply areor are not agile. In this case, convincing someone that they are not something they claim to beis difficult, because it feels like failure. Instead, we prefer to think of it like a spectrum. Some might think of it as a journey and most organizations are somewhere between "We need to get started" and "We've reached our destination".

One way to have this conversation at any level of the organization is to have people reflect on the 12 Agile Principles and then rank them in order of how strongly they are living them.

  1. First, select the top 3 strongest and bottom 3 weakest.
  2. Next, go through the 3 strongest principles and identify two or three concrete things the organization does that makes them good at those principles.
  3. Finally, go through the weakest 3 (opportunities for improvement if you'd like a less negative connotation). Identify two or three concrete things that might improve these principles.
  • Through this method, you get a list of improvements that either shore up weak spots or double down on strengths - either way, they all make your company more agile!

Sunday, April 1, 2018

Easter At Home?

It's strange to be home at Easter. Jen and I are almost always in Vegas on this weekend for Viva Las Vegas. Because of Easter falling early this year, VLV doesn't begin for another few weeks. It isn't so strange that I wrote a very similar post to this four years ago when we were on our way to VLV.

It isn't strange because I feel this way every year this time, a feeling of hope and renewal. Maybe it comes from a Christian upbringing. Maybe it just comes because winter is over and spring is here and for eons human beings have held celebrations at this time of year, though most probably don't involve Rockabilly music, loud cars, tatted-up pinups, and Pabst Blue Ribbon.

I've always liked Mardi Gras because it was that one last Bacchanalian celebration before setting my sights on making some real changes come Easter. I would say that sometimes I was marginally better. Usually I just realized that I was another year older and my Rock-n-Roll lifestyle wasn't doing my body much good. (Three or four nights in Vegas will do that to you.)

This year has been different. The changes I have made have been "out-of-band" so to speak, not occurring in the regular course of events. Mardi Gras was less "Mardi Gras" this year, knowing, as really I always have, that true change comes little by little, day by day.

Easter time this year has me feeling the same feelings as always, hope and revitalization. There is still so much I need to work on as a person. Winter had me pretty down. (The meds help a lot to whitewash it.) Now the sun is up, the daffodils are blooming, and the Cubs are on the t.v. (Someone needs to re-energize the Cubs starting rotation, however!) I'm motivated. I hope you are too. For whatever challenges you are facing and whatever your faith, this is a great time to "get after it" as my old football coach used to say.

Tuesday, March 6, 2018

Happiness and Community

I'm listening to The Art of Happiness in a Troubled World. It's the third in a series, which started with The Art of Happiness, a Handbook for Living, that a psychiatrist, Howard Cutler, has written along with the Dalai Lama. Confession: I had started the first book several years back, and when I checked this audio book out of the library, that was the one I thought I was getting. This book actually seems more appropriate for the current time, though, in the wake of the Vegas and Parkland shootings.

Obviously Cutler and HHDL (that's His Holiness the Dalai Lama to the unintiated) have a good rapport if they are working together on their third book together, and that rapport does come through. The Dalai Lama is a funny dude. When Cutler asks him the simple question of how do we get humans to better see the humanity in each other, HHDL suggests that if Martians invaded Earth we'd all ban together pretty quickly. "Okay, well apart from that..," continues Cutler.

Im only a short way into the book, but it seems that the main premise is an important one, and I wanted to share. The Dalai Lama suggests that a good deal of the trouble that occurs amongst humans today is because we have lost our sense of community. Tibetans are shocked when they hear that Westerners can live for years alongside neighbors that they do not know. Cutler admits that he doesn't know his neighbors, and I admit that I don't know mine at all. And it isn't just our immediate neighbors that we've lost touch with. We don't socialize in the ways we once did. Television and the internet has removed a lot of the personal interaction we once used to have. Church attendence is down. Socializing with coworkers has been eaten into by longer and longer commute times.  Many of us live in different cities or even states from where we grew up in numbers that are unprecedented. We've become a lonely society. The average number of intimate friends that Americans said they had has decreased from three ten or twenty years ago to two now. Twenty-five percent of us say that we have no real intimate friends at all.

That loneliness is literally killing us. Sometimes it's showing up at the door to the school armed with an AR-15. Sometimes it shows in a suicide rate that is the highest it has been in thirty years (Is it just coincidence that the three states with the lowest population densities, Alaska, Wyoming, and Montana, have the three highest suicide rates amongst U.S. states?) . More often it shows in heart disease and cancer rates in lonely people. One health study showed that lonely, disconnected people are four times more likely to catch a cold than someone who isn't.

I struggle with making human connections. It's a lack of self-confidence and really a bit of cowardice generally that keeps me in my little bubble. For years I tried to overcome that with alcohol. Finally I've come to the harsh truth that breaking down my reserve with alcohol doesn't work for me. I've been struggling again for about the past five months of feeling disconnected once again. So listneing to this book has come at a good time. It came as a revelation that what I really need is to connect within a community. It's almost absurd that it comes as a revelation to me, since Jen has been saying as much for at least the past half-dozen years, though not in the same words.

As I sat and thought last night, I realized I am part of a great many communities. I'm a Rockies fan and last night we had our season ticket draft. Sure we only meet once a year, but that has been for the last dozen or so years. In a broader sense I connect with other Rockies fans online and connect with sports fans generally. Sports fandom is a community that is overlooked as a meaningful one to many people. There is a community of people I work with here at Nordstrom and beyond in a general sense of technical people in the Denver area. I'm a member of Mensa and the Triple Nine Society, not that that in itself is meaningful, as we have much less in common amongst ourselves beyond a high IQ. But within those groups I identify with subgroups. It gives me a group to sound off about running or books or politics. In quitting drinking I attended a handful of AA meetings. That is a community, and an important one for some people. It can be very lonely when you quit drinking and for the past number of years the only new friends you made were people at the bar.

Being a part of those communities is not the same as being connected to them, however, just as living next to people doesn't make you connected to your neighbors. I'm working on that. Just identifying all the opportunities I really have was an unexpected step for me. Maybe I'll actually make a Mensa meeting in the next 6 months.

I didn't start this intending to write so much about myself. I meant it more to get people thinking more about community and what they can do to be more connected. For those of you who struggle with it like I do, keep trying. Do little things to reach out. Be brave. Don't let rejection deter you.Think of the communities you are a part of and what you can do to be connected within them. For those of you who don't struggle, reach out to those of us who do. We'll likely reject you using crucifixes and garlic as if you've walked out of a monster movie. Don't let rejection deter you either. Eventually we'll run out of garlic.

Saturday, August 12, 2017

Stone Mountain

I haven't been to Mount Rushmore. Not yet. I have been to the Mount Rushmore of the South, Stone Mountain, Georgia. It was on one of the trips down from Michigan to see my aunt who lives outside of Atlanta we made when I was a kid. I don't remember much clearly about the trip, nor exactly how old I was, probably eight or ten. I do remember after learning that the enormous sculpture on the mountain is of Jefferson Davis, Robert E. Lee, and Thomas "Stonewall" Jackson, that they should have just added Darth Vader as well. If you were going to have a big sculpture of those three villains, because that is how I was brought up to think of them, you might as well add the worst villain I could think of at the time. What were these people down south thinking? It also happens that Stone Mountain was the place of the rebirth of the KKK in 1915 shortly before they began work on the huge sculpture.

Since that time I've learned a lot more about the Civil War and the men who fought it, as well as about human nature as well. The reasons for the war were complex. I'm not one of those who will say that it really wasn't fought over slavery; it was. But the Confederate army wasn't comprised of plantation owners either. It was made up largely of men who owned no slaves at all. Robert E. Lee was offered command of the Union army before turning it down to fight for his home state of Virginia, and his own views on slavery were extremely complex. Interestingly, he emancipated the slaves at his Arlington plantation, just days before Lincoln issued the Emancipation Proclamation, slaves which had come down as an inheritance, which had originated with Martha Washington, to his wife. This wasn't out of the good of his heart, though, as he was acting as executor for the estate of his father-in-law who had said in his final will they should be given their freedom.

The institution of slavery is a horrible scar on our American history, one that we will never be rid of, no matter how much we would like to forget it. I think it is important to learn of the horrors of it, not because we are otherwise doomed to repeat our history. Those lessons though are what make me sensitive to the hatred in the current rhetoric of White Pride and this new nationalism. What I hear in the the rhetoric of these "alt-right" protesters of today is that of the plantation owners saying that "really this is about states' rights and our niggers are better off here where we take care of them than out in that world they are just not equipped to manage."

There was talk for a while that the bas relief of Davis, Lee, and Jackson should be blasted off the side of Stone Mountain. Personally, I hope it stays. It is a provocative piece of art in a beautiful, yet equally provocative setting. I hope future young visitors will visit and wonder why someone thought these men were important enough for such a memorial.

The catalyst for the protests in Charlottesville, VA, is apparently the decision by the town to begin removing Confederate memorials including a statue of Lee. I can see the arguments for and against removal of statues like that. I said above that I'd hate to see the sculpture at Stone Mountain go, but I equally would not be comfortable living in a town that had a statue of Lee. I believe it best left to the individuals who live in the community to decide what they want their community to be like. It's disgusting that the protesters who have congregated in Virginia are largely not from there and include groups from my home state of Michigan.

Those protesters are feeding off hatred. The entire alt-right, neo-nationalist movement is feeding off hatred. I say, don't give in to this hatred. It's difficult, because I can't think of those protesters down there without hateful words coming to mind. Change doesn't come through hatred though. Real change comes through loving compassion, regardless of how difficult that is to find. I leave you with the link to this story, which is more profound given the events of today: http://www.huffingtonpost.com/entry/black-man-daryl-davis-befriends-kkk-documentary-accidental-courtesy_us_585c250de4b0de3a08f495fc.

Tuesday, July 18, 2017

Ghost Story - Grandma's Visit

This last ghost story I have I may need to wait on publishing. Again, I feel like I've written about this one before, but I'm not quite sure where it is. I'm pretty sure I wrote about it the day or so after it occurred, so that version would be much more accurate than this. Though, I also have to think to myself, is it a real ghost story if it doesn't evolve in some way with the teller?

I wasn't very close with any of my grandparents growing up. I'm a little envious of those people I know who were, especially now that all my grandparents are gone. I didn't even particularly like my maternal grandmother. She was very religious, and it came off a little phony, especially when I was older. I mean, I knew her heart was in the right place, but I could only put up with her in small doses. Not like my Papa, her husband. He was a Pooh bear looking man, roly-poly with a big belly and charismatic with an easy laugh. He was religious too, but from him, well it didn't sound "preachy". My grandmother was "preachy".

Grandma Pieschke died just about a year after Papa. Before she did though, I had the opportunity to have this amazing morning with her. I guess it was the weekend of Papa's memorial service. Grandma wanted to go to church, and everyone was occupied with all the arrangements being made. She couldn't drive herself and to that point I had had no point in any arrangements. Feeling both like I wanted to help out and like I wanted a little time to be with my grandmother, I offered to take her.

Like I said, it was an amazing experience. I got to see both how much my grandmother meant to the people in her church, but also what grace that woman had. That's the best word for it, grace. She accepted everyone's wishes, introduced me around, and exuded this strength that was incredible. It was incredible because I knew how much she was hurting, even right underneath that tough exterior. It was also incredible because she was such a tiny, old woman and these other people were gaining strength from her. I was gaining strength from her.

Anyway, about a year and a half after Grandma passed I had this dream about her. As I wrote this post I came up with where I had initially wrote about it, about the dream, so I will post it here without any sort of enhancement. I have to say, though, that what I didn't mention at the time I wrote this was how real the dream was. This was one of those dreams that afterwards I had to ask myself whether it was real or not. Of course it wasn't. To this day, though, it feels as if the day in the dream were every bit as real as Grandma hanging on my arm as we left her church that morning.'

I will always have this feeling that she stepped over from death to remind me of what was really important. You really have to understand, though, how unusual the dream was... I don't think I can convey it. If it had been about my paternal grandmother it would have been something, because we were closer. Frankly, I liked her more. There's just no reason that my maternal grandmother would show up in a dream this way to me.

-- I had a dream last night that I spent the morning with my Grandma Pieschke, and then we went to lunch. Later in the day I went to the bank near our house and was surprised to find my grandmother working there. I talked to the other workers there, and they all said what a joy it was to work with her. Before I left the bank I remembered it was Grandma's birthday, but I stopped. She couldn't be here for me to wish her Happy Birthday because she had died last year.

Well, it must have been about quitting time because then Grandma and I were walking home together. I told here that I meant to tell her Happy Birthday, but I couldn't because, and here I paused and best I could said, "Because you're dead."

"I know," she answered.

"So I am just imagining this then?" She didn't answer that, just kept walking. "But what about the other tellers? I was talking to them about you, and they were talking about your baking. We were eating your peanut brittle." Still nothing. "Was I just imagining them or their reactions to me?"

"Does it really matter?" she finally said. "We got to spend the day together and have a marvelous lunch."