GeePaw Hill Profile picture
Sep 20, 2020 27 tweets 5 min read Read on X
We're talking about change-harvesting: human, local, oriented, taken, and iterative change. Let's consider this adjective "taken" today, and see where we go with it.
I keep saying: these muses are respite for me, and maybe for you, from more important stories.

Partisan thugs seek to turn our nation into a freak show of state violence, white supremacy, vast inequality, & the oppression of women.

Stay safe. Stay strong. Stay angry. Stay kind.
In change-harvesting, we use this word "taken" in multiple senses, but to put it in a single sentence: the change-harvester takes both the substance of and the approach to change from what is already there. We *take* our changes from here, we don't *give* our changes to there.
To go from A to B, it is easy to focus all of our attention on B. The change-harvester is saying we can't make effective changes unless we see them as *changes*, as transformations to A. And that implies paying a great deal of attention to what that A is and how it works now.
Although "taken" may seem a little shaded or obscure, it's actually at the very center of what it means to change a thing, as opposed to building one. We've touched many times on the difference between greenfield & brownfield. With taken change we see that difference in action.
A negative case: An enormous software system for managing what is nowadays called "human services" casework. It was double-digit millions in the making, spread across years. It is universally reviled by its victims, the human services pros who have to use it.
Human services work in the US involves a ginormous variety of specialist teams, with a huge clientele, and a set of ever-changing laws that make the tax code look like a primer. These people rely on inter-team collaboration, single-source-of-truth, and strict confidentiality.
This new system, been there for about a year now, was "given" to the people who use it. There were no direct consultations. No ideas were taken from the teams down on the floor doing the actual work. There were no intermediate or evolving products, just the big monster.
It is a classic old-school approach to change, and it violates most of the change-harvesting attributes, but it really fails primarily because it was not taken from the people who use it, but given to them. Let's look at some of the factors in this failure.
1) Because it was not taken from the experience of the users, it meets resistance at every turn. What they want is (maybe, barely) doable in the new system, but their resistance substantially slows their ability to see how to do their work effectively.
2) Because it was in fact taken from a kind of Platonic statement of procedures rather than the lived experience of the users, it ignores every aspect of their job that is accomplished outside of those procedures. Those aspects are actually the *core* of the job, not a side-show.
3) Because human services work has more exceptions than rules, a system that does not understand exceptions must be constantly and manually worked around, usually at higher cost than whatever systems the users had in place before the change.
4) The most important aspect of inter-team collaboration is the coordination of cross-linked info about interactions with clients & other teams. This given system can't do that. Their most important challenge remains unresolved. It's just more useless heartache to them.
The upshot? The desired change, of increased collaboration, a single source of truth, and high confidentiality, has not achieved. To make matters worse, the system was built in violation of the other attributes as well, and can not be changed in the foreseeable future. Whoops.
(An aside: I took this case from government, always an easy target. But I have seen the identical case in myriad corporate settings as well. I just found this case easy to explain and discuss. Don't make the mistake of thinking that for-profit corporations don't do this.)
There are really two positive cases here: Retrospectives and refactoring, both of which are essential parts of the modern software development synthesis, are both wonderful examples of taken change.
In retrospectives, we gather folks together, as equals, and we *take* from them. We take ideas about what is working well or not as well as ideas about what might be better. And those taken ideas transmute directly into change.
In refactoring, we take our changes directly from the code, and, importantly, the behavior, that is already present. We purposefully restrict ourselves to just those changes that preserve that exact behavior. We do this expressly to make it easier to later *alter* that behavior.
Why are these two approaches so useful for us? There are several factors, but the key is that they are both centered in a taken approach.
1) Action items emerging from a retrospective are far more likely to actually be performed precisely because they came from *within* the team, from its grasp of what is already there.
2) Those same actions are also more likely to be correctly targeted. They tend to incorporate problems & solutions that are *not* already in the procedural mix. It's because we're not taking them from the procedures, we're taking them from the team that utilizes those procedures.
3) Holding the behavior fixed during the refactoring simplifies our challenge: we take the existing behavior as our constraint, and alter the existing code. The chaining together of successive refactorings in this way produces very powerful results in a safe manner.
4) Refactoring heightens the signal/noise ratio of what is already there, before considering ways in which its behavior may change. In the A -> B world, it's obsessed with the way the A code expresses the A behavior. This accounts for much of its success as a coding technique.
Both of these positive cases are examples of the taken in action. "Taken" re-balances our attention, from all being on an endpoint, even a nearby one, and instead distributing it so that the starting point receives at least equal attention from us.
Like the other attributes, taken doesn't stand alone. It reaches towards the human and the local, and ultimately it underpins the iterative. It's hard to get at, but it really is the definition of "change", as opposed to "build".
When we change something, we are changing *something*. That something isn't abstract or distant, but concrete and right in front of us. Change-harvesters make sure to focus there first.
Thanks for reading. You can subscribe & get full text/podcast twice a week.

