
If Software Is Eating The World, Why Don't Coders Get Any Respect? - throwaway37
Software, as Marc Andreesen said in his famous editorial, is becoming a larger and larger part of our daily lives. Given how important software is, then, you'd expect computer programmer - the task of developing and maintaining software - to be one of the highest-paid, most-wanted jobs. It isn't. Why not?<p>"Hold on", you say, "isn't programming a high-paying job"? Sure, next to the average American worker. But the average American worker is a college dropout. What if you compare programming to jobs for other highly skilled professionals?<p>Consider a 35-year-old, senior Google engineer. He probably makes about $150,000, which is enough to buy a good house and raise a family. But Google wouldn't hire a random guy to fill that job - this engineer probably has an Ivy League or other elite degree, fifteen years of work experience, a very high IQ, strong drive, and numerous other skills (anyone who's been through the Google hiring process can tell you how hard it is to get in).<p>As a doctor, however, someone like this - a top professional at the peak of their career - would probably make about $400,000. Partners at big law firms commonly net a million a year. Investment bankers are making several million (post-crash!). Top management consultants easily clear $500,000. Even a top accountant - probably a partner at a big 4 firm - would make two, three, or four times as much.<p>Of course, life isn't all about money. Is programming a top job from a social perspective? Again, no. Congress includes not a single programmer, and to my knowledge, it never has. Almost all big companies are run by MBAs. Even Microsoft, arguably the canonical software company, is run by a non-programmer from Stanford Business School.<p>Are programmers top government advisors? Are they national heroes? Do doctors and lawyers and policemen tell their children that, if they work hard and practice, one day they can grow up to be a programmer? No. Obviously not.<p>When the government wants to bring in more workers from overseas - which obviously lowers salaries, and reduces job security - who do they bring in? Computer programmers. Every single one of the top ten H1-B visa users is a technology company. Politicians justify this by talking about a "shortage" of programmers, but would there really be a "shortage" if programmers were paid $500K, as much as doctors or management consultants? Of course not. Saying there's a "shortage" is economically the same as saying that "we don't want to pay you guys enough to meet the demand for labor".<p>Now, to wrap off, since this is a startup site, doubtless someone is saying "but programmers can make millions in startups!". This, on the face of it, is true. However, as I'm sure any founder here can tell you, you can't make a successful startup just by being a good programmer. You have to, to quote Paul Graham, also "answer support calls, administer the servers, design the web site, cold-call customers, find the company office space, and go out and get everyone lunch."<p>Now, if you're willing to do all that, and work the eighty-hour weeks a business requires, why do you need to be a programmer to make it rich? You don't. There are millions of ordinary small businesses - ditch diggers, electrical companies, contractors, roofers, construction firms, and on and on - that, if run well, will make you millions without a single line of code. (For more on these sorts of business, check out, eg., the book The Millionaire Next Door.) What "programmers can get rich in startups" really means is "entrepreneurs can get rich in startups", whether they're programmers or bricklayers.<p>So, why is this the case, given how important software is to the world? I think the answer is hidden in the rest of my post. Notice how I've been arguing <i>for</i> more pay, job security, etc. for programmers. A majority of the people here are probably programmers. Yet, my tone is pretty argumentative; I expect people to disagree with me, and am trying to answer their objections.<p>Why is that? On the face of it, it's very strange. If you went to a welder's union, and argued that welding wasn't respected enough and should be better paid, you'd expect to see loud cries of agreement. If you talked about better wages for teachers or policemen or nurses - all of whom make more than the American average - who would dispute it?<p>But for some reason, unlike just about every other profession, programmers seem to have an aversion to asking for more pay and more respectability. It would seem selfish, somehow - a programmer making $80,000 feels he shouldn't ask for more, since he's already making double the US average of $40,000. (Even though, when a teacher making $80,000 (as many of them do) asks for more, no one disagrees.) And you could argue that this is selfish, even though it's the sort of selfishness America usually endorses. After all, when the miner's union strikes for better working conditions, aren't they being selfish? They're acting in their own self-interest, trying to benefit themselves.<p>So, if you don't like being selfish, is there a reason to make programming one of America's top jobs? I think there is. For the last ten years, the people running the US have been other, non-technical top professionals - lawyers, management consultants, investment bankers, MBAs. And it hasn't worked. The economy is in the toilet, the budget isn't balanced, the government can't get anything done, we're in two wars we can't get out of, and some days it feels like the country is falling apart at the seams.<p>By contrast, when you look at Silicon Valley, where a lot of the top programmers live and run the local industry, everyone is doing great. Profits are up, unemployment is down, companies are getting started, and user growth is through the roof. Might this be a coincidence? I think it isn't. And for proof, look no further than China. All of China's top leaders are engineers, not lawyers or financiers or consultants. And China's been doing great. They've had steady, 10% annual economic growth - triple the US's, even in good times - for the last thirty years. Sure, they have problems with pollution and corruption, but so did the US when we were industrializing. Overall, though, they're on the right track, and the US is not (according to 85% of Americans anyway).<p>Of course, that isn't to say that most non-programmers are stupid or immoral, or that we shouldn't have any lawyers in government. Any well-run society has a mix of people at the top, because of specialization of labor. But is the optimal number of programmers in Congress really zero? Is it good for the country that Silicon Valley, arguably the best-performing sector of the economy, has next to no influence in politics, so that laws like the DMCA get passed even when the whole hacker community is violently opposed? I think it isn't. I think the country would be better off if MIT computer science students, like their neighbors at Harvard Law School, could dream of growing up to be President. And I think we'd all be better of if computer science wasn't just seen as a major for socially awkward nerds.<p>(Original WSJ editorial I'm referencing at http://online.wsj.com/article/SB10001424053111903480904576512250915629460.html. I've been on HN since '08, but using a throwaway in case anyone gets mad.)
======
wheels
There are a lot of very fundamental misunderstandings of economics and labor
structures in here. But I'll start with the general objection that you'll run
into:

The core of your argument is entitled whining.

Computer programmers can make truckloads of money the same way that everyone
else can: by seeking it. If your professional goals are aligned with making
money, then your chances of making a lot of money go way up. Top lawyers
aren't paid the most because they know the law the best; that's ancillary.
They're paid big bucks because they win money for their clients, prevent their
clients from losing money and build networks to people that have money to give
them. Likewise, programmers who define their goals economically (which broadly
includes creating value for users) have nearly unparalleled earning potential.

8 of the 20 richest people in America are (or have been, at least nominally)
programmers.

The crux of things is that you don't get rich for being a skilled technician
-- and I use that word broadly. Lawyers don't get rich for knowing the law,
bankers don't get rich for understanding economics and programmers don't get
rich for slinging code. You get rich by creating value (or at least tying
yourself at an opportune moment to a benefactor whose goals are so aligned).

The rest of folks are compensated at prevailing market rates for their
technical skills -- and incidentally, American programmers are paid better
than in almost any other country.

But claiming that "computer programmers don't get respect" is broken on so
many levels. First, computer programmers are certainly among the most
respected trades. You need to interact with a broader cross-section of society
if you believe that not to be the case. Second, the baseline for becoming a
programmer isn't very high -- certainly nothing on the order of becoming a
doctor or lawyer. The median programmer has jumped over far fewer hurdles than
the median doctor or lawyer. (I got my first programming job at 17. I'd have
needed another decade of non-trivial training before I'd have been able to get
a job as a doctor.) The spectrum is far broader for programmers, and as such,
the respect a programmer commands has more to do with their actual status
within those ranks than simply being a part of that trade. But again, the
spectrum extends up to "richest person in the world", so we're hardly being
shafted.

If being respected among the elite is something that you want, align your
goals with that. If it's not, enjoy the fact that you're in a trade where even
untrained, mediocre practitioners reach the top 10% of American incomes.

~~~
CrLf
Let me start by stating that you reply is somewhat of an example of HN-bias...

The world of programming is vast. Larger than "America", larger than Sillicon
Valley, larger than the world of startups, and certainly much larger than the
"elite" that regularly reads (and comments on) HN and pats each other in the
back.

Even if we accept that programmers are well-paid and respected (two different
propositions) in the technology sector, most programming jobs are _not_ in the
technology sector, but spread throughout the corporate world. And corporate
programmers are all but respected.

In your average company, a programmer is considered a glorified mechanic or
janitor, a code-monkey if you will, well below the guys that "bring in the
money" like sales and marketing. It is an expense, something that the company
has to live with because someone has to implement the ideas that the guys in
charge come up with to help the guys that "bring in the money" bring in more
money.

Besides manufacturing, programmers are on the first line for outsourcing, and
it is no coincidence that an expression such as "software factories" exists.
Why do you think this is?

Most programmers will only actually _program_ for a few years before going
into management positions. There are few "old" programmers around, and those
that survive are often met with disdain. "What? You are 35 and still a
programmer?" kind of disdain.

When the average corporate user spends most of his time in front of a
computer, forced to use boring applications day-in and day-out, how do you
think he feels about the people that build those applications?

And even outside the corporate world... If you are a doctor, or a lawyer, or a
freakin' sales guy, people will listen to your stories, at least for a while.
On the other hand, if you are a programmer and even start to talk about what
you do for a living, people's eyes will glaze in boredom instantly.

Disclaimer: I am _not_ a programmer (I'm a sysadmin, which is mostly the same,
although usually better respected because sysadmin positions tend to be
longer-running inside companies).

~~~
mgkimsal
I'd taken to calling myself a 'digital garbageman' for a time, because that's
essentially what I was. I had some corp jobs, and it was mostly cleaning up
other peoples' code. I said it tongue-in-cheek, but I did feel that way, and
eventually left corporate work to hang out my own shingle. This time around,
I'm primarily solo, and sub out work to people to augment my time/skills.

I've gotten much better about charging rates I'm comfortable with, and finding
clients that a) can afford it and b) find value in what I do at those rates.
It would actually be nicer to do 'value-based' pricing, vs hourly, but it's
not something that both parties are usually able to agree on. Unless you know
a particular industry well, it may be hard to understand the full value of the
work you do. Even then, the company may much prefer to pay hourly or much
lower rates, simply because they can probably find someone else to do it.

