Recalibrate Your Productivity Sensors
tombartel.de
tombartel.de
In almost every elite physical sport, the optimal age of physical participation, before the hardware starts to fail, is much lower than the age of the coach.
But in every elite sport, physical or otherwise, a coach is pretty much always someone who has previously been an elite player or participant. The reason for this is pretty obvious: the experience gained in the activity by the coach, the efficient passing on of higher orders of knowledge, and the gains from the division of labor/economies of scale from the coach/sportsman unit.
Indeed, if a coach can still compete, they don't become a coach, but split off and become a player/team, who then outsources the coaching aspect of his regime to a coach, but I digress...
Indeed, you see this or similar patterns in practically all professional activity that meets two requirements:
1. Requires a high amount of skill 2. The amount of skill required is easily objectively demonstrated/measured/competed against.
Be it sport, or cooking, or crafts, or trades.
Programming, I put forward, is no different. That is to say, the skill/craft of programming. If the art of programming and its application is what is desired, then skillful young programmers want skillful older programers as their managers/mentors.
The catch, is that employment of programmers is not in most corporate environments about the application of a skillful craft to produce a quality application.
Indeed, only in the corporate, tech, and political environments, do you see anything so obscenely parody-like as suggesting a coach/manager/superior be hired that doesn't have extreme knowledge of the field in which they are leading. For good reasons, if you suggested this in any other field that meets the criteria up there I suggest, you would either be laughed out of the profession, or naturally fail and be expelled anyway.
And that's because the norm of the corporate and business world does not meet the criteria I listed above, and is not about the application of skillful programming. It stems from two main problems:
1. The inability to easily measure connect a programmers/corporate teams/managers inputs to outputs and their relative values. 2. The real skill being applied in most corporate and business hierarchies being political savvy and salesmanship.
Thus we are stuck with the world of modern business theory and programmer application in a business context:
The idea that it is perfectly acceptable for a modern manager to have no knowledge of the thing they are managing. And if the main goal of a manager is politics and value-extraction, in a sad way, its actually true.
But it has nothing to do with the craft of programming itself. For that, I return to my original analogy: you want a highly experienced technical expert leading your team. I don't care how "accepted" it is that this is not the case in the corporate world, because such a position is not borderline insanity, it is literal insanity, and it would not be taken seriously for 5 seconds if it was the application of the skill of the team of programmers to their problem domain that actually mattered.
mic drop
It's a common refrain in many team sports that great players rarely make great coaches.
The majority of NFL coaches have no NFL experience. A handful didn't even play at the college level, and most of those that did played in "non-elite" college divisions.
At some level, I'm taking it you're still telling me that they at least all played the game to some level, which is still a distinctly different level from common corporate messages that you wouldn't even have had to play or understand the game of the team you're managing. So it sounds to me like there's still some level of fundamental skill attribution there, though maybe not to the levels found in other sports/professions.
It is also true that the correlation between coach and skill is not perfectly bi-directional/symmetrical. Great skill does not necessarily imply great manager/coach. But my contention is that great manager/coach has some necessary correlation/causative connection with having great skill and that this connection grows stronger the more an activity relies upon high skill and the direct measuerable application thereof.
It is the nature of this connection, that one (coach) requires the other (skill), but that one (skill) does not imply the other (coach), that makes such positions so rare in highly valuable high-skill-verifiable games.
Of course, the other dimension of this analytically is the supply side: what is the shape of the skill curve (does it taper off quickly or is there a long tail), and how many people/resources are put towards producing people in this game.
As an ultra cynical bastard though, I think it would raise for me some interesting questions about the nature of NFL coaches, remuneration, players, how easy or hard it is to measure their skills and value their contribution to a team's success, how directly their skills affect an outcome of a game, how important/connected this application is to a team's success, and how much such things are the things being chosen for.
Now I should state that I've done a little bit of analytics on sports (primarily rugby and tennis) in my own time over the years, so the notion that such positions and remuneration in team sports is tied more to stereotypes, marketing, showmanship, reputation advertising and superstition in the team sports vs the individual ones/frequent contest/high-verifiable ones is actually what I would expect to see, rather than as something I think invalidates my theory. If you put sports on a spectrum, the variability and difficulty in finding empirical relationships between skill and game contribution does become increasingly difficult the more you move away from the frequent contest, high skill (by which I mean in a technical sense: the amount of variance in an outcome directly attributable to some kind of notion of measurable skill rather than randomness), individual participant games.
There's a whole lot more I haven't touched on.
/I also think, although I haven't put effort into analyzing it, so I accept it as a personal bias/belief at this stage, but I haven't found anyone else that has been able to demonstrate it, so I think i'm pretty safe, that there is almost no demonstratable connection between higher corproate executive remuneration and actual measurable skills/outcomes, and that this is this culture/phenomenon that explains where the "non-technical manager" idea comes from...
Highest level of play by current NFL head coaches
NFL: 10
Division I: 7
FCS: 6
Division II: 2
Division III: 4
High School: 3
This is pretty generous bucketing, i.e. the NFL bucket includes people like Sean Payton (played 3 games as a replacement during a strike) and Gruden (practice squad player).
The DI/II/III breakdown is also based on the school's current NCAA status (not when the coach played), which is probably inaccurate in some instances as well.
The ability to critique and improve the product of others is only loosely correlated to the ability to produce a high level product yourself.
Another place you can see this is in art production (written or visual, particularly). Many great art critics have only moderate ability as artists themselves.
http://randsinrepose.com/archives/entropy-crushers/
== A good project manager is one who elegantly and deftly handles information. They know what structured meetings need to exist to gather information; they artfully understand how to gather additional essential information in the hallways; and they instinctively manage to move that gathered information to the right people and the right teams at the right time.
There are humans who are really good at this. They thrive on it. Engineers have difficulty believing this – it’s the same issue they have with managers. They see these strange humans focusing furiously and scurrying hither and yon and they wonder, “What are they actually building?” They’re right. Project managers don’t write code, they don’t test the use cases, and they’re not designing the interface. You know what a good project manager does? They are chaos destroying machines, and each new person you bring onto your team, each dependency you create, adds hard to measure entropy to your team. A good project manager thrives on measuring, controlling, and crushing entropy. ==
If someone is promoted among his peers, they tend to get credibility if they showed assertive behaviour amongst their equals before.
If they were always subordinate and stayed out of conflict, they aren't recognised as a leader when they get promoted inside their group.
A boss doesn't always have to understand the technical details, if they get can get respect by just generally being a wise person with a good grasp on general goals.
When you're a deeply technical person, it's often a good idea for a boss to stay out of your way, while still reminding you of the bigger outlines of the project.
[1] https://www.amazon.com/High-Output-Management-Andrew-Grove/d...
If you are a 100% manager, then you will not be able to pair program for a long time as your programming/technologies competences will fade away quite rapidely.
For some reason this sentence took a while to make sense
If you spend a lot of your time coding, you are preferring an activity that others _also_ can do to something that only you can do.
If you spend a lot of your time coding, you are preferring an activity that others can _also_ do to something that only you can do.
Or maybe just change the whole phrasing:
If you spend a lot of your time coding, you are preferring an activity that someone else could do to one which only you can do.