
Developers are the autoworkers of our generation - wslh
http://blog.baugues.com/autoworkers
======
nohuck13
Hold on a minute. You can't discuss labor markets without discussing
productivity. In the heyday of the automotive industry, the best auto worker
in the world produced about the same output as the average auto worker. Maybe
they messed up less, but being a genius autoworker didn't let you tower head
and shoulders above the competition, because car factories are designed with
auto workers as interchangeable parts.

We've tried that with developers. If it had worked, all development would be
outsourced to India and the Philippines by now, and developers would be
forming unions to lobby for higher pay.

The reality is that the market pays for productivity, in the long-run. Maybe
having more junior developers coming out of bootcamps puts downward pressure
on wages, but as long as development is a meritocracy where the best
performers are much better than the worst performers, there's always going to
be a premium on people that really know their stuff. Maybe one day we'll live
in a world with lots and lots of really good devs. I don't mind living in that
world as much, because I can control my fate to a far larger extent that
someone who moved to Detriot in 1960 and was unfortunate enough to stake their
whole life on a company pension and a single industry.

EDIT: typo

~~~
mkr-hn
I think the argument is that the skill level and number of people needed for
most development jobs will be lowered with platforms and tools that make it
easy for a minimally trained user to do it. Someone still has to make the
tools and platforms, but implementing them won't take as many people.

Think about how many wildly popular websites run with a handful of people. How
long will it be before you don't even need more than a few people in a
datacenter? Robots will eventually be able to change out dead drives on a RAID
array and inspect the backup generator as well as a technician.

People saying things like "everyone should be a developer" are coding the same
people they're encouraging out of a potential career path. Which is fine, but
the contradiction gets annoying.

~~~
nohuck13
I think that's a key question, but I've never been a fan of the notion that
robots (or efficient frameworks) are going to put us all out of jobs. If you
look at what we've actually seen in the last 20 years, efficient frameworks
enable entrepreneurship and wealth creation on a scale that wasn't possible in
the past. Sure, there are fewer people employed doing nitty gritty stuff, but
the size of the economic pie is far bigger than it once was, largely because
of labor-saving technology and frameworks. If you want to argue that better
frameworks will drive down wages, the argument to make is that better
frameworks will reduce development time without facilitating wealth-creation.

EDIT: maybe this will happen, I can't predict the future. Rereading your post,
I guess this is more or less what you were saying. But then the question is,
what's going to change to reduce growth?

~~~
ori_b
The argument is that the pie is already unevenly distributed. In the future,
it will be even more unevenly distributed, and the skewing of the distribution
will outpace the growth of the pie.

~~~
peterjancelis
No. Wealth will be more volatile. The smart will get richer.

~~~
ori_b
That doesn't contradict what I said. It may be concentrated among the smart,
but it will still be concentrated.

~~~
mkr-hn
More importantly, the people at the top need the people lower on the ladder to
pay their salary, either through companies that advertise or by paying
directly. There may be an implosion at the top if they automate too many jobs
away before magic market forces create replacements.

------
mkr-hn
> _Don’t get too comfortable. Don’t get locked into a language. Don’t burn
> bridges for short term gain. Keep your tools sharp. Learn soft skills. Build
> an audience. Save some money. Network. Read._

This is great advice. The big issue with the rust belt is that building cars
was all car builders knew how to do. Most didn't have the sustained practice
with learning new things to adapt to a changing environment. I wouldn't keep
it to programming languages and technologies, or even auxiliary skills like
marketing and advertising. Keep your mind sharp with as much depth in as many
different topics as you can stand.

~~~
jakejake
I agree this is great advice to keep your skills sharp.

But, as far as auto worker and programmers being the same, I totally disagree.
My hometown is a factory town and, actually, one of the few auto plants in the
area that didn't get shut down or moved to Mexico.

The average plant worker (I know many, many of them - most of my high-school
class in fact) is someone who may or may not have finished high school. They
have no job skills except a very specific skill for their particular station
on an assembly line. They hate their jobs and they don't generally spend any
time trying to learn anything new. I don't say this to judge or criticize
because it's their life, they make a decent wage (a fantastic wage, in fact)
and it doesn't matter to me what they choose to do. But, I do see them as
being at extremely high risk of losing their comfortable lifestyle because if
the factory were to ever get shut - they would be completely unable to get a
job at their salary level. They are totally dependent on the factory and their
skill is completely worthless anywhere else.

This is nothing like any programmer I know. You can't get decent at
programming with this mentality and you can't remain a decent programmer
without continuing to learn new techniques. Most programmers that I know tend
to always be curious and want to learn more. Although some of them don't want
to take their work home, at least they like to learn new ways to be more
efficient.

I would liken programmers more to a mechanic or a carpenter. It's a more
general skill that you can take with you from one place to another. I think
the value may go down if more people go into it, but the industry is not as
likely to cave in so fast as it did for unskilled plant workers.

------
logn
Yes, programmers keep automating their own work. And we keep trying to find
ways to bring in new programmers. But software keeps eating the world. I don't
see an end to this. The auto-industry was largely reliant on a very specific
vertical.

Also, programmers (unlike auto workers) have not locked in long term benefits
that hamstring a company. In fact, we've embraced taking on the risks of the
company and staying nimble, hopping around and trying new things. If Google's
whole workforce were guaranteed some sort of long term compensation for
retirement, we might worry, but their long term promises are only via their
stock price.

~~~
smk11
_programmers (unlike auto workers) have not locked in long term benefits_

This is true in many of the developer communities. But I work for a local
government agency as a programmer. So, I have long term benefits and a
retirement plan, and I assume there are lots of programmers in this category,
they just aren't publicized like the start-up and web community.

I am thankful for the influential programmers that live more risky and work at
start ups, but there is also a place for programmers that have a secure job,
working at companies/organizations with specialized software. However, I know
that many bad workers have been created from these environments...there is
always a group that will ruin it for everyone.

------
luu
As usual for HN, all of the most upvoted replies disagree with the article.
Let me play devil's advocate and not disagree. Sure, the analogy isn't
perfect, but what happens if we take the _idea_ seriously? [1]