With medical and legal professions, the licensing/regulation creates a large
barrier to entry, and people _have_ to go to those professionals for certain
tasks. You _can_ represent yourself in court, for example, but it's often
frowned on, but you generally can't prescribe yourself your own medication.
With software, no licensing/regulation exists, so there's generally a much
broader range of skills and value in the marketplace, which dilutes the value
perception many people have.

Agreed on the age thing. As long as there's a youth-obsessed focus in the
software world (and I think it's done just as much by us inside than by the
outside world) it'll be hard to get the respect we'd like as a profession,
simply because most people don't treat it as a career. Would you rather use a
22 year old lawyer, or a 52 year old lawyer? How about a 22 year old developer
vs a 52 year old developer? :)

~~~
sanderjd
Certainly the 52-year-old developer all else being equal. Isn't this a
complete no-brainer?

~~~
mgkimsal
well, as a rule, so far, the 52-year-old developers don't get the jobs over
the 22 year olds. That'll hopefully change as more of us get older though :)

My one other thought - way too late to the game here - is that many/most
developers seem to choose their 'respect' in the form of free sodas, air
hockey tables, nerf gun fights, flex time and other similarly
frivolous/trivial 'perks'. It's not how I would choose to be respected, but it
seems that's what enough developers seem to gravitate towards that it's set
the perception of developers in the marketplace.

This is now how software developers are courted - "hey, this place has free
sodas! and you can play ping pong!" Nothing wrong with those, but I'd rather
take more cash. I a talked to a company about a position, and postponed, then
came to them about 9 months later, and was offered $30k less than what we'd
talked about before. I inquired about this rather massive discrepancy, and was
told "we have free gym memberships, and all the free soda you can drink!".
Tell you what... I'll buy my own sodas, drink fewer of them, not need the gym
as much, and buy my own gym membership closer to my home with the extra $30k,
thank you very much.

I'd also rather be able to come in, have people respect what I say, take my
ideas seriously, and not have to deal with a load of internal politics on a
daily basis. That tends to be the life of a contractor/consultant, and it
suits me better.

~~~
tobych
Indeed. I'm a 41-year-old developer and have spent most of my career working
in university research departments. Just a grown-up amongst grown-ups. I had
an interview the other day with a start-up whose HR department and developer-
interviewers insisted on talking about the "free lunches" they provide. I
mean, when it came to question time for me they actually asked whether I
wanted to know anything else about the lunches. By then they must have
realised I couldn't give a shit. I was and still am just bemused by how this
could possible attract anyone, of any age. I mean, do I look like an idiot?
I'll make my own sandwiches and take the money instead please.

~~~
mgkimsal
Exactly.

"TANSTAAFL" :)

Now, I'm not _against_ free lunches. In a large enough group, I think it's a
nice thing to offer - you get a variety of stuff you might not otherwise cook
for yourself, communal eating is fun sometimes (not all the time), etc. But...
as a stated 'benefit' that you know is being offered in lieu of extra cash...
not sure that sways me.

~~~
tobych
Yes, free lunches are fine, and communal eating thing much of the week would
work well for me and no doubt for the team's performance. If I was told we
each together a few times a week, that would be hugely important. As it was, I
tend to imagine individuals scurrying to the kitchen, and taking a boxed meal
from the fridge back to their desk while they're still working. I should have
asked which of these actually happened.

------
patio11
There are many people who sling code who make as much as a doctor or partner
at a law firm. More than a few people on HN fit that description, actually.

A partner at a law firm is a businessman first and an individual producer of
lawyering second. He has people to do that for him. Many - but not all - ways
to do extraordinarily well as a programmer involve becoming a businessman
first and a code slinger forty-second. There are many people on HN who run
consultancies. If you're unaware how the numbers shake out, ask them what
percentage of the money they get came in from billable hours programming and
what percentage came from e.g. the delta between what they charge for
consultants and what they pay them, or the line-item fees which have no
associated hours.

I keep giving this advice: stop calling yourself a programmer. You're right,
it is anomalously highly paid and low status. So _call yourself something
else_. If you sling code and make businesses serious money and are
sophisticated about extracting that value, you will be quite highly paid
indeed.

With regards to social status: most white collar laborers don't really have
it. You could be a payroll clerk, so count your blessings. If you want it,
either a) find a peer group where you have it or b) use code slinging to
achieve something society values. You know how teachers have status? Try the
line "I helped X million kids learn to read last year" out some time. (Helpful
if it is true, obviously.). Or you can just wait until society moves in the
direction of Programming is Sexy. (Not as far fetched as you might think. My
girlfriend and her circle of friends loved Social Network. If I had
reputational stock I'd be IPOing right now.)

~~~
Sukotto
<tangent>

    
    
      My girlfriend and her circle of friends loved Social
      Network. If I had reputational stock I'd be IPOing
      right now.
    

In a relationship, IPO equates to "marriage". Note that the time/money
requirements to satisfy each level of advancement in that arena (marriage,
child1, child2, ...) grows exponentially.

The relationship Cost/Benefit ratio works remarkably similarly with a business
ipo actually. If you're headed in that direction, I strongly recommend
performing in-depth due diligence particularly around the areas of money-
management, child-rearing.

</tangent>

~~~
patio11
<tangent> I'm in the quiet period, so no comment. </tangent>

------
mechanical_fish
Quite a few good replies in this thread already. Let me just add a couple
points:

Engineering, done right, is an invisible art. Doctoring and lawyering done
right are intensely personal activities, service businesses with one-on-one
human attention. Good engineers fade into the background. Engineers make
objects and the objects speak for themselves. You probably can't name the
engineer who recorded and mixed the sound on your favorite new record. You
almost certainly can't name the engineers who designed all your local bridges
and rail systems. We don't even know how many people designed, say, the smart
cover for the iPad 2. All of this is by design.

Engineers also rip and mix and burn and create things that are the sum total
of a lot of individual efforts. I don't even _know_ if I'm the engineer
responsible for the test software that tested the wafer that spawned the chip
that went into your cell phone that filters the RF frequencies in your
cellular radio. There are very good odds that I am: I wrote such software, and
last I heard it was still running and my old company is still selling chips.
Again, this is how proper engineering works. Many of the best people you'll
ever meet work outside the spotlight, quietly making their corner of the
system better.

Engineering is a worldbuilding activity. The objects become famous, not us,
but even the objects' fame is fleeting. The marvel of one age is the boring
infrastructure of the next. But, hey, at least you get to change the world.
Fame isn't everything.

~~~
wh-uws
_Engineering, done right, is an invisible art... The objects become famous,
not us._

I think that is the exact type of thinking the thread starter wishes would
change.

Why is that the case? Why don't we exalt those who created such great things
that we take for granted.

And further more wouldn't we be better off as country if we did?

~~~
mechanical_fish
_Why don't we exalt those who created such great things that we take for
granted?_

Because there are too many of them. Look around you. The objects you can
currently see or touch have been built though the effort of, literally, tens
of thousands of people. My MacBook alone is the work of a small city's worth
of designers, engineers, techs, modelers, miners, carpenters, accountants,
physicists, chemists, machinists, architects, caterers, truck drivers, and so
on. You couldn't read all their names aloud in a week even if you knew their
names.

We do give people individual credit, sometimes. The movies have credits with
names in fine print. And a few lucky (?) people become archetypes: They're the
ones who appear in the encyclopedia under _inventors_.

But mostly engineers and other builders take pride in the results. To praise a
Pixar engineer, praise the movies. To praise an Apple engineer, praise the
MacBook Air (which by the way is absolutely excellent). To praise my
semiconductor engineering, talk about how thin your phone is or how good its
reception is. Most of the credit isn't mine, but a little of it is, and that's
going to be good enough.

I disagree that our country would be a better place if we all spent even more
time blowing sunshine up each other's butts. Rather, I think the world
benefits from teamwork: People who do their jobs effectively and consistently
and take pride in the results.

~~~
seri

      I disagree that our country would be a better place 
      if we all spent even more time blowing sunshine up 
      each other's butts. 
    

I completely share your view. In fact, the software industry is a perfect one
to be in if you want to enjoy life without having to make noise and conform to
social norms. And while I personally like to have diversified relationships,
the industry as a whole has a rich enough culture for us to be comfortable on
our own.

In comparision, I love Mathematics, but the field is too narrow. I have heard
stories about how investment bankers hate their crowds. And lawyers are always
in stiff competition with one another. Looking from this perspective, the
software community is similar to the designers' community. We share a lot and
we genuinely like each other. Well, maybe that's a problem itself. We tend to
form into cults and we are too ignorant with what else is going on in the
world, hence we tend to be more socially awkward. But that's an internal
problem and not an external one. We have to fix that individually.

However, while I don't think we should strive for more publicity and social
status, not having enough cash can hurt. This is a real issue. In my country,
on average, a programmer gets paid as much as an accountant, if not less. I
know a lot of couples where the guy is a coder and the girl is an accountant,
and they eventually had to break up partly because the girl is earning more.

------
alsoathrowaway
I think you're misrepresenting a few things, so I'll take a stab at it:

1\. Senior software engineers at Google in Mountain View make over $200k all
told.

2\. Senior software engineer is in the middle of the Google ladder. The bulk
of engineers at Google are senior level, so it's not special. The very best
engineers make more.

3\. You are vastly overstating the salary and difficulty of other fields.

3a. Doctor - You have to go through medical school and residency. Medical
school incurs a ton of debt and residency pays shit. The average salary for a
doctor in Silicon Valley is $200k.

3b. Investment banking and management consulting - first of all, in these
fields, a few people make a ton of money, but most don't make nearly as much.
Both of these fields are known for their horrendous hours. I'd rather work 40
hours at $200k than 80 hours at $500k.

4\. There are also big winners in the programmer world. People who went to
good startups early (Facebook, Google).

5\. Many programmers _enjoy_ their work. How many can say the same about
investment banking, lawyering, or management consulting?

~~~
lisperforlife
+1 for the 5th point. I had to read a few contracts and I was utterly
convinced that I wasn't paying my lawyer enough as he had to read this
horrible stuff every day.

~~~
coliveira
This is a very weak argument. I am pretty sure your lawyer says the same thing
about the code you write.

Everything is boring when you don't understand its meaning. A good lawyer can
easily figure out what is important in a legal document, and make smart
decisions based on it.

------
makecheck
As a programmer I'll comment on why I wouldn't fit into some of the molds
you've suggested that programmers might join. (Personal opinion, of course.)

1\. As a general rule, I am _very_ unwilling to put up with crap...life is too
short. I also want to be productive with the energy I put into something. If
you are hired in a technical job, you can reasonably expect to be around
competence (and if you're not, you leave). The biggest reason I would never
see myself joining Congress, or upper management at some companies, and
similar jobs, is this: _I can already see who my co-workers would be, and
they're horrible people_. I've seen what a lot of these clowns are capable of,
and you couldn't pay me enough to be the only smart man in the room. It would
be day after day of banging my head against the wall and wasting my breath.

I believe that the only way you'll ever see engineers enter these kinds of
jobs is if you can _simultaneously replace a huge percentage of an
organization with new people_ : the kind of people that engineers can believe
in and work effectively with. It has to be appealing from the _outside_ , and
right now it just isn't.

2\. I enjoy most work. As long as I'm making cool stuff and I can be proud of
what I produce, I'm pretty happy. I am more stressed about things that have
technical consequences (e.g. somebody pushing for a change that I know will be
a long-term negative), than I am about salary.

In other words, if it wasn't so easy to find enjoyable work doing actual
programming and the "important" jobs weren't so maddeningly filled with
annoying individuals, you probably _would_ see engineers doing other things.

~~~
TeMPOraL
So, in tl; dr: engineers tend to have aversion to bullshit - the one that
tends to fill upper-management and business circles.

I understand your sentiments - I personally don't see myself as ever joining
upper management - in my life I want to do good, worthwhile things. If the
best way to accomplish something will be to manage a team, then fine. But no
crap, straight to the point. It's the one reason I find startups more and more
appealing.

------
wladimir
_"Are programmers top government advisors? Are they national heroes? Do
doctors and lawyers and policemen tell their children that, if they work hard
and practice, one day they can grow up to be a programmer? No. Obviously
not."_

No. Because a majority of people don't _like_ software, programmers and
automation. They don't see programmers as an example because they don't want
it to be this way.

1) They are perceived as eating their jobs. You can explain increased
productivity all day, but someone out of a job due to a computer program
curses you.

2) It is hard to understand for laymen what they actually do. A doctor's
jargon is also hard to understand, but at least solves problems visible to
most.

