
Learn to code like it's 1996 - coffeemug
http://www.defmacro.org/2013/12/09/learn-to-code.html
======
yan
Read the whole post with a smile on my face.

Immigrated to a few blocks away from where you mentioned, also from Ukraine,
in 1995. Both parents attempted taking similar courses. Mom stuck it out while
cleaning houses during the daytime, Dad realized it wasn't for him but also
struggled between jobs.

My mom turned sixty this year and last I spoke to her today at 10:30pm, was
busy at work, trying to finish deploying a new release at the office. She's
been a COBOL engineer (yeah..) with a hectic schedule for the last fifteen
years.

Not sure where I'm going with this, but from bringing today's Google Doodle to
her attention, to reading and clearly heavily related to this, to seeing
Derek's post on life on the front page, I think I should call my parents and
thank them again for moving our family into the unknown and trying to make it
through herculean efforts.

~~~
jmspring
"trying to finish deploying a new release at the office. She's been a COBOL
engineer (yeah..) with a hectic schedule for the last fifteen years"

COBOL engineers are a narrowing breed. Tried venturing into learning it a few
times.

I sometimes wonder if those dealing with legacy systems have been subjected to
new fangled methodologies like agile and scrum. The statement quoted just
brought that thought to mind.

~~~
fuzzix
> "I sometimes wonder if those dealing with legacy systems have been subjected
> to new fangled methodologies like agile and scrum"

I doubt it. I worked as a Mainframe programmer (in this century). Revision
control consisted of printing your full current version of the code and
inserting it into the project's binder.

------
MrZongle2
This part jumped out at me: _Dozens of trade schools offered computer
programming courses for the new immigrants in anything from AS /400 to Fortran
to Visual Basic, all paid for by government agencies._

As a native-born American citizen who -- like many -- wasn't born into a rich
family and worked my butt off to pay for school, I couldn't help but read that
and go, "gee, that would have been nice."

~~~
knowitall
Then again, why not pick up a book for 20$ and get cracking?

~~~
72deluxe
That's what I did! Books, books and more books. Fantastic.

------
increment_i
The weirdest thing about this 'learn to code' movement is the strange naivety
that 'coding' is something that can just be picked up in a year or so, and
then it's a skill like dicing onions or changing an oil filter. I mean, I
guess it can be in a sense, but my own experience has been quite different.

First I wanted to build iOS apps, so I learned enough C to take on
Objective-C. Time to learn the Cocoa frameworks. Published an app. I should
learn web development. Grokked HTML, CSS, some JS. Wait things can be done
easier with jQuery? Learned some 'o' that. None of this means anything without
some passable design skills. Time to learn photoshop, illustrator, or some
open source alternative. Oh crap, I need to deploy this! And what's this 'Git'
everyone's going on about? Wait a minute, I don't understand anything that's
going on with anything! Time to dig deep into the underbelly of Unix. I should
get with the times! Need to learn some front end frameworks. Angular looks
amazing, here I go! Hmmm, are mobile apps the way of the future? I'm not sure.
Maybe I should leverage this using the web skills I already know! Time to get
up to speed with PhoneGap, Cordova, or AppGyver...

And this is just practical stuff. Nevermind the math, algorithmic, and
hardware domains that I'm sure break into a million parts like the 'coding'
endeavour I mentioned above.

~~~
10098
I think beginners should stop following trends and focus on building a solid
foundation. I know that can sound ridiculous if you need to get a job, but
you'll be doing yourself a favor. I mean, it's ok to learn enough to become a
hireable code monkey (even though it's more difficult than it sounds) and earn
something to support yourself, but i think it's way more important to learn
core skills instead of frameworks that will inevitably become obsolete in a
few years' time.

~~~
Joeri
I completely agree. Everyone who learns programming should start with
something practical, ruby on rails, angular, whatever, but then go down the
stack instead of sideways. Don't add more and more frameworks, learn what's
beneath the framework. Learn what every layer in the system does, right down
to the level of individual transistors on the cpu. There should be no magic
anymore. If every part of the system is understandable (in theory) then any
problem with it is solveable. Also, most frameworks become variations on a
theme, and almost nothing is truly novel.

That last part is what made me almost quit programming, upon the realization
that the industry was not on a long march of progression, but on a cycle of
reinvention, where each generation rediscovers the knowledge of previous
generations in different flavors, especially in software. If more people
learned the fundamentals they could discern between that which is new and that
which is novel and spend their time accordingly. The industry as a whole would
be better off.

------
ErikAugust
I began programming in 1996. The biggest difference, to me, is:

#1 Google, which helps you quickly find answers from #2

#2 Online tutorials, communities such as Stack Overflow and blogs

As a self-learner, it's awesome now a days. It costs next to nothing to learn,
to get involved with open source or a community, and most importantly, to
create your own projects!

In 1996, I had one friend I could call to ask a question. Maybe I could save
up some money to buy some crap book on Visual Basic or C. Computers were still
expensive back then, and a server - geez, forget about it.

~~~
redthrowaway
Seriously, I first started programming in high school in 1999, and the
resources were as follows:

1) Textbook

