Software development coach and speaker.
Legacy code wrestler.
Award-winning bad poet.
Agile in 3 Minutes podcaster.
☕ Buy me a fancy coffee
Comments in the moderation queue:
Recently posted comments:
A friend Jay Packlick has done a few talks and presentations around this concept - Metrics that Matter
He has suggested that we plot the metric on a grid - Y axis - Potential for Value and X axis - Potential for Evil. When I started doing this… it became much clearer when to say no to a metric and when to say… well OK, as long as we keep this idea true… and circle the area on the grid that we discussed.
I’m wanting to +1 your whole rant, I’d like to nail it to the front doors, I’m thinking about a tattoo, but unsure where on my bosses body it should go…
I have sometimes fantasied about asking the VP that want’s a new metric, if it would be good for us to add one that measured their leadership of our group - I’ll call this metric Mean Time between Disruptions (MTD). MTD is calculated much like the old factory sign that said “its been 23 days since we killed someone at this factory”. So let’s start counting (I suggest in weeks) the time between a major disruption to the team. For this basic metric we are looking at basic team formation dynamics (your familiar with Tuckman’s Forming, Storming, Norming, Performing) and you mr. VP want the P word - but it comes after 3 stages of development beyond the F word) So let’s start at the beginning and count weeks between Forming and ReForming. You know like when you move a person on/off a team. When you move the team’s physical location, when you give the team a new objective.
The metrics I’ve seen range from MTD = 0 - 20 weeks for many teams I’ve worked with. And they say they desire persistent teams.
Long ago in my career when I was doing large waterfall projects — 9, 12, 18 month release projects — we had to measure things or we couldn’t tell whether the project was in line with successful delivery, for whatever definition of “successful” we were working under. I have a whole list of metrics I’ve kept. They were mostly useful. And I did use the same organizing principle you mention: I didn’t measure a thing unless there was some concrete decision we would make with the result.
The great thing about the ways most places deliver software today is that we’ve broken things down into small chunks where you can usually tell just by some version of “looking at it” whether things are going well or not. And I never, ever want to go back to the old way. Because every last thing I measured ended up gaming the system. People naturally want the things they’re being measured on to turn out well for them. I even tried to measure without the teams knowing what I was measuring, and it still ended up influencing behavior.
I think your question, “What decisions will this metric help you make?” is the right one to ask, regardless of whether its motivation is gut-level resistance. It challenges the person wanting to put the metric in place to truly think through what they’re trying to accomplish. If they can get to the root of what they want, very often you can have a meaningful and productive discussion with them about that.
I was about to share a link to an MP3 from an old
and was reminded that with ikiwiki I’m free to move podcast attachments from old
locations (/file_download/16/foo.mp3) to sensible spots (/year/month/date/post-title/foo.mp3, right next to its show notes).
With a few shell pipelines, I moved the files, updated references to them, and generated Lighttpd redirects so old links keep working.
Then I shared the nice-looking link to that MP3, and observed the utter absence of a top-level file_download directory in my repo, and was happy.
Oh yeah, this site has finally joined the modern era. Not only SSL, but also no more www. in front. Old URLs still work, of course! This required no change to the site’s Lighttpd config, just a simple-enough-to-guess-right change in the host’s Pound config.
BTW, a very handy way to manually check redirects is curl -I -L "http://www.old.url/that/should/get/redirected".
curl -I -L "http://www.old.url/that/should/get/redirected"
When I ported this site from Apache
some of the configuration could only be expressed using
Now I’ve got a few months of log data. The Lua script was being called for exactly two redirects of nonzero value (7 hits each, not counting bots). So I’ve turned mod_magnet off, gzipped the script for reference, and added these lines to the site config:
# [Feeds + Non-feeds] rewrite uppercase "tags" that had been Textpattern "categories"
"^/tag/Assignments(.*)" => "/tag/assignments$1",
"^/tag/Music(.*)" => "/tag/music$1",
You should vote. I’ve debated this with you before, and I’ll grant that I’m extra testy tonight. I won’t be able to sleep with the current election results, so I might as well put down my thoughts here.
You are not obligated to vote, but you should still vote. I respect that you have uncertainties about the election. I agree that many of the true outcomes of the election are obfuscated, and that we don’t see the real consequences for our choices for years to come if ever. But incomplete information is not solely grounds for inaction. If you can’t fully determine how long a necessary project is going to take, you still get started on it. You may not know which insurance company will be good down the road when you make a claim or have a health issue, but you still need insurance for the big things in life. Inaction is not an option many times. The same is true for society and government.
And inaction inevitably yields the initiative to those willing to take action - A racist, sexist, peddler of fear with no regard for truth, facts, or even reality is now President-elect because 7-8% of the country voted for him in the primaries, and 27% of the country voted for him in the general election.
And I deeply respect the disdain for centralized power. But changing it will result in a tangible body count. No system of government has ever changed peacefully that I’m aware of. The American Revolutionary War killed approximately 1 out of every 100 Americans, and the American Civil War killed 1 out of 40. I’m willing to put up with a fair bit of corruption, lost liberties, and crazy leaders before I sign up for one of those. And what alternative are you suggesting? Because without an alternative, I’m reminded of, “Democracy is the worst form of Government except all those other forms that have been tried from time to time.”
So go vote. It’s the least you can do. If you don’t like the Presidential candidates, I understand that completely. My wife wrote someone in. She strongly debated writing in a fictional character. Vote in the primaries, so we’re not stuck with awful candidates in the general elections. Go educate yourself on local issues and local candidates, and vote for those. Aside from military decisions & Supreme court justices, they usually matter more in day-to-day life than the President anyway. And if voting down ballot feels insufficient, and really it is, get more involved. Call or write your representatives - you’d be shocked how relatively few people do. Go to your local council meetings. Get involved with community organizations.
Decisions are made by people who show up. Ultimately, you can’t lead people by staying at home.
So next time, go vote. Don’t stop advocating for change. Don’t stop advocating for decentralization of power. But in the mean time, vote. Because if all the good people stay at home, everyone else will decide for you.