
We asked 15,000 people how they're learning to program - quincyla
https://medium.freecodecamp.com/we-asked-15-000-people-who-they-are-and-how-theyre-learning-to-code-4104e29b2781#.tesff0l03
======
MollyR
It's funny. I'm seeing this, while I'm thinking about dropping out of this
career. I don't want to be one of those girl dropout stats, but lately I'm
feeling a desire to start a family. fwiw I just passed 32 and I don't know if
I want to do programming/software engineering jobs anymore. I'm hoping its
just a phase.

~~~
cgriswald
I had a little bit of a career, had a kid, and became a stay-at-home dad.
After working from home for a bit, I ended up letting the career slide and
ultimately end. Along the way I realized I didn't really care for it.

Now I'm back in school in an unrelated field and realizing that coding can be
an asset in the field. I'm working on a personal coding project as a way to
get back into things.

My physics prof believes that going to school for computer science is like
going to school to learn all how a shovel works, while other majors (like
physics) just learn how to use the shovel in order to accomplish their goals.

I don't entirely agree with him, but it made me realize it was never coding
that I stopped liking. It was coding _about stuff I didn 't care about_ that
had killed my interest. (Interest in playing with technology for the sake of
playing with technology had faded for me.) Now when I code, it is because the
code is a step (one I find fun, enjoyable, and usually relaxing) towards
another goal.

So, it might not be a phase. It must just be you are craving more.

~~~
morgante
> My physics prof believes that going to school for computer science is like
> going to school to learn all how a shovel works, while other majors (like
> physics) just learn how to use the shovel in order to accomplish their
> goals.

And this is how labs end up with terrible code that doesn't follow any best
practices and is completely unmaintainable.

If scientists weren't so arrogant, they might realize that if we're spending
years studying something it might be a bit more complex than a shovel.

~~~
glaberficken
> If scientists weren't so arrogant, they might realize that if we're spending
> years studying something it might be a bit more complex than a shovel.

If some programmers weren't so arrogant, they might realize that terrible code
that doesn't follow any best practices and is completely unmaintainable solves
a lot of day-to-day problems in many many fields/businesses.

The beauty of programming and the spread of knowledge today is that you
absolutely need not be an expert to make something that works and automates
real work in the real world, every day.

Again, "some programmers" (not all) seem to be overzealous in defending some
kind of exclusive right to develop software the right way, as opposed to the
wrong amateur way.

This irks me a little bit, not meant to be a caustic comment =) sorry if it
sounds a bit like one.

~~~
morgante
I think you're getting angry about something I never said.

I'm well aware that terrible code solves many problems out there. Yes, it's
great that people are able to use code to solve problems without being
experts. It's also true that their code could be even better if they learned a
bit more.

Just because people can do the basic level of something (it's great that they
can!) doesn't mean the field is easy or useless. It's especially irksome that
the primary reason physicists can hack together dirty scripts easily is thanks
to the pioneering work of actual computer scientists.

~~~
dozzie
> Just because people can do the basic level of something [...] doesn't mean
> the field is easy or useless.

Actually, the shovel analogy is quite accurate after tweaking a little.

"Just because people can do the basic level of digging holes in ground doesn't
mean the field is easy or useless".

Operating an overgrown shovel called "excavator" is not an easy task and
requires plenty of training to do it well, yet it's but a tool. And we would
still need all the knowledge from civil engineering (totally separate field,
though "engineering", not "science") to make any substantially larger or
deeper hole in the ground.

All this doesn't make digging holes useful on its own.

It helps to sometimes look from this angle at programming and computer
science.

------
hunterwerlla
I know code camps are usually web focused, but I'm really surprised about the
lack of any lower level, desktop, or non web back end options for "which roll
are you most interested in". Coming from a CS background I was also surprised
that more people were interested in front end web development than back end
web development, because most of the people I interact with hate front end web
development with a passion.

~~~
chlee
Front-end programming is very visual. You can immediately see/sense/feel what
you have developed/program, so there is a expedited positive feedback loop.

This can appeal to beginner programmers because it gives a immediate sense of
satisfaction and accomplishment vs. backend programming where you see lines of
output spit back to you in a terminal.