Isn't it amazing, the lack of sacrifice necessary to make fat stacks of cash
writing software? Even when law school was thought of as a golden ticket, it
was a lottery, and to win, you had to sacrifice your personal life for a
decade before you made partner. And those hours looked relaxing, compared to
medicine and investment banking. Back when auto jobs were a sure thing, they
were also sure to use up your body by the time you could retire, and that's if
you were lucky enough to avoid a career ending (not to mention crippling)
injury.

I just met a kid who graduated with a BA in philosophy who was offered 4x the
median U.S. income [2] at a software company. A prop trading firm offered him
50% more, and the software company matched the offer. One reason he turned
down the offer at the prop trading firm is because people there regularly
worked 50+ hours a week.

The most upvoted article on HN from a couple weeks ago was full of comments
debating whether 20% time is really 120% time, at a company where mid-level
("senior") engineers can have total compensation that's something like 8x the
median income in the U.S. And was outrage! Outrage!

Last year, coursera ran a course on deep learning from one of the guys who's
widely credited with inventing deep learning. The pre-requisites were some
basic programming, and, either, google + wikiepdia, or a basics of machine
learning course, like the one that's offered on coursera regularly. After
taking the course, you'd have enough understanding of deep learning to
reproduce papers published that year, on the state of the art in machine
learning.

Never have we had a privileged class that's so easy to enter. It's genuinely
surprising that this is the case. You don't have to be born into the
aristocracy. There's no licensing body limiting the number of developers, and
no hazing process that makes requires giving up the best years of your life.
The knowledge is available to anyone with a computer and an internet
connection, and those are cheaper than they've ever been in human history. You
might say that there's just not enough "smart" people in software, but, that's
part of what's surprising.

Why do so many people who want a career involving intellectual curiosity study
philosophy or mechanical engineering, when CS also gives you interesting
problems, and happens to pay much better? Why don't people switch? Unlike with
ME, CE, etc., you don't have to take the PE and get all sorts of licensing to
find work. You just need to be able to pass some interviews. I met folks at
Hacker School [3] who switched from econ, ME, OR, and other quantitative
fields to CS, because you have more freedom to pursue ideas, can do more
without being part of a huge team that makes you a tiny cog in a giant
machine. And, by the way, it pays twice as well. But, it's still not common to
see people switch.

What's the barrier to entry that's keeping us from being flooded with supply?
I'm told that CS enrollments are now at record highs, past even the numbers we
saw during the dotcom era; perhaps the answer is that there is no barrier, and
we're about to get flooded with supply.

[1] In his notes, Lectures on the History of Moral Philosophy, Rawls talks
about how his students eagerly come up with clever refute the propositions of
great thinkers. He takes the opposite approach. It's been a long time since
I've read this, so I'm very loosely paraphrasing, but it's something like, if
you disagree with someone who's clearly very smart, maybe it's worth taking
the time to figure out why they hold their opinions rather than just
dismissing them.

[2] median personal income in the U.S. is about $30k/yr.