A lot of people are borderline-luddites, others are more compromising and like
applied technology as long as it serves them. But very few, I think only
scientists and programmers (and the people that get rich from them) actually
_like_ where the world is going.

Not that it is possible to stop the software eating the world... It could be
that the problem will solve itself, eventually, because the more of the world
is 'eaten' by computers and software, the more powerful the people controlling
them will be.

------
shawnjan8
Dare I say it... but could part of the problem be a complete lack of unions?
Not to suggest every programmer who wants a job needs to join a union, but
AFAIK there are very little programming jobs which are part of a union. Here
are some thoughts.

The reason hockey players have agents is because the hockey players focus on
playing hockey, while the agent focuses on understanding how much value the
player brings to the team, and tries to extract at the margin the price a team
is willing to play. Likewise with unions, they have negotiators who understand
the value that these employees bring, and try to extract how much the company
is willing to pay these employees at the margin to still turn acceptable
profits.

Programmers do not seem to have this - many program because they enjoy it, and
companies take advantage of this fact. I believe many doctors are part of
organized unions, as well as other engineering professions. I do not suggest
that startups should have unions, but maybe unions should be introduced into
companies which employ a large number of software engineers, that way they can
worry about coding, and the union can worry about salaries being fair.
Thoughts?

~~~
gaius
_Programmers do not seem to have this_

Sure we do. They're called recruiters, and they're paid a percentage of your
starting salary as commission by the hiring organization.

~~~
coliveira
No we don't. Recruiters do not represent workers, they're payed directly by
the companies. Their goal is to hire as many qualified people for as little as
they can. Sure, recruiters will tell you that they have your benefit in mind,
which is partly true because they want the people they recruit to work out in
the long term, but they never lose sight of whom they're representing.

------
bignoggins
I think one of the reasons programmers are not paid as much is that by and
large, we are seen as interchangeable cogs. There are definitely exceptions,
but I think the companies that think this way are large enough to set the
market rate. For example, I used to work for a large defense company that
probably had more software engineers than every startup in the world combined
(we hired 10% of all CS graduates in the country every year). The prevailing
attitude was to pay as little as they could get away with because there is
always some new naive college CS grad to replace those who left.

~~~
roel_v
The thing is that programmers largely _are_ interchangeable. Of course, _you_
are a special snowflake etc; but at the end, the majority of programmers do
repeatable, simple work, e.g. writing line-of-business Java applications,
maintenance work like adapting Cobol code to work with new tax rules, writing
generic GUI's that work just well enough to justify the expense given that the
app has only a few 10's or 100's of users, etc.

For all of these things, when managed properly (i.e., rotate programmers
enough, take care of documentation, have strict coding standards etc), you can
get a new programmer who has had a 2 year degree in programming and 6 months
of training on the specific technology up to speed in such a project in a
week. That's not quite as interchangeable as a guy turning screws in a car
factory, but it's not that far off, either.

I realize that everybody likes to thing that they are so special and that
without them the world (and certainly their company) would grind to a halt),
but for the vast majority of programmers, it's simply not true. And for those
where it _is_ true, there is a large part where it's only true because
management allowed one person to become so entrenched in one place that
they've made themselves indispensable. And not because of the nature of the
work.

~~~
maxaf
> you can get a new programmer who has had a 2 year degree in programming and
> 6 months of training on the specific technology up to speed in such a
> project in a week.

And this is how crap code comes to be.

~~~
roel_v
Sure, but it works _well enough_ for many organizations. Very seldom is there
a business case to be made for a beautifully architected, extensible,
maintainable, useable (with useability testing etc) expense tracking
application. Throw something together that works well enough to produce the
output required and is integrated with other systems, write a 10-page manual
that explains the input formats (because sane input checking and error
reporting is for pussies - just display 'data input error' when the user
enters a date as dd-mm-yy instead of dd-mm-yyyy), write a 'policy' that people
only can get paid expenses if they use the application and voila, you're done.

And when you need changes in 3 years time - hire a contractor on fixed fee,
who cares that he will age 10 years in 10 days time; he'll move on to the next
pile of crap soon anyway.

~~~
roc
> _"Sure, but it works well enough for many organizations."_

Which is to say: organizations derive such fantastic value from software, that
even slow, buggy, late and over-budget projects, nor a _parade_ of such
projects, is enough to cause them to reconsider their approach.

Which is the answer to the original question.

Q: If software delivers so much value, why are programmers typically paid so
little and treated so poorly?

A: Because even _bad_ software delivers value far faster than most
organizations can incorporate it and there's no shortage of bad programmers.

------
kenver
My girlfriend's a finance lawyer for a really big firm, she earns about 50%
more than me and I image that in a couple of years will probably earn even
more.

To get this she is required to work any weekend clients need her to (even if
it means cancelling a planned holiday), any evening they need her to (pretty
much all of them) and she has to read boring stuff constantly.

I on the other hand finish work after my 40 hours and go home. If I want to
get some extra work I'll ask a couple of contacts if anything is going and go
to the cafe with a couple of beers and have some coding fun.

I don't accept that we earn a lot less than other professionals. My pay/hours
is certainly comparable to any other professional in the area I work, and I
love doing what I do. If I ever earn $500,000 I'm pretty sure the hours I put
in will be astronomical, and if that happens I'll probably die before I get to
spend the money anyway.

~~~
Flenser
_she earns about 50% more than me_

per hour or per year?

~~~
kenver
About 50% per year. If you work it out hourly, I do better. I know I'd hate to
work the hours she does though. I prefer to choose when I want to do extra
work and have time for personal projects and other things.

------
kemiller
I don't see this mentioned anywhere, but one very important difference between
programmers and the other professions is that doctors and lawyers have not
only a high bar to entry, but a legal monopoly. There is outsourcing of legal
review and radiology, but still not on the scale of programming. There's also
the matter that doctors save lives, and lawyers either bring justice to the
aggrieved, or keep you out of jail. OK, most of them actually _don't_ do those
things, but those are the images we have in our minds, and that's part of what
makes them respectable.

If we professionalized and forced anyone calling themselves a programmer to
meet a very high bar of competence, things would look pretty different. The
median salary would be higher. My guess is that we wouldn't see anything like
the dynamism of the startup community. Think of how slow-moving and
conservative both medicine and the law are compared to programming. You could
argue that that's not a bad thing, but it would certainly be very different.

I would love to see the top programmers get respect for doing what they do,
instead of having to become marketers, but I'm just not sure it's how the
world works. To make money, you have to convince someone else to give it to
you. Most people working in a job only make it linearly because they only have
a relationship with one customer. Many more fortunes are made by figuring out
how to serve MANY customers than are made by finding a single customer with
very deep pockets who needs you badly.

------
baltcode
One of the big reasons that lawyers and doctors make a lot more money is
because they use regulation and the coercive power of the state for the
benefit of their cartel. You are going to get a top of the line lawyer and pay
through the nose because your business, freedom, even your life may depend on
it. The number of lawyers and doctors is limited to an artificial shortage due
to bar exams and number of residency spots. Non-US bar exams and residencies,
no matter how qualified, are not recognized. That means a top neurosurgeon
from the most prestigious hospital in any country can not practice in the US
unless he spends 6+ years in a US residency program.

Now, does that mean that programmers should clamor for more regulation in
their trade? Of course not! for one, that would mean that the current lead of
the US in the tech industry would be replaced by over-priced, substandard
products and harm the culture of innovation and freedom. Instead, if many of
these regulations in other areas were brought down, young programmers making
60k won't have to pay exhorbitant sums for simple things like getting a root
canal or registering a business or fighting off patent harassment.

~~~
coliveira
I am not so sure that the free market does really offer what you're saying.
For example, a big problem in have in the US is that a lot of smart people
don't want to become programmers (for example, because they don't want to
compete with programmers from India). But it is well known that the USA has
more openings for programmers than available workers. So, it seems that the
free market is not doing its job of moving more workers to the field.

