
A simple way to "get more people to code" - smackay
http://www.yosefk.com/blog/a-simple-way-to-get-more-people-to-code.html
======
doctorwho
After 25+ years of coding and reading other people's code I would submit that
the REAL problem is that the people who do code don't do it very well, some
are downright stupid.

There are a lot of people out there who will never be able to produce anything
beyond "Hello World" and some will struggle to get that far.

What if we focused early on identifying kids with good problem solving skill
and other aptitudes that _might_ make them good programmers and encouraged
them to explore those areas. What if we did that for every discipline?

No, that would mean taking an interest in kids instead of just herding them
into classrooms where they can be safely ignored until they're 18. Let's keep
doing that.

~~~
rokhayakebe
I think EVERYONE should learn to code just as everyone learns ARITHMETIC.

Imagine a world where only a few of us knew how to balance an account, or a
few of us understood how much will they have left if they spent x amount at
the gas station.

Now imagine a world where everybody has a basic ability to develop software.

All the above being said, the beginning is not programming, but learning how
to Think, Read, and Write. Not programming language, but human language. When
we have learned some basic thinking process (logic), then having the ability
to easily program will follow.

~~~
streptomycin
_Imagine a world where only a few of us knew how to balance an account, or a
few of us understood how much will they have left if they spent x amount at
the gas station._

You're living in it. Math illiteracy is very common.

~~~
rokhayakebe
But Arithmetic is not. I am not making the case for Math, but Arithmetic. I am
not making the case for Computer Science, but programming.

------
dropit_sphere
This piece is genius. _For those who don 't get it, it's dripping in sarcasm_.
Not to say that the author doesn't think it would work (he may have some
misgivings about just throwing money at developers), but that he's calling
bullshit on the motives of those talking about "learn to code."

People are paid in more than just money. There's job security, interesting
work, autonomy, and (more motivating than people think) social status. The
vast majority of developers don't have anything but money, and frankly a lot
of them don't even have money!

There are things more important than writing code (even good, well-engineered
code aimed at solving real problems). There's: playing with your dog, going
for a run, spending time with your family, and going out for a night with
friends. People have chosen all these things over learning to code. _Let
them_.

Is it not a BIG RED FLAG that the prime message is "Everyone should learn to
code...well, everyone but me, anyway."?

~~~
icebraining
_There are things more important than writing code (even good, well-engineered
code aimed at solving real problems). There 's: playing with your dog, going
for a run, spending time with your family, and going out for a night with
friends. People have chosen all these things over learning to code. Let them._

This doesn't strike me as a particular good argument; for one, it implies that
it's OK to not let people chose less important things than writing code (say,
watch reality TV).

But besides, who exactly is trying to remove that choice? I don't see any
advocate of "learning to code" saying we should force people to code.

 _Is it not a BIG RED FLAG that the prime message is "Everyone should learn to
code...well, everyone but me, anyway."?_

Maybe. But then again, many of those pushing the message are programmers
themselves.

~~~
dropit_sphere
_I don 't see any advocate of "learning to code" saying we should force people
to code._

Perhaps not. But anything a teacher tells a learner to do is basically force.
What choice does the learner have? They don't know any better.

This would be fine if what they were teaching were worthwhile. But it won't
be: it will be "How to use Rails" (rather than, say, Ruby) or "How to use
Bootstrap" rather than _actually learning CSS_.

------
CmonDev
"If there's a shortage of programmers, we could pay programmers more money."
\- the idea is driving salaries down, unfortunately. Even Apple who happens to
own the largest hedge fund in the world, was trying to keep salary level
constant by entering the illegal agreement with Google et al.

------
ronaldx
Exactly right:

Tech companies wish to encourage people into code primarily in order to reduce
their wage bill.

Zuckerberg and Gates are not credible authorities here.

------
gutnor
"Companies could increase the representation of younger people in programming
by paying extra money to programmers below a certain age."

With ageism being considered "natural", what about giving incentive for old
developers to keep coding instead ?