[3] [https://www.hackerschool.com/](https://www.hackerschool.com/)

~~~
gnaritas
> I'm told that CS enrollments are now at record highs

Given the high dropout rate of anyone attempting to learn programming, I don't
think enrollment rate is good metric.

> What's the barrier to entry that's keeping us from being flooded with
> supply?

Programming is hard; really f'ing hard, _for most people_ because it requires
_critical thinking_ continually and learning continually.

~~~
rmk2
Stop patting yourself on the back. _Seriously_.

Because obviously, no other job requires _critical thinking_ and _learning
continually_. These are "skills" that are in no way related to programming,
and do not explain an inclination towards CS rather than any other science or
the myriad of other academic disciplines. And even outside academia, not every
job is just that of the "sheeple" who "mindlessly" "slug away" in their
"boring" and "thoughtless" jobs.

If you do a job for a long while, chances are you will have to adapt to new
developments. Take craftsmen for example. Every year, new areas become part of
their trade, from new building materials to new requirements, from new
technologies to new standards. The electrician of today might also have to
deal with laying network cables, with photovoltaics etc. Carpenters deal with
new materials for insulation, new structural possibilities and requirements
etc. etc. Secretaries and office workers moved from typewriters to PCs, from
OS to OS and often from program to program.

I know it is particularly popular in IT to foam out of the mouth about the
"clueless" average users who do not get the simple feature X or Y of a given
software, but at the same time, the same people will happily admit their own
inaptitude in many other professional areas.

There have been numerous threads on pg's "founders' accents" remarks, and
there, all of a sudden, it is the most normal thing in the world that not
everybody finds the same things equally easy, important or possible. Yet when
it comes to programming, there obviously exists no such thing, rather, there
are naturals, those gifted enough for this divine trade, and then there are
all the others. The _average_ user, with stress on the average as opposed to
the extraordinary.

I am sorry that this rant is directed directly at you, but I find the sheer
arrogance of your two one-line remarks baffling.

~~~
pmichaud
Arrogant, maybe, but there is at least a kernel of truth.

I've done a lot of trades. I'm not a master level craftsman or anything, but I
can build a house to code using just my current knowledge. The only thing I've
never done is masonry, but I'm told it's not too tough. So that includes
carpentry, electric, plumbing, fine wood working if you want things like
molding and wainscoting, and more. I'm a very good but not quite great artist
as well.

None of those things is as difficult, conceptually, as programming is. You
live in a bubble surrounded by very smart people, so I honestly think you
overestimate people's capacity for abstract thought. I'm confident that pretty
much any programmer could learn to be a plumber if they cared to, but the
reverse is not true.

And I'll go a step farther and say that while "easy stuff" like basic web
development is out of the range of most people, the harder stuff like
algorithms, game engines, embedded systems, is in another universe. No amount
of training could help for a very large proportion of the population.

It's not popular to say because we like to think everyone's a special
snowflake with some predetermined number of "ability points," just allocated
differently, but the bell curve is real and some people just can't do what we
do.

The reason we are currently enjoying an alternative employment universe,
insulated from the rest of the economy, is that the mass of unemployed people
predominantly couldn't break into this field if they wanted to.

If they could, they damn well would.

~~~
bennyg
> The reason we are currently enjoying an alternative employment universe,
> insulated from the rest of the economy, is that the mass of unemployed
> people predominantly couldn't break into this field if they wanted to.

Art major, advertising minor, employed as a Software Engineer right here.

~~~
betterunix
That does not contradict his statement. The reality is that programmers need
to have above average intelligence, at least if we expect something more than
just formulaic approaches to software problems (and if history teaches us
anything, it is that formulaic approaches will likely be automated at some
point). What you choose to major in in college is not indicative of your
intelligence.

~~~
lutusp
> What you choose to major in in college is not indicative of your
> intelligence.

I agree with the sentiment you're trying to express, but there actually is a
general correlation between intelligence and what one chooses to study in
college. For example, it would be difficult to fault a spectrum of majors with
physics on one end and psychology/sociology at the other.

Title: "IQ Estimates by College Major"

Link: [http://www.statisticbrain.com/iq-estimates-by-intended-
colle...](http://www.statisticbrain.com/iq-estimates-by-intended-college-
major/)

------
mbesto
autoworkers == un-skilled labor

managers == skilled labor

From Drucker's _The Practice of Management_ :

 _A scant twenty years ago, it was widely believed that the mass-production
technology—yesterday’s industrial revolution—threw people out of work. Today
we know that wherever it has been introduced, it has rapidly increased the
number of job opportunities in industry. But it is still widely believed that
mass production replaces skilled labor by unskilled labor. We know this today
to be a fallacy. In the United States, for instance, where mass-production
methods have been applied on the broadest scale, the class of employees that
has been growing most rapidly in numbers and proportion is that of skilled and
trained people. And the truly unskilled laborer of yesterday, who contributed
only his brawn, has become the semi-skilled machine operator of today—a man of
higher skill and education, producing more wealth, earning a vastly higher
standard of living._ [1]

I think Drucker would argue that "Developers" are the new class of "Managers".

[1]Drucker, Peter F. (2010-04-02). The Practice of Management (Kindle
Locations 490-496). HarperBusiness. Kindle Edition.

------
kenster07
Many commenters are too lost in their own egos to speak rationally about this
issue.

CS is not a "cool" major in colleges, and programming is not a cool profession
among tweens. Until there is a significant cultural shift, which I would bet
will not happen any time soon, the labor pool will not be commoditized in the
USA.

On top of that, the skill cap for programming is substantially higher than it
is in assembly line manufacturing. Programming may be more comparable to
engineers who actually design the cars, but those jobs are not commoditized
either.

------
unono
Programming is fundamentally different from most other occupations. We are
actually building factories - automating manual tasks. If developer jobs start
to become scarce, we'll be nearing a situation where there are no jobs at all
for anyone. So, as a programmer, you're never at risk of falling into poverty.

~~~
btilly
_So, as a programmer, you 're never at risk of falling into poverty._

I'm guessing you aren't old enough to remember the dot com bust then...

~~~
simias
Programmers fell into _poverty_ after the dot com burst? That seems a bit
extreme. Lost very high paying jobs, maybe.

~~~
btilly
I personally knew competent programmers who, a couple of years after, I would
describe as living in poverty.

I believe that I am able to judge programming competence, and my bar for
labeling poverty is not inaccurate.

------
ufmace
There are a few good points in this article, but I don't think it's all that
insightful overall. A particular developer can be a lot like an auto worker,
or they can be very different. The difference is continuous learning.

The trouble with being an auto worker in the heyday of the industry is that,
as far as I know, people generally learned a relatively small set of skills
early in their career, and then expected to coast along on those skills for
their whole life. All skills have a limited lifetime, and in the modern era,
that lifetime can be very short indeed. If you got in and out at the right
time and handled lifetime investments well, then you could do all right for
yourself. If the timing of your one skill being obsolete doesn't work out well
for you and you don't do anything about it, then you could find yourself broke
and possessing no marketable skills when you were expecting to hit the peak of
your career.

In development, I have worked with people who view their career like this.
They learned C++/MFC or some other technology stack that's getting rather long
in the tooth decades ago, still work in it now, and show no interest in
learning or trying anything new. I think these guys are in the same shape as
the autoworkers. I think they'll do all right for the foreseeable future, but
there's always the risk that the bottom will fall out of the market for the
tech stack they know, and then most employers will see them as useless.

There's no need to be like that, though, especially in a time when getting
your hands dirty with new technology is so easy. The developer who can do good
work in 2 or 3 tech stacks and is always learning more about his main ones and
any others that look interesting will always be employable - if one goes dead,
you can get a job working in another one, or learn whatever the new one is
yourself.

I'd say it generalizes even more. Anybody who has the drive and intelligence
to continuously learn new things will always be able to make money. Anybody
who wants to learn one thing and coast on that their whole life will always be
at risk of losing it all.

~~~
VLM
There tends to be a lot of demonizing and blaming the victim in general on HN
for people who won't learn new skills. I've coasted by for a couple decades
really only having two "tech" skills. I'm really, really good at systems
analysis, and I'm pretty good at translating user requirements into code more
or less on time and more or less with few bugs. Sure the tools and techniques
have changed a bit, but much less than some would claim. After you learn your
5th or 6th language the 7th isn't a big deal. I really don't see any deep need
to learn new skills beyond those two as long as I stay in the field, after
all, its worked very well so far... Eventually due to ageism I'll have to do
"something" else. Maybe learn the skill of management, or sales, or something
like that. Donno. What does a good techie do when no one will hire him for
non-tech related reasons? Maybe start a tech company, thus the interest in
HN...

On resumes the "no new skills" crowd knows you can just make it up in six
months if you want. For a software dev who's any good, how long does it take
to learn something, contribute to an OSS project, etc? Not very long, thats
for sure. New stuff comes along at every job I've ever had, and I have to
implement it in a month or so. Not hire a new guy, not go take a class,
production code. Its so not a big deal. There's no point in learning a new
skill and telling anyone at work about it, unless you think its funny to get
escorted out... after all, why update the resume unless you're looking?

The other big mistake is virtually none of the detroit workers had the skill
of making cars. There are people who have the skill of making cars. I have a
cousin with that skill, who's a large diesel mechanic who has a hobby of
tearing down cars and rebuilding, all by himself, bare metal components up,
including (obviously?) engine assembly. He's stripped and rebuilt two classic
corvettes and a ancient jeep, so far. Virtually no autoworkers can do that
other than coincidentally as a hobby. They can tighten a bolt on a line, or
align an assembly, or insert/stack partially finished parts, or press a e-stop
button if the robot goes nuts. They suffer from HR doing "keyword selection"
just as much as we do now. Oh look he worked on a car line, well he is totally
unqualified to tighten the same bolt on our truck line. Anyway, none of them
can build a car. Once, a long time ago, I worked in IT at a large regional
printer. That doesn't mean I was a "press worker" or I could do much of
anything with putting ink on paper other than program ethernet switches for
embedded control devices. "autoworkers" are the same way.

------
shubb
I'm not sure I recognize this privileged world you describe. Maybe you won't
recognize mine.

It's 7pm. About half the team is in the office with me (although all the
people managers have gone home). We will be here a while.

