

Stop Imposing Programming Languages On Kids - nvictor
http://the-reviews.appspot.com/article/stop-imposing-programming-languages

======
oogali
The key point of the article is the kid has to want to do it, and do it
without pressure. (example: Stephen King's sons taking saxophone lessons
because he didn't want to disappoint the parents)

My father gave me a bunch of Turbo C diskettes when I was 8 or 9, and said
nothing other than "give it a shot" and smiled. There was no pressure there.

And after I "broke" his computer a few times (one time, I installed some
fighter pilot game which broke autoexec.bat, primarily the PATH and PROMPT
variables, so I couldn't find anything), he got me a computer of my own, and
left me to my own devices. Throughout the years, he would give me random IDE
installers (Turbo Pascal, Visual Basic, etc) with no expectations.

He still smiles.

~~~
cema

      He still smiles.
    

And he should. He did a good job there.

------
aristus
I appreciate the sentiment, having grown up as a younger sibling surrounded by
machines in various states of undress. I'll always remember the time I broke a
corner off a mainboard, and watching my cousin repair it.

I firmly believe in giving children room to explore, and _never_ telling them
that something is "too hard". But it's a long leap from "this is how I did it"
to "we're doing it wrong".

I also question the idea that only some kids can/should learn how to code. A
computer is not a saxophone or a snail. Today, computer illiteracy is a
disadvantage; tomorrow it'll be a handicap.

And just like kid-sized pots and pans and screwdrivers, some languages are
easier for kids to grasp. Going from DOS to QBASIC to C worked for the author;
that was the stuff that happened to be installed. Nothing wrong with laying
other "toys" around too.

------
Luyt
"Junior! Time for COBOL class! Get in the car"

 _\- but I don't want to go... I'm busy with Ruby right now_

"No excuse, we've discussed this before. And when you're done with your Java
homework you can go back playing with your trains and Rails."

 _\- awwww.... sob_

~~~
makmanalp
<http://www.youtube.com/watch?v=13A0_QkqtaQ>

~~~
Stormbringer
For anybody wondering, the giant pink cowboy hat is a reference to the Java
Posse podcast. A long running Java podcast - though they mostly talk about
Scala these days.

------
eccp
In the spirit of letting kids curiosity flow, they can have a great time just
by tweaking already existing games. In Scratch, they can open any of the
existing examples, play around, change some numbers or images, play again and
see the effects of their changes.

I have a 10 y/o girl and she's learning Python (we're following the Hello
World book - www.helloworldbook.com) and it's fun to follow, and she enjoys
seeing the effects of the changes in the programs to see if they still behave
as she expects them to.

I think it's much more important to observe that pattern rather than just
discarding a particular language just because it may fix a specific mindset.

------
keen
Forget about imposing certain languages on kids; I question the practice of
trying to _get_ kids into programming.

Why not let kids get into programming through curiosity or simply a desire to
make things?

~~~
minus1
I think it's important to expose kids to programming, and if they show an
interest, to explore it further.

It's possible I never would have become a coder if a teacher hadn't given me a
brief intro to Basic when I was 11 years old. I took it from there, and was
self-taught until college.

With my own son, I introduced him to Scratch, helped him through a few
lessons, and then watched as it became his favorite thing to do. I really
can't say enough about Scratch as an introduction to programming. It gives
kids a simple environment where they see quick results while learning the
basics. Just as important, there is a social aspect in that they can easily
share their programs with their friends. There does, however, seem to be a
need to bridge the gap between Scratch and traditional languages.

------
elliottcarlson
Ironically - I spent the day letting my 8 year old niece attempt to write a
game in Game Maker. While it's not programming, I knew she wanted to make her
own game and simply told her to do the tutorial and go from there. 6 hours
later she had the basic tutorial finished and was hard at work on her own
game. She figured out how actions worked, started reading about the scripting
and designed her own characters. She loves it and I am glad to offer any
advice along the way, however if she stops playing with it, that will be fine
too.

~~~
Figs
What do you mean that Game Maker is not programming? It may not be as
respectable as something like Java or Python or C, but it's most certainly a
programming environment. You can learn about file I/O, event driven systems,
data structures (particularly linked lists and trees, using instance ids in
place of pointers/references) after you learn the screwy, almost typeless
pseudo-C/Pascal mishmash scripting language that's built in. You can also
learn a lot about the complexity of programming when you have to debug your
code to figure out why things aren't doing what you wanted them to (whether
that's because of a typo, unintended effects of the interaction of multiple
complex behaviors you wrote, or simply a misunderstanding of language). Not to
mention the issues of project management and good design (or lack thereof...)!
While it may seem crude, please don't belittle it by saying that it's not
"programming".