~~~
kuhzaam
That's interesting, as I feel the opposite. I am a front end dev for a large
eComm company, but do a lot of back end programming and scripting in my free
time. The reason I love programming is problem solving. I have the most fun
doing coding challenges, and get the most immediate sense of satisfaction and
accomplishment when I write an algorithm that solves a test case. Although my
day job is primarily "application level" JS, I am least happy when I have to
do the visual things, like adding new templates with HTML/CSS. To me, design
tends to be too subjective (if I'm going to do it, I'd much rather have
someone provide me with a design PSD), and it tends to feel
monotonous/tedious. I guess that's why I'm considering moving more into back-
end development.

~~~
technomancy
I wonder how much of this is because they are simply new to the field. Front-
end stuff is more immediate, and immediacy is appealing. Back-end stuff has
you spending less time worrying about compatibility headaches and all the non-
problem-solving rabbit trails, but if you haven't spent a lot of time
programming, you might not realize this and just assume that the level of
headaches doesn't vary much.

~~~
collyw
Thats what I thought. Front End involves knowing a lot of quirks between
browsers / css / JS and I find it a lot less about solving problems in an
abstract way. Instead its solving "why does this display this way one one
machine and another way on that machine" problems.

------
santaclaus
I was surprised to see no mention of game development as what drew one into
coding. Half the cats I've worked with got bit by the programming bug
initially wanting to make games.

~~~
shurcooL
Yep, that was me. Now I'm more into making helpful tools, but games are a fun
side hobby.

~~~
sharkweek
Just to be unnecessarily argumentative, I think video games ARE helpful tools
for a wide variety of reasons =)

------
justinlardinois
> Most of them are already applying for developer jobs, or will start applying
> within the next year.

I think the possible answers for this question bias towards that conclusion.
Out of the five options, four refer to a time frame between now and a year
from now.

Also, for the "Which learning resources have you found helpful?" I'm surprised
that the official documentation for the language one is learning and "random
tutorials I found on Google" aren't options. I know that's how I initially
learned to code, and I was under the impression that it was somewhat common.

~~~
sotojuan
You'd be surprised as to how many people do not read the official
documentation for the tools they use. They'll spend time on Google or Stack
Overflow rather than a minute in the official docs—even when they're great
(e.g. Rails guides).

~~~
teach
Well, in their defense, most documentation is terrible. You get used to being
able to find something in two Google searches that you couldn't find in five
minutes looking through the docs.

~~~
justinlardinois
I suppose it depends on what languages you use. The docs for C++, Java, PHP,
and the man pages for C have all been very useful to me.

Python is terrible.

------
gjkood
In the Demographics and Socioeconomics section, I see 1% of respondents speak
Chinese, and no data shown for China in country of citizenship. Also it says
8% have served in the military and a picture showing what I presume are
soldiers in the Chinese military (I could be wrong).

Is it that there are few survey respondents from China? Is the survey
accessible from China or blocked by the great firewall?

Just curious since the numbers seem very low and I presume there should be a
far greater percentage of Chinese respondents purely by population
demographics.

~~~
quincyla
The survey was accessible behind the great firewall.

We had 88 responses from Chinese nationals. 137 respondents were native
Chinese speakers.

We're still working on building a sandbox for the dataset, so I can't answer
your questions at the moment, but you're welcome to dive in to the data. Or
you could create a GitHub issue asking this and we'll try to create a
visualization: [https://github.com/FreeCodeCamp/2016-new-coder-
survey/issues...](https://github.com/FreeCodeCamp/2016-new-coder-
survey/issues/new)

------
chlee
On a tangential note.

I've spoken to a few hiring managers who have expressed disappointment with
some of the hires that they have made straight out of bootcamps (w/o prior CS
knowledge or fundamentals).

Specifically, the bootcamp graduate are smart, motivated, and know their
specific toolsets well. However, they tend to struggle a bit if you place them
outside their comfort zone.

Is this a sentiment that others have heard through their work colleagues or
friends as well?

~~~
sotojuan
I've heard the same thing about college graduates with minimal or no
experience (no internships, for example).