No one in the room earns more than 10% more than the UK median salary. The
highest paid is a front end guy who sits to my right. The two behind me earn
less than the median, and live with parents. They have been writing software
for 3 years. On external contracts, the customer pays about double what they
get paid, 150 a day. Given that rate also needs to support sales and admin,
they could get a little more but not a huge amount. Sales tell me our day
rates are too high, and it's costing work.

Other companies in our industry (defence contracting) pay a bit more, but not
a huge amount. I got offered about 50% more to work on consumer electronics
last month, but that is still 50% more than median, not 800%.

I think what you describe has already happened.

Edit - I think this is overly negative. Programming remains a really nice job.
You solve interesting problems, you work in a comfortable office, and the
culture is nice (people usually treat eachother well). It's just not paid that
well now.

~~~
jaymzcampbell
I'm interested to know where you're based, I take it it's not London? A day
rate of £150 per day to the customer sounds very low; it's hard to find
contract rates that low on the likes of Monster across the UK and typical to
see £250-500, so double that for the company hiring out. I've seen rate cards
for agencies in advertising charging out developers on projects from £500 to
over £1,000 depending on what exactly is being worked on. If £150 a day is too
much and costing work anything lower seems unsustainable to run anything more
than a lifestyle business for a few select people at the top.

If it's 7pm and the developers are likely to be still there for a while - is
that "the norm"? Then you are in effect taking a pay cut already on what
sounds like below market rate wages. This sort of practice is toxic. It's ok
to work late but when it's expected as part of the job but not without any
compensation (can be extra time off, not just money) then this really annoys
the hell out of me. Someone higher up is making money out of this. That might
be the status quo but I would really consider working on the C.V. and widening
out skills and look elsewhere - there's no harm in it.

The guys behind you paid less than median (£21.3k in 2012 according to
Wikipedia) and that have been at it for 3 years - from that I get the
impression they were fresh out of university and this was the first job? And
the highest paid guy at just 10% more, so around £23k, is there no CTO or
senior developer? To me it sounds like someone's taking advantage of young,
enthusiastic energy here. More so with the "we will be here a while" comment -
you should work out what your effective annual salary is based on that;
otherwise you can just let it slide and fall into acceptance. If your contact
states 9 - 6 the company needs to appreciate the above and beyond work. That's
what it is, no matter what others might tell you.

We recently hired for a mid-level developer role at our office in Hoxton and
that was around the £40k mark which seems to be around right. As the tech
director there I regularly get unsolicited CVs via recruiters and salary
ranges requested typically range from the £30k mark up to around £60k.

I don't mean to come off as in anyway 'know it all'y or 'just do x' \- I'm
genuinely interested in the situation as a fellow UK based dev. Your situation
contrasts starkly with my developer friends (based in London, Belfast,
Hertfordshire & Leeds) so I'd like to hear more if possible. I often extol the
virtue of learning developer skills to younger folk who I interact with and
have always painted it as a pretty good way to get a good head-start
financially over many other occupations.

When I started out at just above the median I was so thrilled that I was
actually getting paid to do what I started out doing in my bedroom as a young
kid. After passing the 30 mark I've come to realize it's about what value you
can provide to the company, there's no shame in wanting to be out at 6, for
one thing realistic timing plans that actually reflect reality are far more
useful than ones papered over with hours upon hours of hidden overtime - I'm
not saying that hard, late nights are out of the question - I just don't
expect it to be treated as the norm' or assumed unless it's also reflected in
compensation of _some sort_ (we've in the past traded late nights for
conference & flight fees for instance). There's also no shame in taking a look
what else is out there and moving if you have to - there is some give and take
on your part in progressing. Moving jobs is usually the easiest way to
significantly bump your pay grade. It's hard work but can really be worth it
in the long run.

~~~
shubb
No, thank you for the reply. I hope I didn't come across as mr gloom.

Concrete answers -

* The 150 - 250 is the rate a junior is charged out at. Seniors are 500-1000. Usually the customer actually gets a quote for 1 senior : 2 junior, i.e. say 450 a day.

* Most people here work normal hours most of the time, although some people and projects do work a more. The project I've been on the past 6 months has a lot of crunch time, so I feel like 'people here work long hours', but actually 'my team work long hours'. And yes, not paying overtime on a project that needs it is a bit yuck.

Regarding pay, the sense I get is that outside finance, new programmers get
25-30k depending on quality, and after about 5 years, get 30-40k. These are
actually very comfortable salaries, depending on where you live. Pay at this
place is strangely poor, given that I think the people I work with are
actually quite good.

I posted that because I read on HN, or around the net, a lot of people saying
things like '6 figure salaries', or 'I quite my job as a finance quant because
programming pays better'. Not round here it don't.

I'm fine with that. I'm glad I get to spend my days playing a beautifully
convoluted puzzle game, or imagining things and then making them happen. I
just get wierded out by the disconnect I'm seeing.

------
grumblefoo
I've been using this metaphor for a couple years now, and I think that it can
be taken further. Developers are like the car mechanics because they build the
thing. There are an increasing number of tools being created to make
developers lives easier, and as such, the bar to entry lowers. This is not the
only career in computer science, though. Just like the auto industry, we need
research to push the whole field forward (developing a new, more efficient
programming language; or a better fuel injection system). We also have
mechanics called IT people that help people with day to day problems that they
encounter with their computers.

Moral, if you want to stay relevant, make sure you know the things that push
research. Learn the lambda and pi calculi. Learn category theory. Web
development is an overpaid field, software engineering is not. Enjoy the easy
money while it lasts, but know that its days are numbered

~~~
gfodor
I'd argue that if you are going to focus on keeping abreast of research, you
should focus on things that have much more obvious applications than various
niche topics in programming language theory. For example, advances in machine
vision, computer graphics, machine learning, and distributed systems seem to
be much more meaty than category theory and lambda calculus for ensuring you
do not get left behind in the next big wave of innovation.

