

It's Time You Got Familiar with Code – Doesn't Matter Who You Are - rohamg
http://www.techvibes.com/blog/doesnt-matter-who-you-are-or-what-you-do-its-time-you-got-familiar-with-code-2014-02-04

======
collyw
No, why not familiarize yourself with operating system concepts. It will be a
lot more use. Maybe after that learn to code.

I am a developer. If I am installing a piece of third party software and it
doesn't work, the last thing I am going to do is to dig into the code. It more
likely that an environmental variable needs set, or a library is missing. No
coding knowledge required to fix these things, but an understanding of how
everything fits together is.

(Getting bored of these kind of statements from Obama and the likes).

~~~
rohamg
You're a developer, so for you learning OS concepts is more useful. If you
look at comments from non-developers who have learned the very basics of
coding, you'll see their minds have been opened up to dimensions they never
before considered possible. Looking at an OS after you have a rudimentary
understanding of the building blocks is totally different than trying to learn
each black box independently.

I used to think like you, I don't anymore. We (Axiom Zen) co-organized the
HTML500, Canada's largest free learn-to-code event. In one day, 500 people
came together and learned the very basics. The response was overwhelming,
check it out for yourself:
[https://twitter.com/search?q=%23html500](https://twitter.com/search?q=%23html500)

These folks are looking with totally fresh sets of eyes at what you and I take
for granted. Learning the basics gives them the same appreciation you and i
have for the abstractions that can be built on top.

~~~
collyw
I had done a number of basic programming classes well before I went to
university to study it. The stuff they teach you is not especially useful. For
loops, and if staments. Its easy. Learning to structure a larger scale project
is a lot more difficult, and that requires at least some experience that you
aren't going to learn in a beginers coding class.

~~~
Jtsummers
I took a number of basic math classes well before I went to university to
study it. The stuff they teach you is not especially useful. Addition,
multiplication tables, and trig identities. It's easy. Learning to model large
systems is a lot more difficult, and that requires at least some experience
that you aren't going to learn in a beginner's math class.

Should I do the physics version as well?

~~~
collyw
you don't find addition useful?

~~~
Jtsummers
Addition is as useful as the logic of an if statement.

~~~
collyw
The point I intended to make is that after various beginner level programming
classes, I still couldn't create anything especially useful to anyone else. I
could draw something on screen, but I couldn't ship it as a standalone.

I am fairly certain that you will use basic addition / multiplication in
everyday life without having to be a maths expert, and have it be useful, even
essential to you.

Anyway, nice strawman argument you are creating. On you go with the physics
one.... (funnily enough I don't find myself using my school pyhsics in
everyday life the way I use maths)

~~~
Jtsummers
Then the physics version:

I took a couple of basic physics classes well before I went to university. The
stuff they teach you is not especially useful. Elastic and inelastic
collisions, deceleration from friction, F=ma. It's easy. Learning to model
large systems is a lot more difficult, and that requires at least some
experience that you aren't going to learn in a beginner's physics class.

~~~
collyw
So what do you use your high school physics for in day to day life?

------
ThomPete
I think many developers are missing out on an opportunity to further their
field.

With understanding comes respect. With respect comes the opportunity to have
an informed discussion about ex. a project and why it's going wrong. A
discussion where you as a developer do not feel like you are speaking to a
black hole.

I never understood why so many developers are against this. Overall it's to
your benefit.

~~~
collyw
I have had to deal with self taught bioinformaticians code. Basically it
needed a rewrite. It was painful. Functions within functions, not for some
elegant functional programming style, but because they didn't know classes or
modules (she almost seemed proud when she claimed she didn't know object
oriented programming). "Indexes" and "indexes" used as variable names in these
same functions. Thats my reason for wanting people to learn it properly.

Crappy annalogy. You are ill you go to your doctor, or someone that dropped
out of med school after a few weeks - they know the basics?

~~~
ThomPete
You set up false choice.

The real question you should ask yourself is would you rather se a person who
had no medical training what so ever or someone who dropped out but get the
basics.

Thats the relevant analogy.

~~~
collyw
In that case the code was bad enough, it would have probably been quicker
writing from scratch, if I had a decent spec to go with.

------
capkutay
I actually disagree. Maybe this sounds like nitpicking, but I think it would
be much more beneficial for non-technical people to be familiar with high-
level, commercially used concepts in computing such as servers, databases, how
the web works, and how data is managed in general. At least to me, learning
'code' has the connotation of learning the bare minimum to make a web app.
Maybe I'm wrong, but that's what most of these 'learn to code' initiatives
seem to push and it gives people the wrong idea on how much they've really
learned.

~~~
rohamg
all these comments are all like saying "i think it would be better if
electricity conducted faster through plastic than copper" \- regardless of
your reasoning of where is the "better" place to start, the reality is if you
spend time talking to non-technical folks they don't give a hoot about servers
and databases, they get excited about the possibility of just _building
something_. after they've built something simple, and overcome the hump of
seeing all of this as magic, they are ready to dig into everything else.

spend time talking to your customers before prescribing solutions to their
ills - it applies to startups as well as social good projects.

~~~
capkutay
Yeah I don't think we're talking about the same 'customers'. I would not
consider people who want to build something as a subset of the people we're
talking about when we say 'everyone should learn code'. People who are
actually motivated have bountiful, free resources to learn how to program
online. People who want general knowledge of the technology landscape, at
least enough to contribute in a career setting, might not benefit from
skimming through a zed shaw book or doing codecademy for a week.

------
chrismcb
Coding is not the literacy of the future, nor will knowing how to code let you
use many software products easier to use. If you have to know how to code to
use software products, then we as programmers have failed. One does not need
to be a mechanic to drive, to be a doctor to be healthy, or an director to
enjoy a movie. Can it help you be more analytical, sure, and that might be a
reason to learn to code.

------
mathattack
My 2 cents... This is not easy. Understanding coding has a much higher barrier
to entry than simple proficiency in other under-utilized fields like
Statistics and Economics. It is very hard to say this is something EVERYONE
needs to know.

~~~
constantx
I have to disagree. Both statistics and economics requires understanding of
Math, which lives on the same side of the brain that's needed for
understanding logic, thus coding falls into the same bucket. Though I suspect
you're refering to "understand coding" as "understand complex algorithm". In
which case, I agree because there are many type of coder, and some of which
doesnt neccessarily needs to "understand and/or write complex algorithm".

~~~
mathattack
Here's the context... Someone with moderate statistics can take a
Microeconomics class and with a few hours a week of studying can get
conversational, and apply it. With only introductory calculus, they can take a
second and third class, and know enough to be professionally employed in the
field. 90% of the folks who start the first class can take the 2nd and 3rd.

3 classes isn't enough for competence in coding, and much less than 90% get
out of the first class.

~~~
Jtsummers
That's because we have 12 years (in the US) of general math studies to prepare
us for stats and calculus. Integrate programming into the sciences and math
courses (physics and geometry have obvious points for integration, I'm less
certain about the others) and a first course in programming will actually be
able to get students much further than they often do today.

------
vezzy-fnord
Basically an article that says a lot without saying anything at all. Learn to
code if you want to or if you need to, but stop pretending that knowing how to
write some markup, trying out a REPL or writing some quick scripts will give
you some mystical insight as to how software works. Then of course "coding" by
itself doesn't mean anything without elaborating on the particular paradigm
and language properties.

 _At Axiom Zen we use tools such as Google Analytics for tracking interactions
with our material, GitHub for internal collaboration and project management,
and Intercom to connect with our users as well as monitor their use of our
products. Without a foundation in coding, it would have taken me much longer
to adopt these tools._

Really? At best, when it comes to Git, you're just learning a file system
model and basic use of a shell. Assuming you're not using a GUI or GitHub's
browser interface, which is likely.

I like people learning to code by their own volition. I don't like vapid
fluff.

~~~
ThomPete
I think you are death wrong about this.

Learning code even pseudo code will teach you to think about how you solve
something, it will allow you to think with the developer and most importantly
you will be able to have informed opinions about the development phase.

The world would be a much better place if more people knew about coding, what
it is and what it isn't.

Thats at least my experience from working with developers and being able to do
some coding without ever calling myself a developer.

~~~
JoeAltmaier
My sister is a nurse, and makes very similar arguments about everybody
learning some biology. I imagine a physicist thinks everybody should learn
about quantum mechanics.

Philosophers think we need philosopher-kings; warriors want a warrior-king;
and on and on.

Lets let one another be; learn coding if you like, and let my sister continue
nursing as she is so very capable of doing.

~~~
rohamg
Hah! Everyone would indeed benefit from learning some biology, quantum
mechanics, philosophy, and fighting! This is the principle upon which the US
higher education system is based - and as someone who came to the US for
higher education, I have to say it's the best setup in the world (as compared
to the silo'd, short-sighted, and quickly obsolete teachings you pick up as an
undergrad anywhere else). Were you kidding?

~~~
JoeAltmaier
No, not really kidding. I resent having to study some superficial biology to
satisfy somebody's notion of a good rounded education. I grew up in a
University town with a large teaching hospital. We had biology inflicted upon
us by well-meaning folk who wrote curriculum and were all related to the
University in some capacity.

I'm not anti-learning. I object to somebody else dictating the set of
superficial knowledge I need to learn.

~~~
ThomPete
It's not a demand it's advice. Advice that I believe is very valuable and have
been for me as I am working as a designer i a technology driven industry.

Each to their own but you seem to be against this for the wrong reasons.

~~~
JoeAltmaier
SOrry, I meant the well-meaning curriculum writers in my hometown. No offense!