------
quincyla
The full open dataset here: [https://github.com/FreeCodeCamp/2016-new-coder-
survey](https://github.com/FreeCodeCamp/2016-new-coder-survey)

------
dudul
Interesting to see that only half of bootcamp attendees actually found a job.
That's not the kind of stats these camps like to advertise.

~~~
mverwijs
But than again, this is not your average bootcamp. From the FAQ:

"What is Free Code Camp?

We’re an open source community that helps you learn to code."

------
forrestthewoods
I Wish their data set wasn't so biased. 72% of respondents found freecodecamp
helpful? Well that answers almost everything about who they're talking to!

Doesn't seem like a fair representation of people who are learning to code.
There are 40,000 computer science graduates per year. So perhaps 160k to 200k
CS majors at any given moment. Those people learning program doesn't seem to
be represented at all in this survey.

~~~
quincyla
These are all things you can filter for in the data. 13% of respondents, for
example, were computer science grads, so filter just for them and you still
have what will be statistically significant dataset for most questions.

------
bduerst
Why didn't they ask which languages they're trying to learn?

~~~
notsotrue
Given the other data points, you can assume javascript.

~~~
bduerst
There's also a podcast for C++, python, etc. It's all over the place.

------
bbcbasic
Amazing free market research. I am going to make good use of this :-). Also
note there are 2 links to other free research in the github repo.

------
PavlovsCat
By wanting to do something, then finding out how I need to do it. I never
learned anything just to learn it, it was always for direct use. Once I made a
bunch of Renoise plugins in LUA. Never had used LUA before, never used it
since, I don't know any LUA. I know what I use while I use it, so to speak. So
I don't really know if I ever "learned programming", I probably wouldn't call
myself "programmer" and surely not developer.. I just do things until I have
what I want and it works. With things I make up and expand as I go along,
until I realize I need to restart from scratch with a better structure. And of
course, that I like simple things helps :) The code always has some ( _cough_
) messyness to it.. but the next thing I start, is usually a bit cleaner and
better organized from, because it incorporates what I learned in the previous
adventures.

~~~
kraftman
It's 'Lua' btw.

------
leggomylibro
I'm surprised at the education numbers; out of the respondents who attended
university, 22% studied either Computer Science or IT.

Reading their 'how we made the survey' piece (1), it looks like they asked for
responses across a wide variety of media and only branded it as a 'New Coders
Survey'.

So I have to wonder if they caught a bunch of people with traditional computer
science education in their net. That would definitely skew the data
considering the sort of conclusions that they're trying to draw about coding
bootcamps.

(1): [https://medium.freecodecamp.com/we-just-launched-the-
biggest...](https://medium.freecodecamp.com/we-just-launched-the-biggest-ever-
survey-of-people-learning-to-code-cac81dadf1ea)

------
jff
[https://d262ilb51hltx0.cloudfront.net/max/800/1*HsD7w8Y1rQL9...](https://d262ilb51hltx0.cloudfront.net/max/800/1*HsD7w8Y1rQL9qIMP1B426g.jpeg)

Looks like my job is secure, then

~~~
marssaxman
Wow. I've had what has felt to me like a varied and interesting career across
the nearly-25 years I've been writing code for money, but with one small
exception everything I've ever been paid for fits within this survey's "other"
category. That's... an odd feeling.

~~~
hodwik
Companies will eventually learn they'll need to accept Ruby/JS/Python in their
stack to get this new swathe of cheap labor, and you'll see these devs slowly
transition towards enterprise.

~~~
notsotrue
They already have, and I'm not cheaper because I'm currently focused on node.

------
wc_cs
> 58% have earned at least a 4-year college degree.

In the UK (possibly other countries), you can get a Bachelor's degree in 3
years.

~~~
ciaranm
In Scotland, most* Degrees are 4-year courses.

*technically, the 4th is an 'honours' year, and you can graduate without honours after 3 years. This isn't that common for people who aren't struggling.

------
DLR
"21% are women"

Why mention this statistic?

~~~
oracardo
To show that the data collected in this survey is biased towards answers by
men.