------
sker
It's already happening. As a freelancer, I often find people who want their
"corporate" site built in WordPress for less money than what they would pay to
a car mechanic for a similar amount of time worked. Sames goes for Magento and
similar platforms.

~~~
tluyben2
If you are talking about the front end of a corporate site then sure, you can
do that in WP. Don't think many would though; maybe for the grocery shop, but
other than that?

Even relatively small businesses in my neighborhood with not much cash to
spend start out with a 'cheap WP' site, but then they want reservation systems
integrated with their CRM. They want a live chat system. Integrated with their
CRM. They want their reservation system connected to online partners. Etc. In
a few months after starting out with this site, WP or anything else is no
longer relevant; existing solutions need to be integrated manually anyway and
custom solutions made by, for instance, the CRM/reservation system which do
not use WP are a better fit. At a much higher price. And people pay it,
because custom integration is even more expensive.

Even with all it's plugins, WP is only a good solution if you like to do a lot
of work manually or you want to spend a lot of money having every plugin and
external package nicely integrated. And no inexperienced programmers is going
to bring that to a good end without landing on reddit/hn as being responsible
for making some epic security holes along the way.

~~~
yogo
I was surprised to see a multi-million dollar corporation (nameless) using
wordpress. It's slow and bloated but I guess it gets the job done. Naturally
they went to someone and said they needed a site, then that someone did what
they do best and installed wordpress with some theme. Naturally when it came
time to make certain changes or something broke the _installer_ couldn't do
anything about it. This is a B2B company and I doubt any sales come from their
site so from a business point of view it's understandable how a cheap WP
installation got there. However, in my experience it always turns out being
more expensive down the road. There's money to be made with broken wordpress
installations and moving sites off wordpress altogether.

~~~
tluyben2
Yep, and that's were it gets very expensive very fast and that's also were
'cheap' programmers cannot help at all. I have 3 friends who quit their jobs
and went into website creation. They make simple sites based on WP and make
nice money with it. They look mostly horrible but clients can talk to them on
their level and feel comfortable. These sites go between E1500-2500 per site.
Now when anything breaks / doesn't work / has issues, they have to hire
someone to fix it and they have to trust this person; in most cases, the cost
of fixing/adding on by this 'more capable' person is more expensive than the
site was in the first place. So it's a good market for capable coders / admins
to dive into. Optimizing, securing, fixing, extending. All money makers far
beyond the boring setup of the initial site.

~~~
yogo
That's something I don't think this article covered. Sure technologies like WP
make it easier for someone less skilled to accomplish something but then
demand is created for others that are more skilled to fix, support, customize
like you said.

------
kellros
I agree with you that this is the direction in which we are heading, but not
that professional developers will become obsolete.

I believe if we ever reach that point where programming is common-skill; the
_real_ developers will stay ahead due to demand. I honestly don't see
corporates with millions/billions of revenue trusting newcomers with a few
weeks of experience to handle core business automation; in the same way as you
don't trust a clerk to sort out your legal issues.

Perhaps when the time comes; professional developers will become like the
attorneys in the law system; where specialist skills demand even a higher rate
and requires less time invested (which might mean the same salary as now but
only working 'part time').

I don't have any issues with people wanting to learn to code; I even mentor
some myself. It really comes down to hours (or rather years) invested in
learning and fine-tuning your skills; which I see the majority of new
developers not willing to invest in.

As such, I believe the demand for better developers will increase. Look to the
tech companies with open positions looking for 10x/star developers - even
though there are developers available, they just don't make the cut.

~~~
greenyoda
_" Perhaps when the time comes; professional developers will become like the
attorneys in the law system; where specialist skills demand even a higher rate
and requires less time invested"_

Isn't that happening today with the substantial number of developers who do
freelance contracting/consulting?

------
gfodor
Web developers are the COBOL developers of this generation.

Software engineering at its core is a universal skill whose applications will
almost certainly have a shelf life of hundreds of years, though the various
particular demand curves for specific applications of those skills is sure to
vary wildly over time. Now would be an advisable time to start expanding your
horizons if your core skill set revolves around creating web applications.

------
eliben
I used to feel uncomfortable after reading articles like this. But as the
years went by, I gained more experience, and understood what programming is
_really_ about. I no longer worry. But if you spent a total of 2 months on
your programming education and are now gainfully employed copying and pasting
answers from Stack Overflow into your editor, perhaps you should.

------
RougeFemme
I agree with all of this, but - and this doesn't take away from the key points
- autoworkers could get entry-level positions with little to no skill. . .and
no specialized education or training (formal or independent). The same is not
true of entry-level coders. Some level of skill is necessary, attained through
some level of training.

------
samatman
I don't always seize my means of production.

But when I do, I close it, stick it in a case, and put it in my backpack.

~~~
samatman
To follow up with something less pithy and more thoughtful:

I'm from near Detroit. Auto work is a bad comparison, because auto workers
need millions of dollars worth of equipment to do their job.

Software developers are more like the film industry. Big operations need
millions in equipment etc, but the individual actors, well, they just have to
know how to act.

Given that software as a service solves a problem the film industry is still
wrestling with, and given that the film industry is still very much solvent at
present, I think we're going to be okay.

~~~
smk11
Plus, anyone can jump into the place of an auto-worker with very minimal
training. That will never be the case for programmers.

------
skyebook
One comment on the post goes after the analogy not being fully sound because
unions helped to prop up wages.

Whatever you think about unions, I'll be sort of curious to see if some
segment of developer jobs do unionize ever. I get the sense that the rugged
individualism that seems to be far more prevalent in developer/engineer/hacker
sort of circles would be less for it; what about h1b workers who seem to
feature quote often in stories about not great companies overworking employees
and threatening their jobs (and with that, their legal status in the States)

Yes, a tangential thought to the article but an important part as people
continue to evangelize the great opportunities in the tech industry and Hacker
School, Code Academy, WikiBooks help them to get up to speed

~~~
anonymousDan
Instead of unions, I'd much prefer if there was an organized push by
developers to force governments outside of California to make it illegal for
companies to claim they own the rights to every idea an employee has. In the
UK it seems to be standard practice to do this, even when the employee comes
up with an idea on their own time and using their own resources that's not
directly related to the company's line of business.