2) Teacher

3) Classmates

I dicked around doing Philosophy and construction for half a decade outside of
high school, and one of the things that amazed me when I went back to school
was how _easy_ programming had become. Have a compile error? Google it.
Getting this weird "Segmentation Fault" thing? Google it, and see what causes
it.

I went from combing through the pages of the textbook to never cracking a book
past second year, and in only a decade or so. I still sometimes marvel at how
copying and pasting an obscure error into Google nets me the answer more often
than not within 5 minutes.

~~~
awor
Oh man, I totally know how you feel, I tried it in high school and it was far
too structured and distracting for me to enjoy it.

Now that I learn it on my own terms, it's a much more enjoyable hobby, and it
makes more sense.

------
brg
In 1996, Barnes and Nobel was flooded with huge volumes like "Learn C in 21
Days" and "Effective Bash Programming." These books had 6-10 authors and were
basically printed on newspaper, and were absolutely horrible. These sat next
to Computer Shopper and high quality books like K&R and the red book.

~~~
wyclif
I know what you mean, Borders did the same thing. But whenever someone
mentions "The Red Book", I always wonder whether they're talking about the
OpenGL Programming Guide or the PostScript Language Reference.

~~~
bitwize
DOD Security Standards. Also known as the Ugly Red Book That Won't Fit On A
Shelf.