Regulation would have the very beneficial side effect that salaries would
increase, and therefore it would encourage lots of people to become trained in
the IT industry. This would not have an adverse effect in the competitiveness
of US companies. It is well known that salaries are just a small portion of
the costs for major software companies. Moreover, salaries for programmers in
the US are already way higher than in other nations, which doesn't seem to
have had a negative influence in the results achieved by these companies.

~~~
baltcode
Regulation would mean people being certified by the Louisiana Board of
Computer Programming for the Wizwoz system 2.0. Yuck! Some of the software
industry will move abroad, but even more most large countries will start
having local markets. The thing going for software is very fast innovation and
adoption, leading to IT, software, mobile undercutting a lot of traditional
industries and practices, and this is just the beginning. Stopping it would
mean killing the golden goose.

------
olalonde
I think it all boils down to the fact there's no such thing as free market
capitalism in America. All those well respected jobs you mentioned have
special privileges provided by the government. Banking, finance, law,
accounting and healthcare are heavily regulated industries. They don't have to
compete with third world countries nor with Americans without the proper
certifications.

Call me a libertarian, but I truly believe there lies the problem.

------
webrakadabra
Respect and money are two different things. Armed forces command great respect
and little money. Doctors command good respect and earn good money. But
Lawyers command little respect but earn lots of money.

Doctors save lives, Soldiers defend lives, Lawyers win you lives, Teachers
build lives. All of them impact lives, This is where respect comes from. And
Software programmers ? They make software which at best speeds up, accurate up
other primary professions. In that sense, Software programmer supports the
other primary professions. I say software programming is a support profession.

And then money ? Money comes from the value provided by a profession to
people’s lives. As of today, Software makes our lives easier but does not add
much of a value to life as other primary professions do. Software profession
helps but not create/add value to life by itself.

Even for a support profession, It takes time to mature and join the big league
of primary professions. Software programming is relative new entrant in league
of professions. It can wait until the day it will impact lives in a way we
have not known before rather than helping already known ways !

~~~
fjordan
I say software programming is a support profession.

Isn't medicine also a support profession? A good doctor will proactively
prevent sickness and death, while most will deal with it as it happens.

~~~
webrakadabra
when I say support proffession, I mean 'A proffession which supports other
Proffessions'. I did not mean it as 'A proffession which supports lives or
people'.

------
wyclif
I'm partial to some of this, but since others here have covered other problems
with your argument, I'll limit myself to one of your points that hasn't been
dealt with. You say:

 _Is it good for the country that Silicon Valley, arguably the best-performing
sector of the economy, has next to no influence in politics_

Next to no influence in politics? Seriously? All the major software companies
(GOOG, MSFT, APPL) spend enormous sums of money on lobbyists to influence the
passing of favourable laws in Washington:

 _[Google] now has 12 lobbyists and lobbying-related professionals on staff
here -- more than double the size of the standard corporate lobbying office --
and is continuing to add people.

Its in-house talent includes such veteran government insiders as
communications director Robert Boorstin, a speechwriter and foreign policy
adviser in the Clinton White House, and Jamie Brown, a White House lobbyist
under President Bush.

Google has also hired some heavyweight outside help to lobby, including the
Podesta Group, led by Democrat Anthony T. Podesta, and the law firm King &
Spalding, led by former Republican senators Daniel R. Coats (Ind.) and Connie
Mack (Fla.). To help steer through regulatory approvals in its proposed
acquisition of DoubleClick, an online advertising company, Google recently
retained the law firm Brownstein Hyatt Farber Schreck._

[http://www.washingtonpost.com/wp-
dyn/content/article/2007/06...](http://www.washingtonpost.com/wp-
dyn/content/article/2007/06/19/AR2007061902058.html)

~~~
OstiaAntica
I work in DC. Outside of telecom, tech is very under-represented and is
ineffective at manipulating the levers of power. It is getting better, but to
put Google's 12 people into perspective, the AMA has over 200 DC lobbying
staff.

~~~
_delirium
Any idea how the "old-line" tech companies are in comparison? Does IBM, for
example, have any effective influence?

------
onan_barbarian
This is a startling array of claims, which is unfortunate, as there's a
reasonable debate to be had here.

Unfortunately, I think starting off with a tl;dr rant, including such howlers
as comparing the growth rate of a developing and a developed country isn't the
way to get going, not to mention citing Microsoft's _current_ leadership as
evidence that programmers can't get anywhere. Erm, I vaguely recall someone
else running Microsoft on its way to success... Bill someone?

As an aside, given the vast amount of political crackpottery - plenty of which
is in evidence here at HN - among programmers, I have to say that I'm not
hugely saddened that congress isn't stuffed with developers.

There's a serious debate to be had here, but not with this wild, ranting start
from a throwaway account.

------
jezclaremurugan
One reason salary is too low for programmers, a normal engineering grad
joining Infosys, TCS, Accenture, Cognizant etc. in India, is paid approx
$10,000 and you guys compete with them for jobs.

PS: I am an Indian, working in one of those jobs.

------
Spyro7
_This is a fantastic post._ It is well written, and I agree with many of the
authors points. Far from being angry, I think that the majority of people
reading here on HN actually appreciate this type of critical analysis, and I
think that it is a shame that it had to be posted on a throwaway account.
However, I would like to present some alternative viewpoints for a few of the
issues brought up in this post.

 _"As a doctor, however, someone like this - a top professional at the peak of
their career - would probably make about $400,000. Partners at big law firms
commonly net a million a year. Investment bankers are making several million
(post-crash!). Top management consultants easily clear $500,000. Even a top
accountant - probably a partner at a big 4 firm - would make two, three, or
four times as much."_

Hold on a second. What is the point that you are trying to make in this post.
You say that you are talking about comparing computer programmers as compared
to other highly skilled professionals, but then you narrow your focus to the
highest percentile in each category. How many lawyers are partners in a big
law firm out of the total number of lawyers? How many of these top management
consultants clear $500,000?

The top performers in every industry will always make a salary that is
amazingly higher than the median. However, _unless you know the exact
distributions of the salaries in each industry you can not meaningfully
compare top performers_. What good is it to know that a certain lawyer makes a
million dollars a year without knowing how probable that outcome is relative
to some more dreary alternatives.

When I started reading your post, I started reading it with the expectation
that you were talking about the general market for programmers. Then about
halfway through, it seemed to me that you had switched to talking about the
very highest performers in the highly skilled labor market. Well, if that is
what we are going to be talking about, then we should focus on it.

Look, the highest performers in the computer programming field are no longer
called computer programmers. They are called CEOs and there is a high
likelihood that they are very, very well compensated relative to the best
performers in many other industries. However, as I said earlier, it is
pointless to throw around anecdotes about how this 99.999th percentile
individual made millions or this one made billions.

So, let's get back down to earth, and try to find some passably good numbers
(not perfect, but better than nothing) to use as comparison points. Let's look
at some numbers that may be more relevant with what someone around the 50th
percentile would experience. All of the following links display ranges for
salaries in each field. No, they are not the best samples available, but they
are better than going without any data whatsoever.

Note: As stated on the site - all compensation data shown are gross, national
from the 10th to 90th percentile ranges.