------
pearjuice
Is it really the golden era of programming in America? In Europe we still get
underpaid for what we do yet there is an extreme shortage of good engineers. I
have seen a lot of my network move to America and haunt software engineering
positions in SV but always thought they were chasing a lottery ticket. People
drop out of school here and move to the States because there is so much demand
and half of what they learn is not even applicable in real life jobs "In
America you can actually get a job if you can prove you can program - without
a degree!" is what I hear a lot.

How true is this? Is it a gold rush or are we not even close to the peak? Are
they exaggerating? What is the demand like? Is a degree worth it if you are
just in it for the paper?

~~~
nvarsj
I'm moving to the UK from the US in a few months. I'm taking a pretty big
salary cut, but from my research, salaries have increased quite dramatically
in the last 3-5 years. So I'm cautiously optimistic that they'll keep growing.

------
ayush_gupta
The comparison isn't even on the demand side. Auto industry is a single
vertical. Software development is needed horizontally across most industries.

------
grandalf
One difference is that new kinds of software exist every day and old ones
become obsolete. Shopify is only suitable for a fraction of e-commerce sites,
and before Shopify there was oscommerce, volusion, yahoo stores, magento, and
dozens of other web 1.0 e-commerce platforms.

If you are starting an e-commerce business and have $30 per month, Shopify is
a great idea, but if you have a larger budget its limitations start to become
impactful.

Skills will definitely become obsolete, but code moves quickly and allows new
ideas to become realized. What the author erroneously thinks of as a stable
business model (e-commerce) is not, and there will be lots of people trying to
improve upon it in ways that existing platform abstractions are insufficient
for.

------
DigitalSea
While it seems many don't agree with the article (as usual) I do. Developers
are sitting pretty at the moment because the Internet in the greater scheme of
things is brand new. It wasn't really until the early 2000's the Internet
exploded in popularity and got a whole lot more complex. There is always some
new hot language startups and companies are clamouring to use, every new
language or framework seems to create a gold rush of sorts (Rails developers
were once white hot property).

But the sad matter of the reality is, more and more people are learning how to
create a website. And while little Timmy who knows HTML and a little CSS won't
be taking your jobs any time soon, as the supply rises there will always be a
plethora of small jobs that Timmy would be able to do leaving the few actual
big and complex jobs for the many developers fighting for the job.

I personally think we are a very long way off oversupply in the development
sector (especially web). My advice would be to continually learn as many new
skills and techniques as possible so if the day ever comes you are at risk of
being replaced by a WYSIWYG editor that generates the code for you, you might
have a chance of keeping your job.

Software is a lot harder to automate for the moment, but with websites it's at
the point where content management systems like Wordpress already make it easy
for people from kids to senior adults to make a website without even having to
touch a line of HTML, CSS or Javascript. Automated tools can only get you so
far, we'll always need designers to design the look and feel of a website,
developers with a grasp of modern web technologies and languages to program
whatever it is that's creating the website to ensure its output is up-to-date.

I've been preparing myself now for the future. If automation does happen and
it will, nothing can truly be 100% automated, but if it does happen, I'll be
the guy running the automation stuff, not living out on the street because I
was too naive too think it could never happen to a developer like me.

PS. Send some of those recruiters offering six figure salaries my way
please...

------
FurrBall
There are 2 kinds of work.

1\. Execution of a process. 2\. Creation of a process.

Execution can be automated. A factory can be automated with robots. Someone
who makes backups can be automated with a script.

But creation (of a process) cannot be automated. Until we have a major
breakthrough in AI our jobs are safe. Most programming is the creation of a
process, not the rote following of a process. "Programmers" making cookie-
cutter-CRUD apps may need to worry!

Our only threats are over supply and under demand. We are currently on the
winning side of supply/demand. Competition with low-wage countries has not
been able to significantly hurt us they way it has with factory work. We are
in a good spot.

------
warcher
The thing about development, and it certainly may slow down eventually,
especially as Moore's law staggers to a halt and broadband peaks, is that no
matter what I build, everybody always, always, always wants more. Every
framework I ever developed or integrated was met with a doubling of people's
expectations. Make it better, make it slicker, give me this feature, et
cetera. I think we've got between 40 and 50 years before we can even suggest
hitting saturation with our current technical capabilities.

~~~
GotAnyMegadeth
> especially as Moore's law staggers to a halt

It hasn't even begun to slow yet, has it?

~~~
hershel
For the last 5 years , or even more it has slowed considerably. Nvidia even
claimed in a famous article that next generation manufacturing processes have
no price benefit.

~~~
VLM
An interesting shift in the market can be observed in that demand is dropping
at the high end compared to in the past. Partially greater economic effect,
partially lack of demand.

The law might say the transistor density will increase, but if the market
isn't willing to buy it, or the companies can't financially offer them, the
law will fail but not for technical reasons. I think its a safe prediction the
law will fail not for technical reasons but financial.

~~~
hershel
I don't think demand for silicon(measured by area) for high end manufacturing
processes had dropped. It might have shifted from pc to tablets/smartphones.
but it's there.

According to darpa , the end would probably come due to money. But even
assuming unlimited money, 6nm is the size of a silicon atom. to go below we'll
have to split the atom :)

------
diydsp
A point repeated here has been "keep your skills flexible." A lesson we could
learn that would improve upon the auto industry disaster would be to consider
the "product line" itself. The auto industry was notoriously monofilamental in
its innovation, as its CEOs preferred it. Their conservative operation proved
a great long-term investment, with an eventual crumbling down hitting hard in
the 1980s and hardly recovering.

Innovation represents hours sweated and is always rewarded. So far the
computer science industry has been well-motivated to continue innovation, as
computation becomes one of the world's standard utilities. But once it's all
up and running _and_standardized, it will only take a smaller number of people
to run it, like the power grid, water supply, phone system, etc.

It is all like plumbing, and like plumbers, there are household ones for
household needs like web storefront/office/communications desks and industrial
plumbers, but most of the unique, research-y plumbers are in a small, elite
group who are innovating on their own and sharing their work with the public
and are well-compensated. I think that's the effect we'll see, a narrowing or
thinning of the industry somewhat, but it definitely won't settle until after
use-cases are standardized and we're still a zillion miles from that.

Imagine NASA doing a shuttle lunch with everyone from the control room at home
in their backyards cooking BBQ with their family :) Cell phone in one hand,
spatula in the other.