~~~
ajross
Or the Apple ][ Reference Manual

~~~
DrStalker
My first though is the Red Book specification for CDROMS.

------
projectileboy
There's rarely a pot of gold at the end of a rainbow. But if the first wave of
"learn to code" gave us you and RethinkDB, then I'm all for the next wave.

~~~
pjscott
There are pots of gold, but the people who get the gold usually came for the
rainbow.

------
jordan_litko
To me the biggest difference between now and then is that the quality of
instruction is probably much better now. Not only is the quality better but
the number of options is also much higher. Between resources like
teamtreehouse, code school, codecademy, youtube and the thousands of pages you
can find with google -- people who want to learn to code today have a marked
advantage over those who wanted to learn in 1996.

In the end it always comes down to a persons will to succeed. Learning
programming is basically a battle to simply keep putting your face in front of
the code. The biggest value that resources like teamtreehouse and codecademy
offer is that they make it more engaging (read: less painful) and so people
are more likely to press on and get to a point where they say "Hey, maybe I
can actually be a programmer".

~~~
chavesn
> people who want to learn to code today have a marked advantage over those
> who wanted to learn in 1996.

True, but they aren't competing against job candidates from 1996.

Not that the whole movement is about finding a job. In fact, I think it will
be more healthy for industry and students alike if "learn to code" is not a
promise for a direct payoff at all, but a push to develop a useful core skill
like math, communication, and understanding of science and humanities.

------
josephpmay
I think the difference is that the current campaign isn't saying everybody
should learn to code to be a programmer, instead it's saying, everybody should
learn the basics of coding because it will be beneficial to whatever their job
is.

~~~
pjscott
Many biologists can confirm: even rudimentary programming skills can be very
useful.

------
dirktheman
A lot of these immigrants have had excellent eduction and often pretty high
level jobs. The old Soviet Union was pretty big on eduction, especially
science and math. So theoretically it's not that big of a step to take, from
being a mathematician to a programmer.

Reality says otherwise, though. I have two friends who came to The Netherlands
during the Balkan war in the early 90's. He used to be a math professor, she
used to be a surgeon. Nowadays, he's cutting marble for tombstones, she works
at the HR department. Quite the step back, although they have no regrets
coming here.

------
AlwaysBCoding
This is a cool post. It's a really interesting thought that this whole "learn
to code" movement existed in some form seventeen years ago and somehow didn't
take off when it seems like such an inevability right now. But I think it's
one of those things we'll look back on like the 2010 iPad / 1993 Apple Newton
and say "yeah coding trade schools were a cool idea back then, but the world
just wasn't ready for it yet", and now that they've become 'cool' so to speak
we're going to see that permanent explosion.

I mean, I'm new to this game but did you even call it "coding" in 1996? To me
just the word "coding" represents a kind of coolness factor that I doubt
existed around programming in the mid 1990's. It used to be a nerdy thing,
something you had to be 'smart' and work at a big company to do. Now tech is
cool, the game has completely changed. I mean were startups even a thing in
1996? Were hoodies, mac laptops, red bulls and coding on rooftops popular?
Because of things like Github, Ruby on Rails, awesome screencasts etc. I think
it's just gotten more fun and productive to be a programmer and the lifestyle
has more of a mainstream draw than it used to.

The other big plot line in 2013 that wasn't there in 1996 is the impending
genocide of universities in America. Higher tuition rates, lower employment
rates, it seems like the learn to code movement is the Newtonian "equal and
opposite reaction" to the imminent death spiral of 4-year degree programs in
America. I think we're going to see a ton of innovation from the "learn to
code" schools in the next few years, innovations in education that the
Universities won't be able to match, and the "learn to code" schools are going
to kick the living crap out of colleges when it comes to where people choose
to spend the money they have allocated for education.

~~~
smacktoward
_> I mean, I'm new to this game but did you even call it "coding" in 1996?_

Yes, we did. It wasn't _that_ long ago! Sheesh! Thanks for making me feel old
:-D

 _> were startups even a thing in 1996?_

Ask pmarca!
([https://news.ycombinator.com/threads?id=pmarca](https://news.ycombinator.com/threads?id=pmarca))

In seriousness, yes, they were, but it took a lot more money to get one off
the ground back then than it does today; lots of proprietary software licenses
to be bought, physical servers to be rack-mounted, and so forth. (You used to
have to pay _thousands of dollars per seat_ just to get access to some
companies' API documentation! Yes! Seriously! Now, of course, you can just
Google it.)

It was sufficiently expensive that a college student (which I was back then)
couldn't really think of starting one on a whim. You had to get access to some
serious capital to make a real go of it.

So many of those costs have collapsed these days that it's much, much easier
to do a startup than it was then. But that's a double-edged sword -- while it
opens up opportunity to lots more people, it also means there's lots more
half-baked "startups" out there than there used to be.

------
programminggeek
Here is one difference, the number of computers has far outpaced the speed at
which the industry is gaining programmers. Instead of one platform with 100+
million devices, we have more like 3.

------
Uchikoma
Sorry, not 1996, learned VC20 BASIC in 1981. Learned it in a department store
from some other kids, trading tricks and POKEs.

------
hypertexthero
Great post, but please consider making the text on your site [ragged-right
instead of justified]([http://practicaltypography.com/justified-
text.html](http://practicaltypography.com/justified-text.html)).

------
enupten
Nice. I do agree with this article; there really is no reason to emphasize
coding any more than say math or music.

Making things overtly fashionable makes everyone worse off.

------
knowitall
I'll probably always be a bit wary of people who learn coding from a school or
who need a school to learn coding. Since most of the time you have to learn
new things while coding (new libraries, new languages, new challenges), I
don't know if these people will be able to keep learning by themselves without
courses provided for them.

Not sure how good a programmer you can become without being inherently excited
about the whole thing.

In a way I believe everything can be learned the same way. I suck at design,
but in theory I could see how I could learn it. The problem is I would have to
be constantly absorbing new things. While talking a walk I would have to
notice the typography on shop signs, when browsing the web I would make mental
notes of designs I like, and so on. Totally doable, yet I am not doing it. On
the other hand I read about programming all the time, even about topics I
don't really work with atm like scalability, 3d programming, machine learning
and so on.

Perhaps a course can be a good start, but I suppose it only gets you 1% of the
way...

------
netpenthe
Ada

~~~
GuerraEarth
Countess of Lovelace and daughter of poet Lord Byron. Analytical Engine.

~~~
code_duck
Is this free association computer science Jeopardy? I'll go next please.

~~~
GuerraEarth
Hi code_duck. It's actually code, not free association. Let me uncode: Ada
Lovelace wrote what most consider to be the first programming code. She wrote
notes for the Analytical Engine--Babbage's early computer. She was a visionary
regarding design and specifically how society could collaborate with
technology. In the recent discussions about all people learning to code, I
responded to the simple comment "Ada," by pointing a bit more sharply to the
inflection behind that comment. Ada the language, yes, but the concept of
society at large and coding goes back as far as Lovelace herself. There is a
current of comment going now too that suggests the need for a broad underlying
knowledge base on the part of hackers/programmers. Lovelace had that
educational background. Humanities, science, culture. The whole soup. I am
sorry that you were offended by my comment. I hope this elucidation helps.
--GuerraEarth

~~~
code_duck
Thanks, I do think that posts formed of complete sentences go further to
advance the conversation than single words and sentence fragments.

~~~
GuerraEarth
Hey. It was the "Ada" one-word comment that made me do it : ) Anyway, thank
you for being a good sport, code_duck. HN readers are an incredibly good group
of people. It's a luxury, having HN. As good as a Christmas stocking each and
every day.

------
elwell
Was expecting to see <table>