Physicians:
[http://www.payscale.com/research/US/People_with_Jobs_as_Phys...](http://www.payscale.com/research/US/People_with_Jobs_as_Physicians_%2f_Doctors/Salary/by_Years_Experience)

Note: Physicians must have several years of residency as well as an M.D, so a
programmer would already have 5 to 9 years of experience compared to a
physician that is just beginning.

Lawyers:
[http://www.payscale.com/research/US/Job=Attorney_%2f_Lawyer/...](http://www.payscale.com/research/US/Job=Attorney_%2f_Lawyer/Salary/by_Years_Experience)

Lawyers in the states typically need a J.D. before they can actually begin
being a lawyer, and law school is very expensive. I should also note, that the
gravy train is slowing down dramatically for lawyers -
<http://www.economist.com/node/18651114>

Software Engineers:
[http://www.payscale.com/research/US/Job=Software_Engineer_%2...](http://www.payscale.com/research/US/Job=Software_Engineer_%2f_Developer_%2f_Programmer/Salary/by_Years_Experience)

Sr. Software Engineers:
[http://www.payscale.com/research/US/Job=Sr._Software_Enginee...](http://www.payscale.com/research/US/Job=Sr._Software_Engineer_%2f_Developer_%2f_Programmer/Salary/by_Years_Experience)

Sr. Business Analyst:
[http://www.payscale.com/research/US/Job=Sr._Business_Analyst...](http://www.payscale.com/research/US/Job=Sr._Business_Analyst_\(Computer_Software%2fHardware%2fSystems\)/Salary)

System Admins:
[http://www.payscale.com/research/US/Job=System_Administrator...](http://www.payscale.com/research/US/Job=System_Administrator%2c_Computer_%2f_Network/Salary/by_Years_Experience)

Computer Programmers:
[http://www.payscale.com/research/US/Job=Computer_Programmer/...](http://www.payscale.com/research/US/Job=Computer_Programmer/Salary/by_Years_Experience)

Management Consultants:
[http://www.payscale.com/research/US/Job=Management_Consultan...](http://www.payscale.com/research/US/Job=Management_Consultant/Salary/by_Years_Experience)

Investment Banking: [http://www.payscale.com/research/US/Job=Associate_-
_Investme...](http://www.payscale.com/research/US/Job=Associate_-
_Investment_Banking/Salary/by_Years_Experience)

Accountants:
[http://www.payscale.com/research/US/Job=Accountant/Salary/by...](http://www.payscale.com/research/US/Job=Accountant/Salary/by_Years_Experience)

Sr. Accountant (numbers look a little screwy here):
[http://www.payscale.com/research/US/Job=Senior_Accountant/Sa...](http://www.payscale.com/research/US/Job=Senior_Accountant/Salary/by_Years_Experience)

Looking at those numbers, it does not seem to me that there is anything
particularly wrong with computer programming as compared to other highly
skilled professions. As a matter of fact, given that one can become a
programmer without needing additional certification, it seems to me, at least,
that computer programming is a great field to be in.

 _"What \"programmers can get rich in startups\" really means is
\"entrepreneurs can get rich in startups\", whether they're programmers or
bricklayers."_

What is the percentage of bricklayers that get rich creating a startup? I
don't have the number offhand, but I do know that there is no "Silicon Valley
equivalent" for bricklayers. If there was really that vibrant of a bricklayer
startup industry, then, due to agglomeration, you would expect there to be at
least a few geographical areas where there was a high concentration of
bricklaying startup business being conducted (think something like Wall
Street).

 _"I think it isn't. I think the country would be better off if MIT computer
science students, like their neighbors at Harvard Law School, could dream of
growing up to be President. And I think we'd all be better of if computer
science wasn't just seen as a major for socially awkward nerds."_

I agree completely, and, actually, I agree with many of your other points as
well. That's the thing though, when you are talking about programmer respect
it seemed as though confused several different "types" of respect -
compensation, entrepreneurship, political pull. With regards to the first type
of respect (compensation), I disagree with you because the data for
compensation suggests that an alternative hypothesis may be true. With regards
to the second type (entrepreneurship), I cannot definitively definitively say
either way but neither can you because the data needed to compare the numbers
of successful entrepreneurs in different industries does not seem to be
readily available.

With regards to the third type (political pull), I agree with you, but I think
that perhaps their are deeper things. I have some hypothesis:

1\. Perhaps the skills that it takes to do well in politics in the U.S. are
somewhat orthogonal to the skills that it takes to build a multi-million
dollar software firm from nothing and run it? How could an engineer win an
election where the campaigning generally consists of 5 second soundbites and
smear campaigns?

2\. Maybe the problem is the general youth of the industry. The software
industry is in its infancy. Maybe, over time, as it grows deeper roots, it
will acquire more political power and influence? This is a fairly likely
hypothesis.

Finally, I would like to address one last point:

 _"When the government wants to bring in more workers from overseas - which
obviously lowers salaries, and reduces job security - who do they bring in?"_

The problem is actually not so obvious:

* Are the programmers entering the country working in the same exact fields and at the same levels of expertise as the programmers that are local? If this is not the case, then the impact on pre-existing salaries would be negligible.

* Are the programmers entering the country located in similar geographical areas to the programmers that are local? If this is not the case, then, again, you are not likely to see much of an impact.

* Do the programmers entering the country require additional training as compared to local programmers? If this is the case, then they would have lower compensation not because they are willing to work for less but because they are being compensated in the form of additional training.

* Is the industry rapidly growing? If this is the case, then it may be conceivable that existing programmers and programmers entering the country would both benefit as the growing industry has room for them both.

* Of course, one can always increase pay through artificial scarcity, but the problem with doing this is that it ends up costing society by resulting in a deadweight loss - consumer and producer benefits that are never obtained due to artificially high market prices.

* There are quite a few other things, but this post is now more than long enough, and I really need to get back to work.

~~~
thomasgerbe
Funnily enough, many political representatives in China are engineers.

~~~
16s
India too. "If you are not an engineer, you are nothing" I was told that by a
friend from India once.

~~~
kubrickslair
I don't want to come off as arrogant but I should say this. People generally
do not select engineering as a profession in India- it's one of the default
professions for most of the middle class.

I have been involved with computers since I was 6, so for me it was a pure
choice. But most of my friends, some of them working for big name SV places
don't really love or care about software or technology. In fact, some of them
actively hate their jobs. Unlike in America, where people actually go to
computer science because they love it. In India it's just the default way for
a better life.

~~~
tejaswiy
+1. I would hate to classify any Indian politician as an engineer. More like
chose the easiest career path to get a decent amount of respect + a degree and
moved into politics.

Influence can buy you grades and admissions in India :/

------
kelleyk
There are a number of points I'd like to disagree with, but to start:

\- $150,000 is much less than a top-flight engineer like the one you're
describing might make; it's not out of the realm of possibility for what an
engineer with a good pedigree might make his first year out of school, if he
went to work for a big company.

\- The engineer went to school for four/five/six years and then went to work.
The doctor who earns $300-400k went through a four-year university degree,
four years of medical school, and a residency or fellowship before he started
earning money. Some specialists, like neurosurgeons, take at least 11 years
after getting their undergraduate degree before they really "get their wings."
Not only are their then-substantial salaries offset by the huge delay in
getting those salaries (residents make, what, $35k?) but they also have to pay
for things like malpractice insurance, which can be in the six-figure range.

~~~
bignoggins
150K right out of school? I've never heard of anyone making that much in the
valley, maybe 100K tops.

~~~
timcederman
I've heard $130k for top students is not uncommon.

~~~
timcederman
Downvoting me doesn't change the fact that I've seen offers for top CS
Stanford grads for $120k for undergrad and $130k for master's, and that was a
few years ago.

------
PostOnce
Some of the mentioned professions, law, accounting, medicine, legally require
a degree, a minimum number of years invested in school, continuing education,
and a license. Then there are malpractice suits, longer work hours, doctors
being on-call, etc. If you fuck up as a doctor, someone dies. If you fuck up
as a programmer, you might cost someone some money. Usually nothing happens,
you just fix it.

Computer programming is one of the very, very few fields where you can make a
lot of money doing very little work without having even a GED.

Plenty of programmers make 80-100k/yr, and a great number of lawyers make less
than that. How many state-level attorneys make <70K? You'd be surprised.

In summary, programmers have other advantages than pay, and still get paid
rather well considering the low barrier to entry in that profession. My work
situation is pretty plum, and I don't exactly have a formidable resume. I'm
grateful. If I were aiming to be a doctor, lawyer, or accountant, I'd still be
in school. And in the long term, I'll end up making more than if I pursued one
of those paths, I'd wager.

------
bglbrg
Regarding governance - most ambitious politicians appear to be extroverts. I'm
not an engineer but there are many in my family and they're not the most
gregarious sort. Is this an inaccurate stereotype? I wonder if despite highly
intelligent, moral attributes, our technologists, research scientists, etc.
are not attracted to the intense social demands and / or rewards of politics.
Are our smart, worthy introverts "opting out?" If so, it's a shame. But on the
other hand, no-one will be coming by to tap you on the shoulder for such
roles, even my neighborhood councilman has to hustle.

------
mnutt
One of the many differences between programming and medicine, law, etc is that
entry into the latter fields is tightly controlled by governing bodies.
Anybody can read a programming book and start working, but only so many law
students graduate each year. So in that sense it's not that programmers'
salaries are artificially low, it's that those other professions pay
artificially well.

~~~
hollerith
At least in the U.S., there is no effective pressure by the profession to keep
the number of practicing lawyers low.

~~~
mnutt
Ah, you're right. Though while it doesn't put a hard limit on the number of
lawyers, it does limit the number somewhat by the requirement that you have to
attend 3 years of an accredited university and then pass the bar exam.

------
pradocchia
Barriers to entry in programming are still low, and programming itself is
still fiercely creative and competitive. Just look at all the languages,
frameworks and platforms.

By comparison, law and medicine have long since circled the wagons. It used to
be that to be a lawyer, you only needed to pass the bar in your state of
practice. Sure, many aspiring lawyers did attend law school, but the
profession was not hermetically sealed. Today, you have to pass the bar _and_
have graduated from an accredited law school, at tremendous cost. Same story
w/ medicine.

So these $400K salaries do not translate to $400K in value produced. Maybe
$100K, maybe $200K, but the remainder is rent-seeking. Meanwhile, your modest
salary of $75-150K if anything _undervalues_ your product. And this is good!
You have a produced a surplus. You are the engine of progress. Yes the
rentiers will take their cut, but the rest returns to society and benefits
society.

------
kayoone
Doctors, Lawyers etc usually work and bill by the hour. Be a top software
consultant and you can make $200k-500k a year as "easy" as those other fields.
Of course its still not easy to make $500k a year, but it also isnt that easy
for the other jobs you mentioned. You need to be really good, have good
clients with deep pockets who have lots of work for you and its probably
easier to reach that kind of money than with other jobs.

------
billconan
agriculture is important, crucial and fundamental to human beings, while
farmers don't usually get paid too much.

Maybe lawyers shouldn't get that much money. Sometimes, they just don't
contribute to humankind. Look at the patent war.

Maybe programmers are underpaid, But I think someones else are overpaid.

~~~
deleo
It's not that lawyers are overpaid, it's just that they don't compete with the
world for prices and they all agree on certain prices in their own market. You
can't outsource a lawyer to India because he most likely doesn't know US law.
Also we programmer have this extraordinarily poor ability to SELL ourselves.
We should try to factor in the time we bill the time it took us to get to that
kind of knowledge we have, like pharma companies factor in the cost of
research and then sell a single blue pill at 20US a pop!

~~~
mnutt
There's no reason a lawyer in India couldn't learn US law. He probably
wouldn't even start very far behind US citizen. The real problem is that he
can't set foot in a US courtroom without a visa.

~~~
pessimizer
There's an amount of legal work currently outsourced to India - things that
can be legally outsourced, that is. Currently, the class of things that can be
legally outsourced is small (research + writing + document review.)

random google survey:

<http://www.pangea3.com/> <http://sqglobalsolutions.com/>
<http://www.sunlexis.com/> <http://legal-process-outsourcing.com/>
<http://www.legaleasesolutions.com/>

Here's a list last updated in 2008:
[http://www.prismlegal.com/index.php?option=content&task=...](http://www.prismlegal.com/index.php?option=content&task=view&id=88&Itemid=70)

To me, this is indication that there's a flood being held back by legislation.

------
tomjen3
We don't get any respect because people respect those with power (notoriously
not programmers) and those who can put on a good show (sport stars,
politicians, celebrities).

Carrying the world on ones shoulders (if that is indeed what programmers do)
is not something that gives respect.

------
alexro
Software is eating the world and we are part of that world, so software is
eating us too!

But unlike lawyers, doctors and bankers we don't have artificial barriers make
the industry protected.

~~~
atomicdog
So what we really need is a proper professional society, or even unions.

------
alexro
Don't you think that the real reason for their prosperity is that doctors,
lawyers and bankers create their wealth collectively and sometimes
collaboratively robbing people?

They create work for themselves with some hardwared awareness of their needs.

One doctor doesn't do all the job on yourself, sometimes does a bad job on
their subject matter and you get to spend thousands to have this fixed.

Lawyers set up laws that everyone needs to follow and you need other lawyers
to help you with that.

I don't even start talking about bankers ...

When programmers become congressmen or create a closed industry like medical
services then we can talk about wealth y developers.

------
hessenwolf
To the business world, you work in IT. They don't understand the difference
between the person who plugs in the monitor and the person who designs their
perfectly modularised accounting software landscape.

It sucks, but there is a major education gap amongst non-techs about what
computer people do.

------
gcv
(Lots of great comments in this thread, on all sides of the issue. Bravo, HN!)

One thing to keep in mind when comparing programming to law and medicine: a
high-school dropout can be an adequate programmer and earn a good living
writing Rails (between 65k and 90k at start, depending on location). Most
other high-end white collar jobs require extensive education. A physician has
to put himself through college, pre-med, medical school, residency, possibly a
fellowship, and only then commands a high income. A 30-year old orthopedic
surgery resident making 45k probably isn't thrilled that he has another five
years of indentured servitude before he can claim a serious income and start
paying off 250k of medical school debt. Law school is similar. Using an MBA to
switch careers into finance is similar.

In essence, programming jobs can trade off relatively high income early on for
an income which maxes out in the late 20s or early 30s. Law and medicine start
with much higher requirements, take much longer to spin up, but have much
better-defined career paths leading to higher income.

Entry-level Wall Street jobs (I mean real Wall Street jobs, not IT) work a
little differently, in that they do offer excellent income up front and a
lucrative career path, but require a degree and high GPA from a top school to
get in. So they aren't really representative of an opportunity which most
people have.

------
jmra
The world runs on electricity, education, petrol, food, construction,
clothers... what is really happening and what Andreesen should be saying is
that now software is totally mainstream, not a hobbie or a hackers thing. And
as so, we are part of society. But, you know, most people work in important
industries and yet doesn't have the respect they deserve. Think in food supply
or water supply, when was the last time you found someone famous related to
water suply, which who was awarded and so?

------
SudarshanP
The lawyers/MBAs and doctors will be disrupted. This is already happening...
Then they will be on the streets. all the low level jobs in Backoffice and law
is getting outsourced. So if u r getting into law... u should actually be
capable of creating value. Just look at all those industries that Apple Amazon
etc are disrupting... No Newspaper also means the news paper does not need
expensive lawyers, MBAs etc. Of course you could say Apple,Amazon,Google etc.
will need the lawyers MBAs etc. But these few players need far less external
help and glue coz they have captured most of the supply chain.

Imagine a device where u put a drop of blood/urine etc and out pops a
diagnosis. Imagine a pharma company in a box which synthesizes a medicine on
demand using basic raw materials. Then there are diagnostic solutions like
IBMs Watson...

Education and healthcare will take much longer than
Print/Retail/Music/Advertising/Communications to get disrupted... When these
get disrupted, they will hurt more than they needed to coz of enjoying the
protectionism.

There will always be demand for Good
Doctors/Teachers/Programmers/Lawyers/MBAs... But those whose existence depends
solely depends on protectionism or monopolies are going to see their jobs
disrupted.

------
HaloZero
I think one issue that maybe takes into account is that all the professions
mentioned that do have respect (except wall street bankers of course) are
professions that directly interact with people.

Software Engineers on the other hand build a product, which faces the user,
but you never really get to see the programmer or interact with him. Our
impact on society is a second step from the software that we create.

------
brndnhy
Once the fruits of someone else's labor is a concern, you've lost.

Stay interested and keep working hard.

We're people who build things.

Our fortune is a natural one -- not money and not even respect.

It's that we are getting paid to learn new things every single day.

~~~
atomicdog
>We're people who build things.

True. But if I'm building something _for someone else_ I'd damned well better
be getting paid for it.

------
oldpond
Interesting post. I have to agree with you that there is something wrong with
our line of business. I think part of the problem is that we are still feeling
the affects of the "lights out operations" fad from the nineties. This was
when "Big IT" convinced all the companies to automate an outsource. That's
when we first became a liability to our companies instead of an asset. Since
then there's been a couple of distractions in the IT industry (Y2K, dot.com
bubble, and the current get-rich-with-the-cloud phase), but for the most part
I still feel business sees us as an unfortunate necessity. My kids have had a
keyboard in front of them since they could sit up straight, but neither of
them are interested in an IT career. I think we are a lot like plumbers now;
everyone wants a flush toilet, but nobody wants to deal with the pipes.

------
hxa7241
There is a big confusion here between personal credit and objective physical
properties.

Software is 'eating the world' because it is the most super-efficient building
material ever invented.

You could say the wheel 'ate the world', but not because each person making
each wheel is a genius, but because of the general physical properties and
value of roundness. The overall benefit is not a matter of individual credit
or respect, it is a matter of physics.

We should be paying the total programming workforce for the total (personal)
effort required, not the absolute (objective) 'value' returned. The excess of
value is _gain_ : you do not need to pay anyone, it is a free gift from
physical reality.

Now, whether programmers' pay compares 'fairly' with anyone else is still an
open question, but the physical facts of software being great stuff does not
(or should not) seem to justify one side or the other.

------
Atropos
Some of the professions you mentioned like biglaw firms, bankers, management
consulting are lucky to operate very high up the "value chain". Look at the
Motorola-Google deal: $12,5b purchase prize, and a $2,5 billion fee that
Google has to pay Motorola if the deal falls through for any reason. At these
high dimensions the exorbitant bankers/lawyers fees are more like a rounding
error. Of course you can say it is not "fair" in a higher sense that they get
to capture this value, but to say they don't add value is unrealistic as well.

------
adamrneary
I'm surprised that so many of the comments/replies to this post accept the
premise that programmers are underpaid and don't get respect.

Everyone I know who writes code is making a hell of a lot more than people who
aren't. The people I know at Google aren't making $150k. They are making a lot
more and would be making a lot less as a management consultant or a politician
or whatever else.

In fact, to say that top management consultants clear $500k is true, but top
engineers clear a lot more, both of those industries strike me as massively
paid industries.

Then there's banking. Engineers at banks make ridiculous amounts of money just
like non-engineers working at investment banks.

Sure, there are engineers working for $60k just like there are management
consultants working for $60k.

But I know a lot of unemployed management consultants, and I don't know a
single unemployed engineer.

So I think people have raised very interesting thoughts about why doctors make
more or less, but I couldn't get past the premise of the article. I think
engineers are making a ton of money, and they deserve a ton of money. I think
they get a ton of respect, and they deserve it.

Maybe that's just what I'm seeing. But particularly when you then say that
teachers are paid more than the average American, I start to wonder who this
mythical "average American" is, particularly knowing that my sister is a high
school teacher and has to buy her own chalk. She would probably disagree with
the article based on all the corvettes and teslas sitting in the Google
parking lot.

:-)

------
grammaton
Programmers are janitors.

Everyone wants software, but no one really respects the developers. Just like
everyone wants a clean building to work in, but no one really respects the
janitor.

------
ClintonWu
Great thought provoking post. I think two sentences in your post truly answer
the question "Why Don't Coders Get Any Respect?"

"But for some reason, unlike just about every other profession, programmers
seem to have an aversion to asking for more pay and more respectability." and
"And I think we'd all be better of if computer science wasn't just seen as a
major for socially awkward nerds."

As a non-programmer, I think the perceived lack of
communication/influence/negotiation "soft skills" has become the group's
reality. Obviously there are exceptions, but the natural tendency is to think
programmers are introverts, who don't innately have or haven't been taught the
skills involved in negotiating higher salaries and gaining power through
office politics/informal communication methods.

Maybe the act of programming in the US creates a natural selection bias
towards a certain type of person and maybe that person isn't a natural fit in
positions where communication, both formal and informal, is a key requisite.
Or maybe the programmer just doesn't care. Either way, I think these skills
can be learned to some extent and wouldn't mind seeing more programmers in
power positions in companies and in the government.

------
SleepingBear
Overall good post, but I have one problem. You say that because China is run
by engineers, it is on the right track. First, economies are very complex and
there could be several factors that are causing China's economy to grow, I
doubt having leaders as engineers matters too much. The US economy has grown
too, and it wasn't run by engineers. Shouldn't we also give the lawyers and
politicians in charge credit for the times our economy was growing, instead of
grief for what's happening now?

You also say: "Sure, they have problems with pollution and corruption, but so
did the US when we were industrializing. Overall, though, they're on the right
track, and the US is not."

If engineers were better leaders than lawyers, wouldn't they be able to
industrialize with minimal pollution? Instead, they're industrializing in
similar ways that we were.

Also, China seems like a lousy place to live compared to the US with regards
to personal freedoms, but I wouldn't go out and say that lawyers care about
freedom and engineers want to govern with absolute control.

Sorry if I seem to be focusing on only 5% of the post, I just wanted to get
that thought out. All that said, you bring up some very thought provoking
points.

------
arethuza
"To be one of the highest-paid, most-wanted jobs. It isn't. Why not"

Because the barriers to entry are really low and there is a vast supply of
people willing to have a go.

And, I have to say, compared to many fields most development isn't actually
_that_ difficult - I suspect a reasonably intelligent and motivated person
could probably be trained to do 95% of all development jobs within a year or
so.

------
vesrin
What I don't understand is why you are trying to compare programmers with
doctors and lawyers. Why not choose fields that are more closely related and
let's see how the average software developer is doing vs. those working in
those fields?

For example, let's say, electronics engineer - I would hazard to say that the
average software developer is earning higher than the average circuit
designer.

Sure, you are saying that software is pervasive in our lives and extremly
important - but all software runs on some hardware, which was designed by an
electronics engineer.

Engineering and science related careers have never been amongst the top paid
jobs in the society we live in - and you could argue for many engineering
fields that they are amongst the most important jobs in our current economy
(be it construction engineers, automotive, aerospace engineering, energy
production, whatever). I don't really see why programmers should earn much
more than people working in these fields.

------
mattm
Anecdotal but I was recently contracting for a place that was developing web
software for the first time. Even though I had pretty much wrote all the code
on their system with them having hired and gone through 5 other programmers,
the comment that caused me to leave was

"Why are we paying this guy when we could just hire someone from high school
for $10/hr?"

~~~
noarchy
You can also outsource the task to India for a similar amount, or even less,
and get someone who will be better than a high schooler. That's the thing that
should make some North American developers nervous.

~~~
mattm
I don't know about that. I've been approached a number of times by people who
tried to outsource cheaply to India or China and then realised half-way
through the project it was a mess and now they needed someone to try and
salvage it.

It doesn't make me nervous at all. If someone wants to hire developers to
build a complex system at $10/hr then I encourage them to do it and see how it
goes.

------
rameshnid
In my opinion, software is a risky business, like hollywood. You probably can
act better than Depp but you are struggling because you have not yet been
noticed or given an opportunity.

Your best bet is to love doing what you are doing - acting or programming.
Also plan your life according to what you are making and be content. Leave the
rest to fate.

------
analyst74
Aside from the many good points being raised here. I'd like to add 2 more:

1, in terms of making money, there is a mis-match within programmer world. You
earn respect from other programmers by being great programmer, not by making a
lot of money. So you are in a hard-spot if you strive to be a great programmer
and rich.

While on the other hand, most dentists, lawyers, bankers's status within their
own circles are highly related to their financial success.

2, the world of programming does have barrier of entry, not to the general
run-of-the-mill programming jobs, but to programming jobs creating high
values. You can come off the street and make a website, which don't make you
rich, but you can't just start doing financial programming, or work for Google
without some proven track record.

------
nivertech
Software is just automation. You need to know problem domain to get any
respect.

Traders in Hedge Funds will always get more respects than quants.

Physicists and Electronics engineers in Semi industry will always get more
respect than software engineers.

Sales guys will get more respect than programmers in companies like EMC or
VMWare.

Etc.

------
nihilocrat
Because our main job skills do not revolve around self-promotion and
manipulation of others.

------
hpguy
If everyone visits a restaurant every now and then, why don't waiters get any
respect?

If everyone needs a house, why don't builders get any respect?

If everyone needs their streets clean, why don't cleaners get any respect?

If everyone's children need babysitting, why don't baby-sisters get any
respect?

If you don't think you receive enough money and respect being a programmer,
why don't you do s/t else, being a doctor or management consultant for
example?

Why someone has to pay 500K for a job that s/he could hire a H1B person to do
at 1/10th the rate?

Comparing job to job is like comparing orange to apple. Let the market decides
how much software engineers should earn and are respected. If Adam Smith is
correct, the market is pretty good at that.

------
nosnhojn
I think there are some good points here but I always find the premise behind
posts/articles/arguments like this a little silly. I don't think there's any
correlation between respect and salary. And getting too caught up in what
others think of you and your work is effort/thought/time wasted. Pick a career
you like, do it well and respect yourself. If you get more out of it than
that, great, but don't expect any more than that. Setting out on a "quest for
respect" is more than likely going to end in disappointment regardless of
whether you're a doctor, lawyer, engineer, bricklayer or some poor, poor
programmer.

------
h_roark
Architects are the original programmers. They are the master builders who
conceive of the built environment that no computer programmer could live
without. They fulfill a basic need and (arguably) practice the highest form of
art. They complete a level of education comparable to any lawyer and most
doctors. Yet even an architect who runs their own successful, mid-size firm
would be lucky to turn over $150,000 working 70 hour weeks. Did I mention they
take on the liability of life, safety, and well-being of the general public
with every decision?

Just sayin'... compensation isn't logical, and it sure as hell isn't fair.

------
scottjad
> Given how important [education] is, then, you'd expect [teachers] ... to be
> one of the highest-paid, most-wanted jobs. It isn't. Why not?

The wages for teachers and programmers are set the same way as the price for
any good, e.g. bananas.

Not by vague notions of importance, value, or respect, but by supply or
demand.

When people start arguing that foo good (profession) with a low price (wage)
is inherently more important than bar good, I think of a person arguing that
bananas are more important than apples and should have a higher price,
disregarding their supply and demand differences.

------
perfunctory
> Saying there's a "shortage" is economically the same as saying that "we
> don't want to pay you guys enough to meet the demand for labor".

Indeed, it's like saying that there is a shortage of super yachts for people.

------
factfinder
Work hard and replace all those professionals with robots. But make sure that
the robots are under your control. At that time all of the payments will go to
the computer professionals.

------
seri
The content of the orignal post may be questionable, but I feel it was written
in a way that would trigger a heated debate. For that, mission accomplished.
There has been many wise comments, but they all choose to take a branch of the
post to dig into. Not to blame them, as the question raised here is basically:

    
    
        The software industry has huge impact on human lives 
        but such impact has not been materialized in terms of
        both cash and social status for its practicioners. 
        True or false? 
    

And it boils down to too many things to talk about all at once. Maybe it would
help to break them into sub-topics to make it easier to link the seemingly
disconnected but insightful points posted here:

1\. Are lawyers and investment bankers overpaid? If they are overpaid, one
can't say software engineers are underpaid by comparing to them.

2\. So the software industry impacts lives, but is it all positive? Maybe
society isn't that much better off with all this digitalization. There is a
chance that the total value of the industry is being inflated.

3\. Are we concerned that the median and average salaries of software
engineers are too low (a), or are we concerned that the elite programmers are
not being paid as high as top attorneys (b)? We can solve (a) by raising
barriers to entry, much like in other elite fields, but is that a good thing
to do? As for (b), elite programmers are now called startup founders. If
entrepreneurship is made easier in the software industry, then things seem
fair.

4\. Now speaking of social status, I think programmers aren't cool because
nerds aren't cool, not because they are paid less. Pick a programmer and an
accountant with the same salary, and the accountant is more likely to shine in
social outings. But if the whole industry raises its average salary, then yes,
the social status of being a coder will increase. We are back to the question
raised in (3a).

5\. About political power, I think this is more of a problem with motivation.
To be motivated enough to run for office, you have to be hungry for fame and
power. However, it's a good point that the government could benefit from
having more top engineers. See a related post:
[http://lemire.me/blog/archives/2011/08/22/linux-and-the-
fina...](http://lemire.me/blog/archives/2011/08/22/linux-and-the-financial-
crisis/)

6\. Is China really on the right track?

------
wehriam
Bill Gates, Larry Ellison, Jeff Bezos, Larry Page and Sergey Brin started as
software developers and among the richest people in the world. Top tier IT
professionals - directors or C level, successful entrepreneurs or finance
standouts, all make gobs of money by almost any professional standard.

Software developers have unique opportunities and a culture of meritocracy.
(It's hard to imagine a freelance actuary.)

------
josepsanzcamp
It's true and false for me. I think the main problem lies in ourselves. We
must go around with their heads held high and announcing to the whole world:
we are a programmer. The real problem is that we ourselves, the programmers,
do not see the value of our work. Thanks to the doctors, people do not die and
are cured of their diseases. Well, thanks to the programmers, computers can
run programs, and increasingly, higher quality. I have programmers friends
that his dream is an MBA or something else required to climb in the
profession. To my mind, I think are wrong. They tell me that not want to be 50
years old and continuing with writting code. I differ from them because if I
want to be 50 years and still write code. I understand that the first change
require that we change our work perspective. It's needed to understand that
programmer it's an inportant piece of the current society. Without
programmers, a lot of companies die directly. The programmers, are currently
working the lines of the future and they are the responsible of stablish and
maintain the social status. It's important understand that only the
programmers can do the programmer work and must appraise the done work. Until
the programmers don't understand that programmer work it's important, serious,
complex, with responsibility, that requires constantly study, then the society
does not change the view of the programmers. It's our work demostrate the
importance of our work, the value of our thoughts and our contributions to the
society (as the doctor that cure the diseases).

------
gdilla
A simplified view is supply and demand. There's only like 600 major league
baseball players and their average salary is 4mm. Rare group to get into.
There's fewer doctors than engineers or coders. And it's not like you can jump
on elance and have someone remove your tonsils. And with greater supply comes
greater variability in skill and salary.

------
Draconar
It strike me as odd that nobody here talked about happiness and about enjoying
her job/work life. I read in some book from Dr. Martin E. P. Selligman that
law is the profession in which people are more susceptible to depression and
other mental health issues (statistically speaking). So much for your millions
and society's appraisal, eh?

------
jannes
Programming is art. And artist usually don't get paid too well. Artists either
have to be entrepreneurial or very good at their craft in order to get rich.

Like most arts, programming can be learnt by yourself without any teacher, but
there are also schools, universities and books for it, if you want to know
more about the background and history.

------
beezee
One major flaw with comparing programmers to doctors and lawyers is that
there's no acknowledgement of liability. It is far more often the case that a
lousy lawyer or doctor puts lives at risk than it is a lousy programmer does,
and liability is one of the most justified determinants for compensation.

------
cpeterso
Is dress code a factor? Would you want your lawyer or doctor to have Star Wars
toys and Nerf guns in their office?

I propose "Formal Friday", where programmers wear ties and nice shirts (or
skirts, as appropriate).

~~~
rcfox
> Would you want your lawyer or doctor to have Star Wars toys and Nerf guns in
> their office?

Well, that depends... Do I get to play too?

------
petervandijck
One data point: companies that hire programmers seem to work a lot harder at
making it a fun/good place to work than companies that hire laywers.

Perhaps programming is just more fun?

~~~
kree10
Yes, though I think this plays into the poster's point about respect/prestige.

Right or wrong, a popular perception in the USA is that a lawyer wears nice
clothes to work, and likes to unwind with a round of golf, fine scotch, and a
cigar. Whereas a programmer is an overgrown teenager, wearing ripped jeans,
playing video games, and drinking Red Bull. _Of course_ the lawyer should earn
more than that guy.

~~~
pnathan
Yeah, I think it's important to have the 'professional' costume for that
reason.

I mean, I've seen startups advertising their company kegs in recruiting. Like
_that's_ going to get you any respect from anyone but an early 20-something...

~~~
vynch
Case in point : Yelp

------
TomGullen
Supply and demand, can't really say much else. That's usually the biggest
driver for wages and something you have neglected to recognise.

------
Joshim5
There is nothing stopping MIT graduates from having government positions. The
PM of Israel, Binyamin Netanyahu, is a graduate of MIT.

------
entrepreneurial
You have to earn respect no matter what profession your in. Zuckerberg is a
Coder. Sergey and Larry, Bill Gates, Jack Dorsey, etc.

~~~
atomicdog
Zuckerberg didn't earn his respect through coding, neither did Bill, really,
they were mostly opportunists. Besides, they're outliers in the grand
perspective of things; your average programmer in the street is significantly
less paid and respected than your average hedge-fund manager.

~~~
ChristianMarks
Your average hedge-fund manager also pays a 15% income tax on the pretext that
he is risking his own money. When programmers get to systematically win
asymmetric zero-sum games against the lower 99.9% of the income earning
population, they will be accorded all due respect.

------
BrandonM
It's really hard to get rich in the world by following an easy path. All
things considered (prerequisite education, initial debt, work hours,
desirability of everyday work), the average cog-like computer programmer is
somewhere close to the top.

If you want to make money, stop whining and go make it. Negotiate a better
salary with your company. Find someone with a problem and solve it. Realize an
inefficiency in the world and fix it. The people who make money and love life
don't do it by lobbying.

Here's a secret: you don't have to have any education to make good money. My
stepmother started breeding German Shepherds when I was a child. She now sells
them for $2000+ each, for family pets (<http://minternsgermanshepherds.com> if
you're interested). She didn't even finish high school. She now pays a couple
teenagers to help with the laborious task of caring for dozens of dogs.

My brother turned down a pharmacy scholarship to join the Marines. By the time
he finished his five year tour-of-duty, he had established himself in the
field of performance diesel trucks. He's helping people make 7,200-pound
trucks do 10-second quarter miles (think _Fast and the Furious_ ). He runs his
own garage (<http://dieseladdiction.com> if you're interested). He gets there
at 6 AM and doesn't leave until 5 PM or later. He's booking people a month out
because his schedule is so full, and he just keeps raising his rates. He now
has two guys working for him and will be looking to hire another soon.

By and large, the people who make lots of money do it by working really hard.
They develop their expertise to a point where there are perhaps one or two
competitors even close to their level. The product they provide is something
that people want and are willing to pay money for. They grow their business
beyond themselves and enable others to make a living, too.

I don't want to work that hard. I'm happy to be able to use my expertise to
improve my stepmom's or my brother's business operations. I can build them
websites, automate some of their clerical tasks, and otherwise support what
they do. But I don't lose sight of the fact that they are the ones creating
the value in the first place. They put in the hard work to make the lives of
thousands of people better in some small way, and I just grease the gears.

People want great pets. People want fast trucks. People don't want computer
programs, they want better lives. When programmers actually align themselves
with something people want, they do just fine.

If we want to be able to clock in at 10 or 11 and leave by 6 or 7, to enjoy
what we do, to avoid taking full ownership of the product, to be generally
stress-free, to not take some fucking initiative, then no, sorry to tell you,
we're not going to do better than a well-above-average salary. You don't get
rich by being lazy.

------
felipemnoa
Plumbers and Garbage Man don't get much respect either, even though they are
very important functions and everybody needs them.

------
r15habh
HFT programmers earn a lot, so its all about creating value
<http://j.mp/p6Sl45>

~~~
nasmorn
The guys from MIT who invented a then not explicitly illegal card counting
technique earned a lot, it is all about creating value
<http://en.wikipedia.org/wiki/MIT_Blackjack_Team>

~~~
T-hawk
They didn't create value, they figured out a way to purloin value out of the
casinos. Every dollar they gained was a casino's loss.

Much of programming is indeed like that, especially in the finance industry,
where your gain is usually someone else's loss. There does exist true value-
creating programming though. Games are an easy one; presumably the reason a
customer pays $10 or whatever for your game is that the customer perceives
more than $10 in entertainment value.

------
mh_ya
China is definitely not on the right track...

------
known
Writing software != Selling software

------
wingman007
Great article! I totally agree with the points.

------
gogodream
新的技术带来的是新的成本

------
nirvana
I think you make several excellent points, and I unexpectedly found myself
agreeing with you. I thought $150k was a lot of money, but had never stopped
to think about the fact that the other alumni of my school who became doctors
are making far more.

I think the reason we're seeing this is that programming has been commoditized
quite successfully by an industry that saw they needed programmers but that
did not know how to judge the quality of a programmer. Doctors certainly vary
greatly in quality, but doctors are unionized after a fashion by the AMA, and
they have managed to put into place artificial supply controls (regulation and
licensure) that keep incomes higher.

The software development industry has gone the other way- instead of limiting
the number of programmers (not necessarily a good thing, but it would boost
incomes) we've developed quite a bit of process to try and make programmers
interchangeable. I'm talking about much of the "best practice" and even the
entire attitude that programmers should not be "lone guns" but part of a
homogenous collective of coders. Everything from pair programming to test
driven development to code reviews serves the process of making programmers
homogenous and interchangeable, and thus more easily replaceable.

I also think that the Legal and Medical and Finance professions have developed
for centuries in an environment where they were able to artificially limit the
number of practitioners, and artificially boost the "Establishment
credibility" that they received. I don't think most politicians are lawyers
because lawyers are good leaders, but because lawyers were able to establish
that career path as one of their own.

Software development, in contrast, is much newer, and currently is much closer
to a free market.

~~~
roel_v
"but had never stopped to think about the fact that the other alumni of my
school who became doctors are making far more."

A CS degree, which many programmers don't even have, takes 4 years. There are
quite a few 'programming' jobs for which having a CS degree is being
_overqualified_ , but let's say that a CS degree is the baseline. To become an
MD, with the specialties that pay the amounts mentioned here, one needs to get
a 4 year degree, then pass the MCAT, then go to medical school for 4 years,
and then do 3 to 8 (!) years of residency, in which you do 60 hours on a slow
week and have regular weekend and night shifts. So that's 11 to 16 years of
studying. You only get paid in the residency, and even there only around US
modal wage.

Never mind that nowhere in this time period, you are _guaranteed_ a high-
paying job. You can do your full residency and be told at the end that they
don't consider you fit to be a doctor.

Do a quick total lifetime earnings comparison in Excel. Don't forget to
include tuition and resulting student debt payments. You'll see that the
general picture painted is flat out wrong.

(don't even get me started on lawyers - there is vast unemployment under
lawyers, only a very small percentage work at firms that pay the amounts
mentioned, and of those only a very small percentage make partner, after
working 80 hour weeks for 20 years. Why do you think the US alcoholism rate is
twice the national average amongst lawyers? Hint: not because they have the
easy-money lifestyle being suggested here.)

~~~
pessimizer
I'd buy this argument if a CS degree qualified you for a programming job. It
doesn't. It doesn't even mean you can program. You're expected to learn all of
the skills that a programmer uses on the job _on your own time_. What if
instead, you went to university for a pre-programming degree (CS) that was
math and theory heavy, then went to a 2-3 year programming school, then went
into some established shop for your 3-8 year residency?

My guess is that the profession would become a lot more attractive to the
average kid that is very smart, but doesn't have an interest in law or
medicine. Other guesses are that security would become absurdly good in
general, and a lot of tools would be perfected.

Instead, the importance is placed on _loving_ programming, because you're
going to have to _love_ figuring out what you need to be educated in and
_love_ providing for that education out of pocket, and with no credentials to
show for it. So you're on an equal playing field with anybody off the street
when dealing with an HR department, and at a disadvantage against a CS
graduate who may not be able to program to save his/her life if you didn't go
to school to learn the math, but simply learned your profession.

To have a capital-p Programming educational track like Law or Medicine could
really be a boon for the profession in most ways in my opinion. Could somebody
tell me where the Perl class is? Because I can't seem to find it or get
student loans to cover it.

The one thing that I think would be problematic would be an injury to
Free/Open Source software, because practitioners wouldn't feel the necessity
to put that evidence out there that they actually can program, like surgeons
don't feel like they have to stream over the web live operations they are
doing for free.

~~~
roel_v
%| I'm not sure what you're arguing here, or if you're just trolling. Are you
seriously suggesting that people complete a 12 year program after which they
need to join the 'programmers guild' (APA, if you will) before being allowed
to write code? Are you seriously saying that somebody who writes his
volleyball's club website at home as a hobby shouldn't be allowed to do so
until he completes a 12 year study program? I guess there is some sarcasm in
your post that was lost on me.

~~~
pessimizer
To the extent that people have to do a 12 year study program to do first aid
or put on a band-aid, I'm suggesting that people should do a 12 year study
program to put up their volleyball club's website or turn on their computers.

------
Chukslovennline
Thats true

------
guillaume_a
Yakedee yak yak. Typical software engineer soapbox rant, all about ego
boosting.

If you want the life of a rockstar or an investment banker, go do that
instead.

------
rimmjob
you care way too much about what other people think

------
vynch
why dont programmers get respect? -> who is John Galt?

------
BasDirks
_As a doctor, however, someone like this - a top professional at the peak of
their career - would probably make about $400,000._

Yes, but doctors have the most important skills I can think of. Don't think
so? I'll come ask again when one of your family members gets cancer.

Coding and hacking have yet to grow to anywhere near their potential
awesomeness.

~~~
gaius
Show me the doctor who never uses software to do their jobs.

~~~
BasDirks
I think programmers who put their skills to use for such purposes should
indeed get better pay.

~~~
dany_dev
you wrong! in order to you the pay should be proportionally to the good that
they do to human? This is a nosense idea....Just pay proportionally to their
skills! Is a shame that a nice doctor earn 500k$ and a nice software engineer
fight for 100k$

~~~
BasDirks
"in order to you the pay should be proportionally to the good that they do to
human?"

yes.

"Just pay proportionally to their skills!"

If I'm amazing at flipping burgers do I need to get amazing pay?

~~~
dany_dev
oh man you have a distorted view of the world.....

Of course, if anyone in the world can flip burgers as him, you should pay him
really high....it is the market rule.

if developers are requested as "seem to be", so they should be paid
accordingly, same thing as doctor, and similar professions.

No matter (for the paycheck) if they save lives or make sites. :)