------
scotty79
Why more programmers are no threat to programmers jobs? Because more
programmers create more programs and more programs need more programmers (for
updates and maintenance).

------
mberning
I have a few problems with this article.

1\. The author points out all of the services which now exist, but says
nothing of people and talent it takes to create and support such services. I
think the tail for 'software enabled services' is rather longer than factory
automation robots.

2\. The author seems to have a somewhat narrow view of what developers
actually do these days. Yes, it is true that people are not typically employed
to roll their own e-commerce or blog sites. Very few people are doing this
nowadays. Most of the software getting written for business today is highly
specialized. Highly specialized software = no out of the box solution.

3\. The author ignores the fact that a major drop in demand for software
talent would probably coincide with some revolutionary change in technology.
I'm talking about ubiquitous self driving cars and planes, robots that teach
themselves, ad-hoc on site manufacturing via 3d printing, software that writes
itself, etc. Should any of those things come to pass, having a nice job as a
developer will be the least of anybody's worries.

While I do agree that the industry is changing, I really don't see it as being
that similar to the auto industry melt down. The differences and flaws in such
an analogy are easily spotted.

~~~
smk11
> _Most of the software getting written for business today is highly
> specialized. Highly specialized software = no out of the box solution_

This is one part of the developer community that doesn't get publicized as
much. The Startup web companies are not the only place where developers work,
but they are the most competitive. I work for an Assessor's office as a
developer, and we develop our management information system in house. There
are only about 7 developers that know how it works, and each one is
specialized in certain areas of it. There is no way that someone could come in
and replace us without spending years working with the software first. There
is no out of box program that could take the place of this specialized and
customized software. And even if there was a company this department could out
source too, they would not get bug fixes and new builds as fast as they do
now.

~~~
illumen
The uncle of a company leader (CEO owner etc) owns a software company. Through
a complex deal involving government grants, and a development deal with
another company, the software if developed through them actually makes them
money to build. Three of the developers are hired to the other company as
consultants for a while, so they can explain how it all works. The rest of the
developers are let go. Finally the original consultants are let go, at which
point everything is outsourced to a team based out of Lithuania, India, and
Brazil.

~~~
smk11
Yeah, that sounds plausible, but would have many draw backs that are big
enough, I think, to prevent it from happening where I work. For example,
needing a code change last minute before role close to be able to force
parcels through role before the normal close date, etc. Not to mention the red
tape that would prevent the department from being able to do that.

Also, in this scenario, I would hate to be one of the employees who uses the
software, because it is very complicated, and for them to have to ability to
meat with the development team face to face for training, feature requests, or
bug reports is very beneficial. But, it is unfortunate that some companies
often don't see the benefit of having good in house IT professionals and
developers, at least when they are looking for more ways to please
stakeholders.

------
shuaib
> At this particular moment in history, demand for developers outpaces supply.