Black lives matter.
Social justice matters.
Peace matters.
Women matter.

I don't have pithy words today.

Just. Please. Help if you can, any way you can.

geepawhill.org/subscribe

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with GeePaw Hill

GeePaw Hill Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @GeePawHill

Nov 19, 2022
In today's episode of Stupid Geek Tricks, I just basically invented Smalltalk using Kotlin.

Before you get angry, please know that I don't approve of this. I don't approve of a lotta shit I do.
120 lines of code. A marker interface for messages, a one-API interface for objects. Any class can handle any message it chooses to. Didn't bother with doesNotUnderstand, but it'd be an easy add.

gist.github.com/GeePawHill/2d7…
Conceptually, it's straightforward: the Interactor wraps a Thing to give it a jump table that switches on the message subclass. It calls the Thing's register() to fill out that jump table. Any given Thing class can register any given Message+Handler pair.
Read 31 tweets
Nov 18, 2022
What is my favorite 20th c song from Broadway?

Oh my gosh, I'm so glad you asked.

[Editor's note: Nobody asxked this. No one. Not one. Nobody asked this.]
Well, of course, it's "At The Ballet" from _A Chorus Line_.

I grew up on stage, community and then semi-pro theatre. I worked 4-8 production a year from the time I was 7 until about 20 years old.

In *Kansas*, yo, in Kansas.
Read 13 tweets
Nov 18, 2022
Anyway, all and sundry, "geepawhill" is not a common moniker. Find me that way. I'm on mastodon, but I also have a whole website, geepawhill.org.
Backstory: "geepaw" means "grandfather", and now, to look at me, it seems obvious. Of *course* this bitter old fucker is a grandfather, just look at him. But "GeePaw" is actually a name I've had for over 30 years.
See, my wife is a little older than me, and when we first got to the bouncy-bouncy, her kids were already almost grown. I was present in the hospital room when my grandson was born. (It was gross.) And I became a grandfather at the ripe old age of 31.
Read 9 tweets
Nov 16, 2022
Please, I'm sorry, please, remember through all this Elon-is-evil-and-stupid shit, remember, please, I'm sorry, please.

This ass-clown *bought* this place where you made community, he didn't steal it. And he *bought* it from the people who sold it to him.
Baby, you were so sure you were the customer, all along, and so mad to discover you were product, all along.
*Fucking* mastodon. There's servers. There's CW's, and bitchy people on your server telling you to CW your random rage-tweets. There's no funded algo stuffing your timeline, just your server's locals and your follows and their follows.
Read 6 tweets
Nov 16, 2022
Jussi Bjorling, "Nessun Dorma".

I once did a bake-off. It was in the early days with spotify, and spotify is the king-hell site for bake-offs. Type in "nessun dorma" and get 500 takes.

So I listened to maybe 200 or so, and I put together a CD of about 20 of them.
And one night -- yes there were substances involved -- I played it for my wife, and we listened to all 20 takes, and we chose our top 3. No commentary. We just listened, and chose our favorites.
Read 6 tweets
Nov 16, 2022
Bob Marley & The Wailers, "Redemption Song". vimeo.com/390484832
Late at night, when no one's around, or they're all abed, or I'm drunk and I don't care, I sing this to the trees outside my house.
My range is very narrow, and it straddles right there, alto and tenor, and I'm old, a practioner of many vices, across many decades. But I sing it, and it fits in my range, and singing it makes me feel good.
Read 4 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Don't want to be a Premium member but still want to support us?

Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal

Or Donate anonymously using crypto!

Ethereum

0xfe58350B80634f60Fa6Dc149a72b4DFbc17D341E copy

Bitcoin

3ATGMxNzCUFzxpMCHL5sWSt4DVtS8UqXpi copy

Thank you for your support!

Follow Us!

:(