As a programmer I’ve spent most of my career, well, programming. The metaphor of programming is particularly powerful. Get the rules just right and the program will run flawlessly forever with no further attention. What a pleasant change from the anxiety-inducing, messy, chaotic, unpredictable world of people.
I can remember my absolute elation when C3, the first Extreme Programming project, went well. I had finally cracked the code. No programming project need ever be late, much less fail ever again!
Of course that wasn’t true. Many programming projects shouldn’t even be started but you can’t tell until it’s too late. Even potentially-successful projects can be derailed by changing business conditions, unpredictable human relations, and flat out bad luck. There are no rules.
When I started studying performance review and compensation, or more broadly “incentive systems for geeks”, I had a moment of déjà vu. It felt a little like programming people. Give them this incentive and they will behave like that. How naïve.
Different people respond to incentives differently.
Just because behavior changes, that doesn’t mean the overall outcome will change in a predictable way.
At the same time incentives matter to behavior and behavior matters to outcomes. What to do? Stay humble, even while carrying responsibility. But it’s not programming.
Hi Kent, In the last years in my startup I focused a lot to develop people who were working with me.
At that moment, I tried to give them what I thought was important in my journey. As you said the results were a little different from what I was expecting. And it's ok. I think that have this kind of responsibility can help us to improve ourselves and to understand more the different backgrounds that people have. Makes us more empathetic.
The "We are uncovering better ways [...] by doing it and helping others do it." part applies so very broadly.