I thought it was demand for "good" developers that was outpacing supply.
Otherwise there are many developers (even with the professional degrees) that
can't pass the Fizz Buzz test
([http://c2.com/cgi/wiki?FizzBuzzTest](http://c2.com/cgi/wiki?FizzBuzzTest)).

------
NKCSS
Too bad .nl doesn't pay Silicon Valley salaries; the norm here is more like
1/3rd of that.

------
jebblue
The points seem all logical on the surface. There's just one thing that makes
me disagree with the article as a whole. The software industry doesn't behave
like any other industry. The industry changes and fluctuates as often as
software gets refactored. It's like a billion springs permeating a billion
sponges. It's silly putty for computers. I saw this coming reading articles
about software as a kid. The one rule that hasn't changed in the 30+ years
I've been writing software as a hobby or for pay is that the software disobeys
all the rules of all the other industries. With software and compute power, if
you can dream it you can build it and someone, somewhere, will want it.

~~~
walshemj
Yes production line industry with semi skilled labor is very very different
beast to the IT industry trying to use two wildly different industries and
draw analogies is a losing game.

web development which the author comes from is a tiny part of the IT industry
as a whole.

------
johnfuller
The bottom line is that there is an infinite number of things to build and
while software won't build these things alone, it's still a big component.
Software didn't build the Space X rocket or the Google self driving car, but
there is a lot of code which is a big part of making those things possible.
All of the things that we can imagine in 50 years needs to have the
foundations laid in part by software developers today. A factory worker has
limited contribution to this future because of the constraints of the job, but
software development is wide open. We may not be able to build the deathstar
right now, but we can start working on the code for it.

cd deathstar git init

------
Aqueous
There are some parallels but the analogy falls apart. Even the most perfect
car does only one thing very well: get people from point A to point B.

That is, there is a finite amount of autorepairs and new car manufacturing
that is done and will ever be done, and that ceiling is related to how many
people own cars or want to own one at any given point in time.

But the potential domains for software automation are unlimited.

The demand for software programmers will keep increasing, continually, until
all the work that people do in their lives is automated by software. The time
to enjoy being a software developer might be finite, but I don't see the
plateau happening any time soon.

------
RossPenman
They are different because if developers were replaced by robots, developers
would still be required to create and maintain those robots. The same can't be
said for autoworkers.

~~~
MichaelGG
Yeah, automating all software development is probably equivalent to inventing
general AI. At which point we're probably all very well off, or all screwed.

------
stephanos2k
A chill went down my spine reading this. That's a good sign.

------
johnfuller
> When the most frequent complaint you hear is “I wish recruiters would stop
> spamming me with six-figure job offers,” life’s gotten pretty good.

As other have said many times here, a six figure job in some places is just
enough to possibly be compared to a middle class lifestyle elsewhere in the
U.S. Go look at the database of BART salaries, and as big as their pay
appears, these guys went on strike.

> WordPress does in fifteen minutes what once kept a freelancer busy for two
> months.

And yet, you can still easily spend two months plus on a Wordpress project.
Compare what people were building then compared to what people are building
now. The great thing about web development is that we can continually move up
the value chain. As some components get easier, that frees us up to work on
something else, always pushing the boundaries outward. As those boundaries
move, we are probably creating more work to do, not less.

> Maybe you don’t think a total n00b can walk out of a nine-week training
> program and do your job.

That noob better learn how to learn on his / her own. Really, who learns how
to be a developer from a school? I don't have a computer science background,
but does a computer science degree even teach this stuff? The bottom line is
that it's a relentless grind to continue to learn and build on that knowledge.
Not everyone has the drive to do that. It's far easier to pay for someone to
feed you knowledge and pretend that you are getting somewhere.

> To upset the labor market, one of two things needs to happen: an increase in
> supply, or a decrease in demand.

I don't see supply outstripping demand happening anytime soon, if ever. I have
been waiting for the hordes to come for years, but this hasn't happened. I
would think it would have happened by now. And demand doesn't sit still
either. As other markets emerge, they eat up their local talent.Sure, this
local talent may work for far less than their U.S. equivalents, but for how
long? When you have cost of living in certain regions of developing nations
ratcheting up to be as high as any U.S. city and companies like Alibaba
hitting huge numbers, then developers in these regions will get paid. They
just have a bit of catching up to do, that's why we call them "developing."

> No profession stays on top forever… just ask your recently graduated lawyer
> friends.

Isn't that a crazy comparison though? This article mentions how low the
friction is for getting into development, and then makes this comparison with
a profession with a relatively huge friction. The development industry looks
nothing like law. Part of the problem there is that the law profession built
walls up that technology is tearing down. The development industry has no
walls.

~~~
learc83
>Part of the problem there is that the law profession built walls up that
technology is tearing down. The development industry has no walls.

Exactly law school was such a golden ticket because the lawyer's guild set it
up that way. The ABA convinced the state governments that that they should be
the gatekeepers of the legal profession. They manufactured scarcity that drove
up prices.

New lawyers can still make a decent income, even now. The problem is that they
need to make way more than a decent income to pay the inflated tuition rates
charged by most law schools.

------
quaffapint
It's not a good time to be a developer as it used to be. That was 10+ years
ago, now the pay is much lower than it used to be.

You used to be able to hop jobs and make good jumps, now around here you hold
on to those old jobs so you don't end up with a pay cut.

So, it's much more limited, though it encourages more side work I guess, just
so you have something interesting to work on.

------
MichaelMoser123
Autoworkers used to earn a decent salary, now it is programmers; Wow, now you
need to have a degree in order to be somebody. And in a hundred years you will
absolutely need to have a PhD in order to make ends meet ?

Maybe its all about supply and demand: only rare skills are worth something;
if the once valued skills get common then all the advantages go out of the
window (tm).

------
MisterBastahrd
An autoworker needs an entire factory around him to do his job, along with a
couple hundred other developers. He's nothing more than a cog in a wheel, made
to do one specific thing over and over again to bridge the gap when there is a
task a machine can't handle.

A developer just needs a computer, a compiler, and some motivation.

------
rprime
So the baseline is, and this applies to almost all kinds of jobs, stay
relevant and be good at what you do.

------
ghostdiver
This article is so true, software dev job market will implode in long run.

------
adw
Generalizing from the Valley to anywhere is insane. The Valley, right now –
like it or not – is the NFL for geeks. (For better and worse.)

------
gdy
Can someone who has experienced "social stigma of being a programmer" share
what's it like?

~~~
walshemj
well the NO 2 guy at BT labs (the uk equivalent of Bell labs) was confused
with a car mechanic when he said he was an engineer.

------
Killah911
So, I don't know if people remember the early 2000s, but it wasn't a terribly
great time to be a programmer. All the jobs were going out to India. However,
I learned a very important lesson. You have to be competitive. If you were
someone who couldn't see past cobol, you did become obsolete. While
programmers in India are still relatively less expensive than their
counterparts in the US, top programmers are still sought after and make
significantly more than the rest.

Sure the barrier to entry is "low", but it isn't that low. I think one of the
main problem is, calling someone a programmer is an extremely "broad" term. I
know some who can barely string together a few lines of PHP code and other who
design and build complex systems which run the world and improve people's
lives. If you're a programmer who just "codes" HTML, which you learned over
one weekend and haven't take the time to improve your craft, sure you may be
working now, but you're likely to get wiped out easily since the barrier to
entry into your line of work would be very low.

In a sense the OP is right in that programmers shouldn't be complacent. I know
a lot of C coders who have serious BS ego issues and refuse to do anything but
C and then complain that they can't find work after being laid off.

BUT, I'm not shivering in my boots due to Stripe and Wordpress. Any programmer
knows there's a bunch of crap that's tedious work which can be automated away.
The good ones automate them and improve their craft and focus their energies
on building better systems. I think that even with Wordpress, Stripe etc,
there's a lot of room form improvements in the way we develop.

I recall spending days getting a dialog box UI just right in MFC. I thought it
was stupid then and after using C#, never used MFC to build a dialog box ever
again. Result wasn't that I'm out of a job. I actually have been able to
produce a lot more. Programmers are in ever more demand than before. Sure the
field will probably get tapped at some point, but to say it's going to be due
to "automation" which has been a staple in our profession since the very
beginning is simply inane.

Going with the autoworkers analogy, there are people who turn wrenches and
people who figure out six sigma. If you're doing something as simple as
turning a wrench, sure, you will get easily replaced by robots. But if you're
innovative and competitive, you'll be significantly harder to replace and you
can probably find applications for your skills in many more places. There are
certain skills you just can't automate away so easily.

I would argue that programmers/developers will have jobs long past even
doctors (maybe). Repetitive tasks can easily be automated away, creativity and
innovation on the other hand aren't quite as easy. (FYI, the reason all
programming jobs aren't just in India is because the US still rocks when it
comes to creativity and innovation, based on my own experiences as an
employer/manager and in speaking with others in the same position who have
programming staff worldwide)

------
klepra
Depends on where you live.

------
BigBalli
Too bad autoworkers never made $100k+/yr even with inflation adjustment. Very
far fetched.

~~~
Mc_Big_G
I worked in the auto industry for 10 years and I can tell you that, before the
industry crash, I knew a guy who put the owner's manual in the glove box and
made over $100k/yr. This was not uncommon and the guys that worked a lot
overtime were millionaires. I remember one gentleman who was 72 years old and
still working 7 days a week. I can tell you a lot of stories about the
automotive industry that you probably won't believe.

------
wavesounds
Happy Labor Day!

------
stewartjarod
There will be another distinguishing mark on programmers. Those that can write
their own code and those that can fumble the pieces of other's code together
to create a product.

There will be a lot more of the latter in the future than there has ever been.

------
cpp900
Load of carp.

