
One day, we'll all be programmers - zamfi
http://zamfi.net/blog/one-day-we-will-all-be-programmers
======
unshift
i don't buy it.

haven't people been saying that since the 70s? even SQL was designed with the
intent that accountants could use it. but programming is really hard,
especially if you want something that's done well.

i've also yet to see any general purpose robots that can do anything useful. i
still think it's a long way out, if at all possible. there are tons of
considerations that go into just about anything and if there's no magic AI
there's really no way to program every useful (nevermind adaptable) constraint
into everything.

~~~
pavel_lishin
People can't even give unambiguous driving directions to other rational human
beings, and we expect them to be able to instruct computers on what to do.

("Take a right at where the barn used to be", "Go until you see the house with
a big tree in front of it, you'll know what I mean, it's pretty big", "Take a
left at the dog")

~~~
chops
The best example I ever heard of that was a friend of mine giving instructions
on how to get to his OWN house, where he'd lived for at least 5 years. He
didn't know the names of the streets around his house, and just told us to
turn right after the "lighthouse mailbox".

For what it's worth, whenever I'm in that area, I always notice the lighthouse
mailbox now.

------
toddh
Only in the same sense putting on a bandaid or taking some aspirin makes be
doctor. Using specialty items created by others in rather uncreative ways
according to well known rules.

------
joshsegall
This post is rife with bad assumptions. Here are some big ones:

1\. Dexterity is NOT the "last mile" gap to having robots in minimum wage
jobs. I don't care if the robot can flip a burger, can it recognize a grease
fire (and put it out, and clean up afterwards?) Can it recognize a moldy bun
or if the special sauce is spoiled? While low wage retail jobs don't require
years of specialized training, they do take advantage of a lot of innate human
skills. Most of the mechanical aspects of these jobs are already automated.

2\. Good software is not created by people sitting in cube farms programming.
In projects of any size it's more about communication among developers and
between developers and other business functions than writing code in
isolation.

3\. Not everyone can be a programmer, and most that could be won't want to
(and I predict won't have to). I'm sure you can invent trivial examples that
anyone can do, but then you're not saying much. There are large classes of
people that can't program a VCR or do long division, let a alone construct a
slightly involved program. As someone who's been involved in research that
attempts to teach average people how to "program", I feel confident that we
will never see a large portion of people become programmers.

~~~
zamfi
Thanks for your thoughts. Just to respond a bit:

1: One human is enough to put out grease fires, clean up, and find moldy buns.
Most fast food joints have multiple humans, and dextrous robots would change
that.

2 & 3: I don't think I made either assumption. Specifically, I didn't say
we'll all be _good_ programmers or produce _good_ software. (Even today, not
all programmers are good or produce good software.) I suspect what we think of
as "programming" will change significantly, and with it, the number of people
who program.

------
sliverstorm
One day, if the programmers do their job well, nobody will be a programmer.
The system will either be so robust and self-sustaining it requires no humans,
or it will program itself.

~~~
russell
You mean like we're all writers, instead of having to rely on a few
professional scribes? I shudder to think of the programming equivalent of the
blogosphere.

~~~
pavel_lishin
Why? The same people who "lyKe can0t bELIEVe jim wud do dat to me" aren't
going to be writing drivers for x-ray machines - they'll be giving "good-
enough" instructions to machines that'll be smart enough to understand them.

People's dumb blogs get the job done for those people, and the people who
choose to read them.

------
diogenescynic
Programming is quickly becoming the new form of literacy. I think eventually
everyone will specialize but programming is going to be at the root of
everything whether it's biology, chemistry, physics, or music. I think there
will be many more interdisciplinary majors and professions.

------
csomar
I think it'll become important, and may be a skill in your tools-set. How can
a programmer build a medical scans interpreter without being a doctor? He
can't. He needs Medical training.

Automation will drive more creativity, but not necessarily more programming
jobs. The need for more automation jobs will drive needs for more programming
_skills_. I think we are already there, we call it "technology". It's anything
that makes use of the digital world to get improved results.

------
clavalle
This is probably the same as someone saying a hundred and fifty years ago "One
day we will all be mathematicians." which eventually became true from the
point of view of someone who's idea of higher math was calculus. But
mathematics progressed...programming will progress too, I have no doubt.

------
Tharkun
No, we won't.

Maybe one day we'll all be unemployed and bored out of our minds. But we
certainly won't all be programmers.

~~~
crux_
Why equate unemployment with boredom?

------
webjprgm
First, you wouldn't get all programmers. You'd still have customer service.
You'd probably also have executives, teachers, scientists, mechanics to work
on robots, doctors, cooks, and then your smattering of people mixed in to help
with robotic and computerized tasks.

Second, many people are not skilled enough in math and logic to program well.
If programming became as pervasive as math education, lots of people would
forget it after high school or never really learn it. If it became as
pervasive as writing (as some commenters mention), then it would exist in a
similar state: a collection of highly talented authors and a mass of
untalented writers (with some in between). So you'd have to have newer
programming environments that let unskilled people get some useful tasks done
reasonably well. We have a lot of work to do before programming environments
get there, but some people can make interesting things with mangled Excel
spreadsheets or spaghetti code in PHP or copy-paste-modify JavaScript hacks.

Third, also as some people mention, labor is cheap in certain parts of the
world, so robots aren't economical. Contrary to what some claim, I don't think
that will go away. There will always be some portion of humanity that is not
sufficiently educated to be programmers. This could be due to socio-economic
circumstances, or it could simply be because they don't want to learn it. Some
people go through high school refusing to learn, others drop out. How do you
fix that? If they can't get customer service jobs, then they have to sell
their manual labor cheap enough to compete with robots. You'd only replace all
that if you eliminate poverty on a global level and have excellent education
globally too. Then there won't be cheaper labor, so those jobs will move to
robots, and then there won't be enough people wanting to hire humans for labor
and so finally that market would cease to exist. I'm not counting on that
happening, not even in a hundred years and possibly not ever. With a concerted
effort we might have a chance at a utopian-like society world-wide in a couple
hundred years, but that's plenty of time for wars, natural disasters, apathy,
tyrants, terrorists, or any number of things to mess it up.

Conclusion: Sure let's make programming environments more accessible to less-
nerdy people, and let's improve education about programming, since these
things will improve lives. But we won't end up with all programmers.

