Note that the author is a somewhat polarizing figure. I find that he says some contrarian things with a lot of apparent truth in them, but also tends to overstate his positions and make a lot of loud contrarian noise.
At low status, your flaws are given prime focus and your assets, while acknowledged, dismissed as unimportant or countered with “yes, buts” which turn any positive trait into a negative. (...) If you are in a position where people emphasize your flaws and overlook your achievements, you have low social status (...). If the opposite is true, you have high social status.
A big part of the problem is that programmers are constantly trying to one-up each other (...) and prove their superior knowledge, drive, and intelligence. From the outside (that is, from the vantage point of the business operators we work for) these pissing contests make all sides look stupid and deficient. By lowering each others’ status so reliably, and when little to nothing is at stake, programmers lower their status as a group.
When we like our work, we let it be known. We work extremely hard. (...) This means the happy ones don’t get the raises and promotions they deserve (because they’re working so hard) because management sees no need to reward them, and that the unhappy ones stand out to aggressive management as potential “performance issues”. (...) we allow this “passion” to be used against us. Not to be passionate is almost a crime, especially in startups. (...) What most of us don’t realize is that this culture of mandatory “passion” lowers our social status, because it encourages us to work unreasonably hard and irrespective of conditions.
Executives, a more savvy sort, lose passion when denied the advancement or consideration they feel they deserve. (...) They want to be seen as supremely competent, but not sacrificial. (...) Executives are out for themselves and relatively open about the fact. (...) What executives understand, almost intuitively, is reciprocity. (...) They won’t fall into “love of the craft” delusions when “the craft” doesn’t love them back.
I believe there is an imporant lesson in this. I emphasise this part because it's not just "managers have it better than programmers", but it tries to explain why; what are the mistakes to avoid.
The core problem is probably the servant attitude: "I will do my best, and hope that my master will notice! And if he doesn't, then I will work even harder to show what a good servant I am!" This doesn't work, because it gives the master exactly zero motivation to do anything; he is already getting from you whatever he wants. What's the point of giving you more money or better working conditions, if in return you are going to do exactly the same thing you were already doing?
Your negotiation doesn't have to end at the job interview.
This doesn't work, because it gives the master exactly zero motivation to do anything; he is already getting from you whatever he wants.
Or to put it in local game theory terms: Your boss is significantly more likely to be PrudentBot than FairBot, and PrudentBot defects against CooperateBot.
Predator bots cooperate, they just limit their cooperation to other predator bots in consuming the Chump bots.
It's a recurring theme for me lately. To cooperate with those who would cooperate with you is good; to cooperate with those consuming you is not. Cooperating with Predator bots only makes it easier for them to consume you. Pacifist bot = Dinner bot.
The core problem is probably the servant attitude: "I will do my best, and hope that my master will notice! And if he doesn't, then I will work even harder to show what a good servant I am!"
No. They're not servants, they're craftsmen, and foolishly expect to be judged and rewarded base on the quality of their craft.
They won’t fall into “love of the craft” delusions when “the craft” doesn’t love them back.
More than anyone in a corporation, they refuse to serve, particularly where it really counts, like lying for the boss.
They don't know what service is. Service to a predator is helping him predate and protecting him from other predators, not producing value for the organization as a whole. Producing value for the organization! Ha! What kind or moron cares about that?
A famous book, Moral Mazes, came out of an anthropologist doing field work with the corporate manager savages, to see what they're like.
La Wik
The very ambiguity of their work and its assessment leads to the feeling on the part of the managers Jackall interviewed that "instead of ability, talent, and dedicated service to an organization, politics, adroit talk, luck, connections, and self-promotion are the real sorters of people into sheep and goats" (Moral Mazes, page 1).
and it creates subtle measures of prestige and an elaborate status hierarchy that, in addition to fostering an intense competition for status, also makes the rules, procedures, social contexts, and protocol of an organization paramount psychological and behavioral guides." (Moral Mazes, page 4).
Basically, a corporation is a royal court, where everyone who knows what they're doing is looking up to see how they're pleasing their Master, looking to please other potential Masters, and looking after their own power and status, while the morons "get work done".
programmers lower their status as a group.
While the programmers compete against each other based on craft, the predators look after the status and power of their group.
This reminds me of an article I read once and probably couldn't google now; about how "being a professional" means different things for different professions (radically different, from the status point of view).
The examples used were lawyers and teachers. Both professions have people who try to present themselves as professionals, but they do it differently. When a lawyer says "I am a professional", they mean they do they work well and they demand appropriate compensation. When a teacher says "I am a professional", they mean they do they work well... but speaking about compensation is somehow taboo. Actually, there is this meme going around that if a teacher cares too much about their salary, they were not meant to be a teacher, because they care more about money than about teaching. No one would try saying the same bullshit to a lawyer, though. The lawyer is allowed to say that their job is the most important thing in their life... and then refuse to work for you if you refuse to pay them enough money, or refuse to follow their advice, etc. The teacher is allowed, even required, to pretend they don't have a life outside of their work; but then they are supposed to shut up, accept whatever conditions were given to them, and do their best, and keep doing this for their whole life.
According to that article, the main difference was that lawyers have made their definition of "being a professional" from inside; they put there what they expect from themselves, and also what they expect for themselves in return. On teachers the definition was pushed from outside; and some of them internalized it, and the remaining ones don't know how to defend verbally against this kind of abuse.
With programmers, I think it is mixed. Some of them have the lawyer-like attitude. Just read this article by Joel Spolsky -- he is not afraid to say openly that if a company doesn't use source control, can't make a build in one step, doesn't have a bug database, doesn't fix bugs before writing new code, doesn't have speficication, doesn't have testers, and programmers don't have quiet working conditions... then he wouldn't work in such a company. Because he is a professional; he can produce high-quality outputs, but he also requires adequate inputs. He refuses to work in substandard conditions, because he knows it would impact his outputs, and then he would look like a less competent person than he is. And there is also this component of status... he is good enough and knows that if his conditions are not met here, they will be met somewhere else. So he doesn't have to compromises here, and the employer wouldn't push them on him.
Then there are also programmers who are an opposite of this. Give them a noisy working environment without source control and without testers, no specification and no bug database... and they will somehow take is as a matter of their pride to produce as good results as possible even in such an environment. Without proper financial compensation, mind you; according to my experience such people are paid less than people working in better conditions. (If the company is too miserly to pay for decent working environment and decent tools, they probably try to cut down costs everywhere.) As if for these people the source of their pride is to withstand all abuse, and pretends it's all okay, because hey, they are grown-ups. If you demand better working conditions, you seem spoiled; if you leave the company because someone else offered you better conditions, you are a person who gives up easily. -- This is what I called a servant mentality. It's not: "I'll do my best, and I expect to be paid handsomely." It's: "I'll do my best, of course, and I deserve nothing; my privilege to serve you is the greatest reward I could ever get." Secretly, they would prefer better conditions; but they don't have any hope left.
While the programmers compete against each other based on craft, the predators look after the status and power of their group.
And the rational (winning) reaction is to a) whine, or b) start looking after your status and power, too? And please, no reversing stupidity; I'm not suggesting the programmers should give up their programming skills completely. Just not to pretend that the programming skills with zero strategic skills is the winning strategy. Because it obviously isn't. We are still humans working in human organizations; we need human-handling skills, too. Even if these skills are difficult, especially for some introverted people etc., the low-hanging fruit is really worth picking.
This is what I called a servant mentality. ...It's: "I'll do my best, of course, and I deserve nothing; my privilege to serve you is the greatest reward I could ever get."
But nobody is really thinking that last phrase.
Secretly, they would prefer better conditions; but they don't have any hope left.
This is nearer the truth. They're too hopeless, too irresponsible, too lazy, or too cowardly, and don't care enough about their own lives to take care of business and take action to improve their lives.
And the rational (winning) reaction is to a) whine, or b) start looking after your status and power, too?
Closer to neither. Whining is worse than pointless, but joining in the vapid quest for power over others would be soul crushing as well. It's not what they value. They value creating value, and should be putting themselves in a position to do this, and benefit by it.
Secretly, they would prefer better conditions; but they don't have any hope left.
This is nearer the truth. They're too hopeless, too irresponsible, too lazy, or too cowardly, and don't care enough about their own lives to take care of business and take action to improve their lives.
It's plausible that after a while working under bad conditions, they're also too tired.
This. It is really hard to think about taking action to improve your lot when you're overworked, exhausted, and just trying to get through the day so you can eat and sleep. The most crippling aspect of modern employment is that while in theory it only takes eight hours out of your day, it actually takes that plus the time you spend recurperating afterward -- the time you could conceivably spend looking for work that sucks less, or finding other options in general.
I worked at GE for a while, in a nonsensical government "produce specifications no one will ever read or care about" job. No rhyme, no reason.
I'd get home and collapse face first on my bed, exhausted, after putting in only 8 hours and accomplishing nothing all day.
Meanwhile, I worked with a former Army Ranger, who'd be jolly and giggling all day. "What a great job! I can get up and get a drink of cool, clean water, any time I want to. Wow! What a deal!"
(He told me how the sleep deprivation in Ranger training was basically torture, and he was hallucinating and barely sane through most of it. He "coped" by seriously envisioning himself as a Frodo, trudging through some hellish Bataan Death March quest. )
I suggest that if you're in an office job that "exhausts" you, you're doing it wrong, and the place almost certainly is not one where you'd really want to be, even if you were doing it right. I was doing it wrong. He was doing it right.
First, get your head right about that soul sucking place, see it for what it is, see that you don't want to be there, and so have minimal true worries about getting canned. Then get out. This should be obvious with a minute of thought.
The fact that this minute is not spent and acted on is further evidence for my claim
and don't care enough about their own lives to take care of business and take action to improve their lives.
Meanwhile, I worked with a former Army Ranger, who'd be jolly and giggling all day. "What a great job! I can get up and get a drink of cool, clean water, any time I want to. Wow! What a deal!"
I wonder if that generalizes, and if so how long you have to deprive yourself or get eaten alive by mosquitoes or something before your misery set point changes.
I further wonder what the long-term utilitarian balance on this sort of behavior looks like, under various assumptions, and if there's a consequential case for doing that sort of thing deliberately. It'd shed some light on e.g. torturous initiation rituals if so.
I think it's all spike-and-decay.
You go, I don't know, on a shift working on a fishing boat in the North Pacific in the winter -- that should set your misery point pretty low -- and a month after that an office job where you sit in a warm dry office all day is pure heaven. A few months after, that office job is OK. A year or two and that same office job is boring and unsatisfying. So you go and work for a bit in a deep mine where it's always 100 degrees, 100% humidity, and you can only breath through a respirator -- and get another spike. You switch to an office job and it's heaven again... :-)
You resume would look weird, though :-D
No doubt extreme hardship does help later in life in terms of having solid experienced frames of reference that make the current glass seem very full in comparison.
Fortunately, I don't think you actually have to go through major deprivation to get that frame of reference. I don't think it is a set point issue as much as an issue of having some perspective and controlling your emotional state.
The usual corporate job is not in fact Hell. But it hits us in all the tender points that David Rock points out in "Your Brain at Work" - Status, Certainty, Autonomy, Relatedness, Fairness. The most damaging thing about it, by far, is my reaction to it.
I can get my undies in a bunch over violations of the above, or I can calm down, accept that it is what it is, while looking forward to finding some place that is better.
This post hit a chord with me, and I am curious as to what actions you took to change it. Did you simply go somewhere different, or are you doing something different?
Action 1 - attitude adjustment.
Earlier comments.
They're too hopeless, too irresponsible, too lazy, or too cowardly, and don't care enough about their own lives to take care of business and take action to improve their lives.
...
I suggest that if you're in an office job that "exhausts" you, you're doing it wrong ...
The usual corporate job is not in fact Hell. ... The most damaging thing about it, by far, is my reaction to it.
My current position is not Hell. I am not going home exhausted (though I should get more sleep).
But I saw much greater possibilities with it than are bearing out. I think those possibilities are real, except for the behavior and attitudes of the people involved that keep the possibilities from becoming realities.
At least for me, that's where frustration and crazy starts - being dependent on the decisions of others, particularly when I think they are making poor decisions.
Attitude adjustment. Instead of being frustrated on what this place isn't, focus on all the desirable things I get out of it, what more I can get out of it, and at least attempt to get them to change their behavior that's limiting what this job is.
But, also recall that there are other places, other opportunities, and I should start looking around at them. The world is full of wonderful opportunities. Life isn't that hard, and could be much better.
One thing to note while reading my posts - I'm often trying to motivate myself.
They're too hopeless, too irresponsible, too lazy, or too cowardly, and don't care enough about their own lives to take care of business and take action to improve their lives.
That was directed at myself as much as anyone else who could use a kick in the ass. It's from personal experience.
Some people seem to think it's mean to say such things. I say them because I wish I had had someone to impress them upon me years ago. Validating someone in their hopelessness and learned helplessness is not compassionate, it is destructive. It's hard to find a legal way to hurt someone more.
Tiredness in office work is caused by boredom, worry, or resentment. Basically it is a huge "do not like" feeling. Source: Dale Carnegie
However there is one issue. Doing something boring means you have more abilities than required, so pretty sure you will be never fired for underachievement. You look a less boring, more challenging job, there is a higher chance of not being able to do it right and getting sacked. So basically it is a trade-off between sure income vs. feeling good.
Right know I have a boring job, but I will NOT risk having to tell my wife and daughter that sorry we used to have money and now we live on sandwiches because daddy wanted a less boring job and managed to find a too challenging one and got fired. It would be irresponsbile and they would think you should have sticked to the boring, comfy, well paying one that you can do without many challenges and seek excitement elsewhere.
Tiredness in office work is caused by boredom, worry, or resentment. Basically it is a huge "do not like" feeling. Source: Dale Carnegie
About right, though I don't think "boredom" is really it. I can and have done entirely mechanical work for something I wanted to accomplish for hours on end without boredom.
The tiredness, and the dissatisfaction, are almost entirely psychosocial, between lack of intrinsic investment in the work itself, and the various social indignities associated with modern corporations.
David Rock has a good book, Your Brain at Work, which details a number of specific psychosocial factors in play at work.
Doing something boring means you have more abilities than required, so pretty sure you will be never fired for underachievement.
I don't know about your work situation, but in my experience in the US, incompetence gets almost no one fired in the modern corporation. You get fired when there are reorgs, and the Top Men cut head count. Sometimes the Boss is given a say in who is dumped, and sometimes not. He'll dump the guys he doesn't like, who don't show loyalty, faster than the guys who don't produce. If you're bored and dissatisfied in your job, it's very likely the guy your boss doesn't like is you. Particularly if you're given to pointing out faults in plans, instead of spouting happy talk.
Job cuts from the Top Men have little to do with you at all, while when the Boss is given a say, it's more about social factors than productivity. Taking a job beneath your general capabilities is no protection against cuts from the Top Men, and may be a net negative protection if the job leaves you dissatisfied, and therefore less pleasant to the Boss.
I've seen a lot of your posts. You can string sentences and ideas together. Guys who can do that don't grow on trees. If you find a job challenging, while you have the basic background knowledge for it and find the diligence to apply yourself to it, the job is probably hard, and the Boss won't easily find someone who can do it much better. You have to judge your competence, but I recommend you judge it relative to the competition, not relative to your own standards.
The point of my Ranger story is that what was soul crushing for me, was a day at the amusement park for him, entirely on account of our different attitudes toward the work. Having spent some time unemployed, I catch myself whenever I start thinking I "have to go to work". No, I "get to go to work". Yay!
And there are even better and more satisfying jobs I could work at. Yay!
they would think you should have sticked to the boring, comfy, well paying one that you can do without many challenges and seek excitement elsewhere.
If it is indeed comfortable, secure, and well paying, that's not bad advice. If on honest evaluation, it really is a good situation, maybe what you need an attitude adjustment more than you need a new job.
Dale Carnegie's "do not like" feeling is largely a "do not want" feeling. From this and other posts, I see a lot of "should" and "duty" in you. Embedded in every should, every duty, is an implicit, unexamined, "don't want to".
How about you lay aside that duty for a second, and honestly evaluate based on the available options, and what you want? Beyond duty, do you want to support your family? Of your available options, which ones are the best for all the things you want?
Often times, we're doing out of a leaden sense duty what we would want to do if we allowed ourselves to examine our options based on what we want.
My point is this. You leave the comfortable boring job and start looking for a new one (or start looking while working). Pretty sure it requires a knowledge you don't have, because jobs that require learning nothing new are probably precisely the boring ones. First issue is not being hired at all, because the HR idiots want 3 years o experience in a technology 5 years old and we want people who can hit he ground running yada yada. But let's say they are willing to invest. Still there is a probation period - usually 3 months here - where they can still easily think you are not up to it. Moreover, to be really considered part of the family - I am using this term on purpose, to demonstrate I have no idea about how big impersonal corporations are like, I am more used to the kind of small-business culture of Central/Eastern Europe and to a certain extent rural UK where the business owners office is three rooms away from yours - can take up to a year. After that, it is hard to get fired, indeed. But there is a temporary risk factor.
Attitude adjustment is IMHO one of those things that depend heavily whether reliable methods exist or not. We cannot just decide to feel different about something. When I used to go to buddhist meditation centers they were always like, OK you understood this teaching now, but in the head or in the heart? As it takes a lot of work for a teaching to go down from the head to the heart, to become not just thought but felt, and this is why methods like meditation exist to change the heart. Your Ranger co-worker did not just decide one day to feel good about it, there were probably really powerful psychological forces going on inside him to make him feel that way. This powerful forces may or may not be simulated or evoked by conscious emotion-traning methods, but the point is we at least need experimental methods for that. Some kind of an at least potentially reliable emotion changing tools.
I am afraid what-do-you-want will not really cut it as a method as "want" is such a tricky term. What do I want? To quote an old joke, tax cut, free beer and forever life. Well, or a lottery win will do it. So I guess the question is, what do I want what is actually realistic? Well, getting a black belt in kick boxing would be nice. It is realistic for people of my age and fitness level, eventually. But wait, I am probably unwilling to invest into it what it takes. I want it, but not want the price to pay for it. So I guess it is more like, what do I want what is not only realistic, but I really want the whole package, not only the goal but also all the side-effects and want to pay the price that has to be paid for it, goal, side-effects and price being a whole package? Well, that is precisely the issue, there are probably no packages that are really perfect, there is always some side-effect, a too high price, or sometimes I am the weak link, unwilling to pay even a realistic price or all that. So reformulating it yet again, which one is the least bad of the available packages? Well, the current one, obviously, or else one would have changed it already. But it is still possible to feel unhappy about it - for example to feel if I was only braver or more diligent I could choose a different package, and then feel unhappy, not even as much about the situation but about myself. I am actually of the opinion that almost any kind of unhappiness for almost any reason reduces to a kind of self-loathing, because, if you were heroic enough you would have solved the problem, right?
I'll take your word on the local job security situation.
Attitude adjustment is IMHO one of those things that depend heavily whether reliable methods exist or not. We cannot just decide to feel different about something.
A lot of attitudinal adjustment can come from choices about self talk and mental focus. One of the drivers of depression is habitual negative self talk. Reading your posts, I see a lot of that.
It's all "what if the bad thing happens"?
How often do you ask yourself "What if the good thing happens?"
So reformulating it yet again, which one is the least bad of the available packages?
There's a sun shiny outlook - life as a buffet of bad packages to select from. Is it any wonder you're not feeling motivated?
and then feel unhappy, not even as much about the situation but about myself.
And that's the way to really drive it into the ditch. You're not just making mistakes, you are a mistake.
I am actually of the opinion that almost any kind of unhappiness for almost any reason reduces to a kind of self-loathing, because, if you were heroic enough you would have solved the problem, right?
No. Heroism doesn't imply you'll have all the right answers or all the right behaviors.
What if you're just doing it wrong because you never learned a way to do it better? What if it's really not that complicated? What if life really isn't that hard?
On the simplest and most obvious level, the kinds of things you're saying to me here and saying to yourself are just the kind of things people have identified as generating depression. That's called doing it wrong.
You seem to have the same approach as the Cognitive Behavior Therapy folks, claiming that thoughts generate emotions. I tend towards the opposite emotion, that emotions are pretty much just chemicals and thoughts are used to rationalize them afterward. But let's suppose you are right. What's next? Positive thinking doesn't work more more
They're too hopeless, too irresponsible, too lazy, or too cowardly, and don't care enough about their own lives to take care of business and take action to improve their lives.
I suppose this could be useful for motivation to a certain type of person, but I wouldn't feel comfortable acting on this model if the outcome of something important depended on it - feels a bit tilty.
The most hilarious version is - and I am guilty of doing it - when asked "what is your biggest fault?" answering like "sometimes I am too perfectionist and cannot leave good enough alone" or something similarly ridiculously servant-like ass-kissing. I think it goes back to many programmers being low status marginalized nerds all through from childhood to college, and the chance of a REAL JOB with real respect is something they may feel very grateful for.
What do you then? Obviously you are required to lie; you cannot actually tell them your biggest fault.
A more high-status response is to say something trivial and humorous, or even meta, such as "sometimes I don't answer questions I don't like". This is slightly impertiment, not impertinent enough to actually offend the interviewer but enough to send an I-am-high-value-and-know-it message.
Reminds me of a joke:
(at a job interview)
Q: "What is your biggest fault?"
A: "Sincerity."
Q: "Well, I don't think that sincerity is a fault."
A: "Well, I don't give a fuck about what you think."
No offense to any and all programmers here who might be experiencing problems like this, but I don't see why the quote explicitly mentions programming. The excerpt seems to make just as much sense when we plug in another profession, say 'researcher' (I was going to say 'construction worker' but this profession is not usually associated with trying to signal intelligence, if you replace that word too then it works again). So are we solving a fully general problem about status in companies and the effect on your payroll here?
I am not sure about other professions. Maybe researchers also fit this pattern, but there are probably less researchers than programmers, so the typical person is this position would still be a programmer.
The pattern is approximately this:
The essence of the company is selling the things you do. Those are very complex things that other people in the company mostly don't even have a clue about. You create the magic, the rest of them provide you an infrastructure. (Which of course is important. Without selling to the customer, without doing the paperwork, etc. you wouldn't make money. But still...) There are very few people able to do this magic, and everyone complains about lack of them. A random person taken from the street probably couldn't replace you even in five years of training. Just doing what they taught you at school and following orders in the work would not be enough; you need some talent, curiosity beyond your work. -- And yet, somehow, you are usually treated as an unimportant person, your opinions about the process are irrelevant, sometimes you are even not given adequate tools. When the magic works perfectly, it's merely business as usual. If the magic somehow breaks, you are treated like an incompetent idiot.
And the worst part is that some of your colleagues actively participate in this pattern. They take personal pride at not doing anything that would resemble an union; they play negative-sum games against their colleagues. For example: The manager tells you you should do something in 2 hours, which is an obvious planning fallacy. Based on previous experience, you say it takes 4 hours. One of your colleagues starts contradicting you, saying that you "only" need to do this and this (making it sound really trivial by ignoring all the technical details and all things that could go wrong), and that actually 1 hour should be enough. He simply couldn't resist an opportunity to signal that he is smarter than you; because signalling "I am smarter than you" is what this loathsome little shit does as automatically as breathing (he probably subconsciously expects that his mommy would be so proud of him what a smart little boy he is). But the end result is that you all have a lot of work and not enough time to do it properly, bad working conditions and tools (because the same little shit will argue that state-of-the-art tools and quiet workplace are not really necessary for someone as smart as him), and you somehow succeeded to make each other seem incompetent despite being a very small fraction of population that even has a clue about the magic you are doing. Sigh. So technically smart, so socially stupid.
It's not just about signalling intelligence. Lawyers also signal intelligence. But they don't signal it by saying: "Look ma, I can do it much faster and much cheaper than he can, ain't I smart?" Because anyone socially savvy can see it actually isn't that smart.
I'd say: start respecting yourself and respecting your colleagues who are competent at what they do. (If someone is clearly incompetent, and is a shame to the profession, that's another thing. But if they merely take a bit more time to implement this, or they have a little less experience with that, because they are younger or specialized at something else, just let them breath. Let the managers judge whether they are adequate, it's not your job.) There is a lack of programmers; everyone is complaining about the lack of programmers. So don't act like your only option to survive is to cut your colleagues' throats. Aim for "everyone is good, I am super-good" image, instead of "I am okay, everyone else is an idiot".
Sigh. Trying to make nerds cooperate is probably futile, because most of us are too clever to win. When given a choice between having a cake and having your mommy be proud of you, we usually throw away our cakes and our potential allies' cakes, too. It takes a while to realize that being hungry sucks.
There is a lack of programmers; everyone is complaining about the lack of programmers.
By the way, how long do you think will it last, with current popularity of learning to code, coding bootcamps, MOOC etc.?
how long do you think will it last, with current popularity of learning to code, coding bootcamps, MOOC etc.?
Long. Bad programmers are a dime a dozen, good programmers are rare because to be one requires both high IQ and a a particular way of thinking.
Teaching idiots how to code isn't going to help.
What Lumifer said. All these internet schools are great for people who have the ability to program, so now they all have an opportunity too. But there is a limited number of people with that ability. We will have more programmers, but probably still not enough.
Also, it seems to me that the programming jobs are getting more and more complex. Fifteen years ago, I could make decent money by coding desktop applications in Visual Basic. These days I am using Java + JSF + PrimeFaces + EJB + JavaScript + JQuery + SQL + XML + HTML + CSS + Maven to make an application that in some sense is actually more simple, but it has a web interface, which is required a lot these days. Compare how much time would it take to learn one technology vs. almost a dozen of technologies. (But if I tried to get a similar job in the next company, they would probably complain that I don't have experience with Spring or Struts or Hibernate or Selenium or whatever else. Unless my knowledge is perfectly tailored to needs of one specific company, I have to learn more technologies than I will actually use.) What are all these technologies used for? Essentially, you read a value from database, display in on web page, let the user edit it, and store it again in database; or display the data in a table, and allow user to sort or filter the table by individual columns. Somehow this requires dozen programmers and five years of work.
The internet courses also have a huge rate of dropping out.
Relevant and occasionally referenced here: Don't Call Yourself A Programmer, And Other Career Advice.
“Programmer” sounds like “anomalously high-cost peon who types some mumbo-jumbo into some other mumbo-jumbo.”
The post repeatedly states that the positions are "essentially identical", or "doing the same kind of work", but I don't think that's right. A software engineer does not literally perform the same duties as a manager reporting to the CTO. Isn't that enough to explain why the interviews were so different? Don't get me wrong, the contrast is quite interesting and all that, but it seems to be mostly a coincidence that the same guy was qualified for both jobs.
I think interviewers rely more on their intuition to evaluate candidates for managerial positions. For purely engineering positions, a longer, more systematic evaluation is needed.
A problem with this experiment is that while Bill may be the same person in Interview A and B, the interviewers are not the same person. You can't know for sure if the VP in A would act like the CEO in B if Bill was interviewing for a managerial position. It is just as likely that the VP in A is simply a jerk who tries and one-up all interviewees, regardless of the status of the position they are interviewing for.
Here is an interesting blog post about a guy who did a resume experiment between two positions which he argues are by experience identical, but occupy different "social status" positions in tech: A software engineer and a data manager.
The author concludes that positions that are labeled as code-monkey-like are low status, while positions that are labeled as managerial are high status. Even if they are "essentially" doing the same sort of work.
Not sure about this methodology, but it's food for thought.