~~~
_yosefk
Think a few steps further down these lines and you'll be able to separate the
people worrying about "teaching everyone to code" into evil (companies looking
for cheap labor) and stupid (people thinking there are problems that need
solving where there aren't any and it is "solutions" that breed problems, in
this case a surplus of professionals in one area at the expense of other areas
and the workers who've needlessly entered this one area.)

Or maybe self-serving and naive/idealistic would be better terms. But you get
the idea.

Indeed any consistent argument in favor of motivating people to program would
at least mention aging programmers and no such mention is to be found, or at
least I never noticed it.

~~~
jimktrains2
I take offense to your " 'teaching everyone to code' into evil and stupid"
comment.

When I say "everyone should know how to code" what I mean is that everyone
should know how to open a spreadsheet and do calculations, conditionals,
iterative calculations, &c. From there I feel it's natural to then teach them
a little of something along the lines of Python to do some simple calculations
and algorithms.

I mean that people shouldn't be afraid to use a computer to do (gasp)
computations. I don't think everyone will be a coder, engineer, or architect.
I don't even think most people will enjoy it, per say, but they should know
how to do it (just like someone people complain about having to take math,
music, or art), using a ubiquitous tool should be part of a basic curriculum.

>Indeed any consistent argument in favor of motivating people to program would
at least mention aging programmers and no such mention is to be found, or at
least I never noticed it.

I have no idea what you mean

~~~
null_ptr
_> >Indeed any consistent argument in favor of motivating people to program
would at least mention aging programmers and no such mention is to be found,
or at least I never noticed it.

>I have no idea what you mean_

Our industry has a fierce bias against older people, and indeed keeping an eye
on HN for relevant stories shows that even top talent can be left to hang. If
you're around at a company for long enough you'll see how some senior folk are
fired and replaced by fresh college grads, sometimes after grooming those
newbies for a while.

~~~
jimktrains2
Absolutely none of that has anything to do with what I said.

Also, just because people have shop class doesn't mean that everyone will
become a carpenter.

------
lnanek2
I wonder if he doesn't realize companies are just always claiming a shortage
so that they can import more cheaper H1B workers rather than hire domestic...

------
lgleason
There is not a shortage of programmers, there is a shortage of inexpensive
programmers.

~~~
jonsen
Doesn't that imply that there is a shortage of programmers worth their salary?

~~~
dropit_sphere
Then...drop their salary? Are these companies being run by four-year-olds? "We
lured developers with huge compensation packages because we only want
rockstars, but we end up losing money on them!" Which is it? Is it a highly
valuable skill that everyone should learn (why doesn't the company owner learn
it then?), or is it "sneaky _non-unionized-and-colluded-against-by-Google-and-
Apple_ developers aren't "worth" their salary?" Gotta pick one.

Some companies are just not the best use of dev time, and should die if they
require it to survive. I feel _much_ better saying that about companies than
people.

~~~
jonsen
How could there not be almost nobody but "four-year-olds" in an immature and
fast pacing technology sector?

~~~
dropit_sphere
But there are not. A _sector_ being new is not a constraint on the
individuals.

Plus, pleading about inexperience seems a little late. It's _2014_. _The
Mythical Man Month_ was written what, 40 years ago? Maybe I'm off and it's 30.
Still?

Honestly as I think about it, _that_ is a book _everyone_ should read.
Managing software development is a more valuable skill than the actual
development.

------
aufreak3
I believe the "get more people to code" movement wasn't about "we need more
programmers". It was about what Alan Kay might call "digital literacy".

~~~
_yosefk
And why do we need digital literacy any more than machine gun literacy or
brain surgery literacy or anything like that? Except Alan Kay, everyone knows
perfectly well how useless programming is to anyone but the professional
programmer.

~~~
sanderjd
I think the "learn to code" movement should eventually evolve into "learn to
X", where X is something that does prove to be widely useful, and for which
"coding" is a prerequisite skill. Data analysis strikes me as a possible value
for that X.

------
eliteraspberrie
We're told that the software profession must be made more accessible, and that
programming should be taught to all children. Great, I agree. No child without
the command line!

Let's also consider another industry: cars. Car ownership per capita in the US
is greater than the rate of households with Internet access -- 0.769 versus
0.748. [1,2] So professions related to cars have greater impact on people's
lives, on average, than professions related to computers.

Furthermore, most car owners would agree that maintenance is expensive, very
expensive. Not to mention the fact that most mechanics are men. Nobody has
proposed that everyone should be a mechanic, let alone a mechanical engineer.
The President has not called for more mechanics, more women mechanics, or for
relaxed visa requirements for foreign mechanics. These things would be seen as
ridiculous.

Until programmers form a regulated professional body, with its own lobby, they
will continue to be singled out by the various lobbies of the IT and social
justice industries (strange allies).

[1] 240 million car owners in a population of 312 million, in 2011.
[http://wardsauto.com/ar/world_vehicle_population_110815](http://wardsauto.com/ar/world_vehicle_population_110815)

[2] 74.8% in 2012.
[https://www.census.gov/hhes/computer/publications/2012.html](https://www.census.gov/hhes/computer/publications/2012.html)

------
jperks
It is a real problem in Germany where IT market has 0% of programmers'
unemployment, so they introduced Blue cards welcoming programmers from Eastern
Europe. And it helps them, they get the workforce of moderate price, ready to
learn and speak German. Their work language is English. So if it was a Real
problem in the US, they would do the same. So far, it seems like another buzz.

------
joesmo
I agree that money is the solution to such problems, however reducing the
incentive once enough programmers have entered the workforce would compel
people to leave the field and do something else. If it was known that this
reduction would come, it's likely that it might not have a positive effect on
programmers and many people would not necessarily pursue a career in the
field.

Also, one has to take into account that most people will just not cut it as
programmers, no matter how much time or even practice they may put in.

------
Ryel
I would rather see developers in the community focus more effort into already
existing libraries/frameworks and making them easier to install/setup/build an
MVP.

------
nathas
This is an understandable way to look at the problem, but I think it's largely
wrong. You need to capture minds while they're still very open to learning.
People are locking themselves into career paths by the time they graduate
college, at least in America. Student loans means getting a second degree in
something you rather do is largely impossible since you have to start paying
down your debt when you graduate. A higher-paying job sounds great, but when
it'll take an extra $400/month in debt for the next 10 years, it's pretty hard
to justify. This leads to thinking "Huh, let's engage minds earlier".

Most people in high school aren't thinking super-hard about their careers.
They're thinking about school and college. Even then, kids learn about "big"
achievements - RNA, species classification, electron shells, WW2, White House
scandals, etc. You're aspiring to be someone if you're in an area where you
have scholastic resources, not just some programmer. You're not looking so
hard at money. If you're in an impoverished area where graduation rates are
abysmal and you're not even being taught science, the odds of being a
professional athlete or pop star look about the same as going to college - a
whole different set of challenges. Let's assume we're talking about high
schools with resources to even have computer classes.

Paying more money doesn't make it a sexy profession - there are plenty of
"famous" programmers that the HN crowd knows about, but none of their
achievements are public. Creating a business like Amazon or Facebook doesn't
have the same personal allure to most people like inventing a vaccine for
polio does. I bet if you asked a classroom of high schoolers who Jeff Bezos
is, 85% of the room would have no idea. There's no _personal glory_ to being a
programmer.

With law, you can help people's lives directly - same with being a doctor.
There's a social value to those professions that seems obvious and immediate
(even though it might be far from the truth). Most people want to do good in
the world, and being a programmer has no obvious correlation with that. It
doesn't entice students because there's no history written about programmers,
no scientific experiments you do in classroom, no math taught that correlates
with programming. It's in academic isolation until college, and by then, it's
too late.

~~~
dropit_sphere
"This is an understandable way to look at the problem."

Who says it's a problem?

~~~
nathas
The author. It's the heading of the first paragraph after the disclaimer.

~~~
dropit_sphere
The author also has scare quotes in the title and refers to the shortage as
"supposed."

------
jorgecastillo
I think that all this "get people to code" movement is bullshit. If you like
programming you are going to do it no matter what. For some years I was
without a computer, but I still managed to program in my smartphone. I will
always like programming regardless of the outcome. If one day I become
successful because of this great. If not at least I lived my life the way I
like.

------
netcan
I think there's some moral issues in taking taxes from people who earn $40k
and giving them to people who earn $100k.

Anyway, I think the issue of "not enough programers" is different to "not
enough people can code." To keep beating the old writing analogy. One is "not
enough scribes" and the other is "not enough literacy." At some point in
history professional writing and literacy stopped being substitutes for one
another.

Normal literate people didn't compete with novelists. Or looking at it another
way, printing presses and literate public completely removed the need for
scribes and (I think not coincidentally) we got lot more writers shortly
after: novelists, pamphleteers and scholars.

So nurses who can code will not replace the programmers who wrote
healthcare.gov but they might do different useful things.

------
VeejayRampay
Let's get "more people to code well" first. Then let's get companies to
compensate their employees fairly (i.e. more proportional to the amount of
cash they generate with their if and for loops). Then maybe we can start
thinking about enrolling more people in the game.

~~~
dleskov
I second the first and last statements. As far as compensation goes, here, an
average Java developer makes a least 3x of what is the average salary for the
region in which I live. Yet all local companies are complaining about the
quality of job applicants and interns. Those high salaries seem to be
attracting quite a few lazy people seeking easy money.

------
gtirloni
One idea that comes to mind is the creation of a website with a list of
problems that could be solved by coding, if someone would step up and do it.
Regular citizens that are impacted by these issues would perhaps think they
have a shot at solving a real problem for them, by coding something.

The main point is, some people might not be interested in coding just for the
sake of it...

Is there such a list? Social hacks? Coding for change? What resources I could
show a fellow citizen to get him/her fired up about coding?

------
antonius
One of the suggested solutions is for companies to raise wages. As far as I
know, these companies already pay high five-figures for new, full-time
employees.

~~~
jelloPuddin
try six

------
joshdance
Asking the government to create more coders seems like a good idea until you
realize that our government doesn't 'know how to code'. Who would validate the
code being submitted for benefits was good? That the children were learning? I
realize this proposal is slightly humorous, but that was my first thought.

------
xbryanx
This is flawed in its effects. While it may result in more coders, they will
be concentrated in the areas with the available money to pay them more. I'd
argue that this is very similar to what we are doing already. Programming is
chasing the money and not the most pressing problems.

------
carlosrt
Maybe we should also pay people to study math as well. [$10] for each Khan
Academy lesson they pass. It'd cost ~$2,500 to educate one person on the
entire math curriculum.

I think it's plausible, in the future, we will be paying people to learn.

------
vezzy-fnord
This is a rather forceful and coercive way to solve this (alleged) problem.
I'd expect to see lots of mediocre labor pop up as a result.

~~~
null_ptr
It's not like the software world isn't full of mediocre labour to begin with.

------
brador
Code is a tool. We don't want more people to code, we want more people to make
cool new things and automate.

------
efficientarch
"Like all brilliant ideas, my solution is simple". Too modest.

------
kerkeslager
Programmers already get paid more than most people. You're proposing a
solution which has already been tried.

