Not about me

In a single-player video game, I’m a kid again, because the story is all about me. I am the main character, and every other character exists for me. They’re all standing around waiting for me to react to them. Everything they do, they do it to make me feel something.

The decisions I make change the world, inside the game. The world grows as I explore it. Nothing is accomplished unless I personally accomplish it.

Children generally start with this perspective. Everyone else exists in order to take care of them. Growing up feels (in part) like a process of letting go of this.

When a person snaps at me, or cuts me off, or says something horribly offensive — it is not about me. They have their own concerns, and my feelings don’t register.

When I complete a task, or make something cool, or flub and do something seriously awkward — it doesn’t matter. It is not about me. Only the people closest to me notice, and they quickly forget.

When I have a useful idea and must get it into the world right away, and then my kids need something and a deadline rears up, the world is deprived of this crucial output! … nah. It is not about me. When the world is ready for an idea, that idea comes to many people. Someone else will get it out there; they probably already have.

Gerald and Dani Weinberg call it the Law of Twins: most of what we do has no lasting effect.

There is freedom in this. People aren’t waiting to see what I will do. The world goes on. It is not about me.

What others do and say is about them and their context, not about me. The world exists in vast complication whether I perceive it or not. Time and culture move forward with my little contributions or without them.

The exception is: my family and close relationships, my team and collaborators. These people see and hear me, they feel and act partly in response to what I do. And it is my responsibility to see and react to them. I make a difference in the day my children have, in what my team accomplishes.

Cherish these people, and put care into your interactions with them. The rest of the world, meh — it is not about you. It’s okay if you never change it. It’s okay if you do; don’t fear affecting people. You mostly won’t, and if you do, the world was ready for it.

Then if you want to feel important, like the world revolves around you again, play video games.

Go toward uncertainty

It’s difficult for an executive to criticize a budget when most line items are for mysterious high technology activities. It’s easier to tackle the more understandable portions, like postage, janitorial services, and consulting.

Jerry Weinberg

We want to help. We want to do stuff. We look for matches between what needs done and what we know how to do, and then we do it.

But does that always help?

Today in his newsletter, Marcus Blankenship told the story of the three bricklayers. What are you doing? “Laying bricks.” “Making a wall.” “Building a cathedral.”

We want to do something. We want to lay some bricks. As programmers, we want to write some tests, make a class, throw out an API.

After we break down a feature implementation into tasks, it is tempting to get started on the parts we know how to do. Knock those out, advance that progress bar. Make the wall taller.

Those are the least helpful parts to start with! In software development, our job is making decisions. What we need most is knowledge.

The pieces of the task most amorphous, kinda vague, the ones our brains want to slide past with hand-waves — those are the tasks that will give us more than apparent progress.

Integrate with that new service. Get authorization working. Pick the database and get familiar with it.

Digging into the uncertain tasks gives us information. We will learn how the API needs to be different than we thought. The data we didn’t know we needed, the unhappy-paths we didn’t know we needed to pave.

Lay the bricks slowly. Consider, what is going to hold this wall up? and what will this wall hold up?

In the opening quote, an executive tries to manage costs. They are drawn to the little nitpicky items that look approachable. But the easy ones are already pretty good! The giant Megatechnology items with big dollars next to them, these provoke handwaves. What might the executive gain by digging in and learning more about these? Maybe not cost-cutting, but definitely better decision making.

To help with the cathedral: be okay with uncertainty, sit in the unknown. Feel confused, be uncomfortable. Observe things that don’t yet make sense.

It’s tempting to start with what you most know how to do. Start instead with what you least know how to do.

Code (especially unreleased code) is a fast material to change, far faster than bricks. The hard part is deciding what to change it to. Aim for understanding, and progress will come to you.

Open your eyes to the nonsense

Logic and culture have nothing to do with one another.

Jerry Weinberg, The Secrets of Consulting

A friend of mine works for a large government organization that runs a dam, extracting electricity from water and gravity.

They have internal software development, of course, and my friend described some impressive obstacles to change. Deploying a new lambda function is a challenge. My friend calls on contacts throughout the department, including friends from previous jobs that now also work there. They help each other through procedural barriers.

I said, wow. He said, yeah, we have a mantra: “We make power, not sense.”

Culture doesn’t make sense, to anyone from outside. Culture is common sense, to anyone embedded in it.

To understand and work with a large organization, let go of trying to make sense of it. Observe it and see what’s there. After that, logic might help in finding ways to work skillfully inside it, maybe even to change it.

Simon Wardley always says, map what is. Then think about moving it toward what you want.