~~~
elliottcarlson
I should have watched how I phrased things; I think it's a great stepping
stone in to full programming; what she currently is doing is almost 100% drag
and drop and because of that, what my niece specifically is doing, isn't
necessarily programming, but giving her a great resource to understand
programming, and indeed making programs. I wouldn't consider her specific
actions programming in a general sense, but am ecstatic that Game Maker exists
to get her started gradually from the current steps and also in to more
advanced steps from one single system.

So Game Maker is programming and I should have been careful in how I phrased
it because I did not want to make Game Maker seem anything less than it is (I
am buying her the new Game Makers Companion and a license if she continues
with it because I would love to encourage programming in her)

------
robryan
It's interesting that I became so interested in programming when there wasn't
anyone I knew or in my family that was into that area. My parent's still
wouldn't have the slightest clue about programming and the only reason we
really got computers and upgraded them early is because my grandpa was into
them early (the usage side of things, not programming).

I guess what really sparked my interest was being able to make games, the
programs like rpg maker that come with point and click programming languages,
all come from that. So I think rather than focusing on the programming
language side of it I would focus on the results with kids, if they can script
a NPC walking around the map or script interactions/ map changes and stuff,
even though it's only a few lines of quasi programming I think that inspires
more than simple text based program learning with a text file that can feel
daunting, to may possibilities, not enough hand holding.

------
nailer
I knew DOS. But what forst got me passionate about making stuff on computers
was Doom.

I could move move walls. Make a pit. Add monsters. Try and make the room
outside rather than inside...(fast forward a few months)...combine the
unenclosed sectors hack with the no-lower-texture-bleed bug and make passable
deep water.

It was fun. And simple.

------
jrockway
Yeah, this is a disease. When I was in high school, I was essentially told
that real programmers only used C++ and Java (since Real Programmers exist
primarily to take the AP CS exam, right?) Looking back, I wasted a lot of time
in programming contests that allowed any language allocating memory and
dealing with shitty numeric types. If I had just used Haskell instead, I would
have never had any problems. With C++, I often lost points not because of
stupid bugs like calling two variables "i" or something.

Fortunately I figured this out right about when people started giving me money
to write computer programs. But I wish someone had told me earlier.

------
koningrobot
From the article: "Parents who don't impose anything on their children, you
are blessed." I agree with this, but realize that there is no such thing as a
parent who does not impose anything on their children. Creating a child is an
imposition.

------
DerekH
I like the article. I learned to tinker with computers in much the same way.
Not that I'm proud of it, but I remember finding programs for AOL that would
fade your text into different colors. I was so interested in how these types
of things were done that I tried Visual Basic and bought Borland C++ when I
was about eleven or twelve years old.

------
jdp23
From the article: "I am no education expert and have no children ..."

------
georgieporgie
Who imposes programming on uninterested children?

As for the interested ones, you 'impose' certain programming languages on kids
because 1) they want to learn to program and 2) you need a standardized way to
teach. If you want to develop the manner of thinking required to assemble and
organize algorithms, making a turtle move around the screen is a fine way to
do it.

~~~
spc476
No one imposed my first language on me, it was the environment that did (you
turn on the computer, there was BASIC; why yes, I did receive an 8-bit
computer in the 80s). Worse, the only sources I had were books and magazines,
since no one I knew could program (okay, I had two friends with computers, but
we all had different ones, which made it difficult to swap programs).

