

Career Day - A parent introduces programming at her son's school - dhotson
http://therealkatie.net/blog/2012/oct/24/career-day/

======
riklomas
There's currently a non-profit in the UK working in primary schools with kids
aged 9-11 called Code Club. They use MIT's Scratch to teach children how to
programming using drag and drop blocks.

Link: <http://www.codeclub.org.uk/>

I've been in one of the schools when they have the after school club and it's
amazing how much the kids get really quickly. They're making their own games
without needing any help from the assistants, the drag and drop element of
Scratch makes it a lot easier than getting syntax wrong and getting
frustrated. Some of the kids love it so much that they're disappointed when
it's half term and they can't do it that week. One kid now wants to be "a
programmer or stuntman" when he grows up.

They're in around 300 schools in the UK now and have roughly 15 children per
club, so that's an extra 4000+ children in the UK learning to code each week.

Disclaimer: I help out Code Club and develop their site

~~~
duck
It seems like you really have a great model going there, nice job! You think
there is any chance of open sourcing what you're doing with Code Club so it
could be used elsewhere?

~~~
riklomas
Thanks! I need to speak to the founders about that, it isn't my say about open
sourcing unfortunately!

------
andyjohnson0
This was an interesting read, but it'd be useful to know roughly what age the
children were. I'm not familiar with the US school system, so I don't know at
what age careers days are usually held.

She showed the children a Python program with a while loop, and says they "got
it". I've tried explaining iteration to a (bright) seven year-old by using
indented text and they found it hard to comprehend, but the equivalent in a
graphical lego programming environment was obvious to them.

~~~
shanelja
I taught my 9 year old sister how to program, at a very basic level, using
PHP.

She understood the simplest parts, variable assignment, simple loops, errors,
if statements (children seem to understand these naturally, since she is
always saying "Shane, if blahblah did blah blah, what would happen?" so it was
a breeze to introduce else statements.)

The trouble came when we started on arrays, she understood the concept of
variables well, but the idea that multiple variables can exist inside of a
single variable, and more inside of that, etc, really confused her, until I
managed to explain it using a rather simple tree diagram.

Then there is the fact that numeracy in primary school begins at 1, there is
no 0 as far as I know which is taught until later (unless of course, she
simply wasn't listening during that lesson) so to hardcode it in to her I got
her counting her spending money from 0 instead of base10.

Once we had this out the way, database manipulation came, and this was really
difficult as she didn't understand how the computer knew these things when it
was so far away and the idea that it could be transferred across the world in
seconds was fairly mind blowing (mind you, she thinks the world ends at the
south of England so it probably wasn't _that_ amazing) so I got her to take
part in a practical taking lemons to and from the garden shed and keeping a
tally of what was in each. Not only was it fun but it was a great learning
experience.

Fast forward 1 year and she is extremely intelligent for her age, can do
advanced algebra and is the only child in her class to be able to do maths in
her head near instantly.

I'm proud of her, but my point is this, children don't need brightly coloured
graphical languages, sure, they may help, but to nurture their minds all they
need is a little ingenuity and a whole lot of love. (not to mention patience,
you're gonna need buckets of patience.)

~~~
emillon
When I learned programming, getting arrays was one of my first "aha" moments.
Moving from x0, x1, x2, x3 to x[0], x[1], x[2] was definitely enlightening.

My guess is that for simple programs, you almost never have to index an array
by a dynamic expression, so you don't see a need for that.

~~~
bencoder
Same here, I remember when I was learning, before I knew what arrays were I
had a bunch of variables like that: $x1, $x2 and I was trying to find a way to
convert a number like $n into the variable name so I could do $x$n to
reference $x1, $x2. I knew what I was trying to do, just didn't know how to do
it correctly at the time because I didn't have any exposure to arrays before.

~~~
emillon
Exactly ! Syntax and meta-syntax are sometimes easy to mix.

------
Newky
The argument for not teaching children scratch. "You don't need to start kids
off on some fake programming language like Scratch."

I have no real affection for scratch, but I feel that he was making the
argument that children should learn to program in an environment that models
(at least to a point) the one in which a developer develops in, at least with
regard to language preference.

I feel at this point, the language choice (barring ease of use etc) is
pointless. Whether you use scratch, python or Haskell, if it piques the
interest of a child, then nothing will stand in the way if that student wants
to go on and learn every programming language available.

If you think of the first language you ever learned, and what you are now
programming in. For me, my first language (a type of kiddy basic) gave me what
I needed. A concept of execution flow. How to make things come up on the
screen, basic 2d programming and it made it very easy to make some GUI based
stuff.

My point is that don't hate any language (even if it is a _fake_ language like
Scratch) if it builds the initial building blocks in a child (or adults) head.

~~~
aufreak3
The "lesson to educators" was certainly a quick conclusion to draw from the
number guessing game example. A fair comparison would be a game with sound and
animation that kids have created using Scratch that you get kids to do using a
"real" language like python. Furthermore, I think BYOB (build your own
blocks)[1] raises the bar what can be done in a Scratch-like environment.

[1] <http://byob.berkeley.edu/>

~~~
YAFZ
BYOB is important indeed and we also have Panther (see
<http://pantherprogramming.weebly.com/> and
[http://wiki.scratch.mit.edu/wiki/Panther_%28Scratch_Modifica...](http://wiki.scratch.mit.edu/wiki/Panther_%28Scratch_Modification%29)):

"... a host of new features such as file and webpage manipulation and advanced
colour sensing, cloning and much more besides, Panther provides advanced usage
for avid Scratchers around the globe as well as new programmers looking for a
fluid, easy to understand starting language."

------
henrik_w
I have given talks in both my daughter's and son's classes (when they were in
grade 2) on what I do at work. Not on programming per se, but on how an SMS is
delivered to a mobile phone (so we also got into programs, databases etc).

What struck me the most was the sheer number of questions I got. 4 or 5 hands
in the air the whole time when I was answering questions. A lot of smart
questions and comments. Very intense and high energy. Contrast that to giving
a talk to adults - usually there a lot fewer questions.

Overall it was a great experience, and I recommend it if you have the
opportunity.

------
jtchang
It might be slightly odd bringing up the topic of women in programming but in
a few decades it might seem archaic that we were even worried about the
problem.

Kids today (both male and female) grow up with so much technology around them.
My bet is that this will drastically influence the number of women entering
technology focused career paths in the coming years.

~~~
RyanMcGreal
The proportion of women in software development has actually been _falling_
since the 1980s. It's not entirely clear why this is, but the rampant sexism
in software development that is so painfully evident in HN commentary is
surely an important contributing factor.

~~~
jiggy2011
I don't see much sexism on here and the stuff that I do see looks like obvious
trolling.

I do sometimes see people accused of being sexist for applying any skeptisism
to "all men in tech are sexist pigs" articles.

~~~
untog
Sadly, one of the reasons that you don't see much sexism on HN is that
numerous articles about sexism in the industry are flagged as soon as they
arrive on the home page, and get removed fron the site.

It's quite depressing.

~~~
jiggy2011
In my experience at least a couple of posts about sexism in tech make it to
the front page every month.

I guess they get flagged because there's really not much you can say about
these posts. They are usually something like "I was at a conference and
someone commented on my boobs".

Well ok, that guy is probably an asshole but most people on HN probably don't
go around doing that.

It would be an interesting story if there was some evidence of tech companies
deliberately deciding not to hire women or allowing unchecked sexual
harassment in the workplace.

~~~
scott_s
Those stories are about _culture_ , which is why it's still important even if
the majority of guys don't do it. And you are not being charitable in your
characterization of them.

~~~
krakensden
You're right. It would be totally better if we did a ritualistic denunciation
of sexism every thursday at 8pm.

~~~
scott_s
Please. I did not imply anything of the sort. If you're not going to
participate in honest discussion, and instead try to score argument-points,
please don't participate.

------
jawns
I did a high school career day earlier this year, talking about both my job as
a frontend developer and my book ("Experiments on Babies" --
<http://www.experimentsonbabies.com>). About a third of the kids in each
session were totally tuned out. Another third seemed interested, but I guess
didn't want to seem overly interested. And the final third were really
attentive and asked lots of good questions. I guess that's probably typical.

One of the things I tried to impress upon the kids is to look at where the
jobs are, and what they pay. I don't think that's emphasized nearly as much as
it ought to be. For instance, prior to making the switch to full-time
development last year, I was working as an editor at a newspaper. I loved it,
and I was good at it ... but the newspaper industry was (and still is) in the
tank, and there was very little job security. And, of course, there's an
oversupply of people with journalism degrees, so the wages aren't much to
write home about.

I told them I wasn't trying to talk them out of pursuing a highly competitive,
not-so-highly-paying career. But I think students should know, going in, what
they're getting themselves into.

~~~
untog
_One of the things I tried to impress upon the kids is to look at where the
jobs are, and what they pay._

Honestly, there's such a thing as "too young" for that. Your high school
career day makes more sense, but in the OPs story there are kids dreaming of
being pilots and firefighters. A little young to be thinking of career
development.

------
bhousel
In the past few years, I have spoken to local middle school kids (7th or 8th
grade) at their "career day". They are all totally fascinated with what I do,
because kids nowadays (yes I know I sound old) live their whole lives online
and surrounded by technology.

The school where I visit is really average, some rich kids some poor kids, all
kinds of backgrounds. The format of this career day is that each class period
somebody will come and talk to the class that is somewhat related to the
subject - so I usually end up speaking to a math or computer class. In a class
of 25, there are probably one or two kids who already know some limited
programming (or have made a website). Almost everybody that age is online (all
Facebook, a handful of Twitter) and plays console video games. Probably about
half have cell phones.

When they ask me questions, it's usually about how to steal their friends'
Facebook passwords, conceal their browsing history, or build their own video
game. I do spend some time talking about privacy, reminding them that their
behavior online can stay around forever and that they should be careful who
they are talking to online.

~~~
thebigshane
How does it work for a minor using Facebook? Are their accounts public by
default? Can they friend and be friend-requested by anybody? Are they linked
to their parent accounts somehow so that parents can monitor or approve
requests? When they become an adult, is all of the data/content/history going
to stay with the account? So when they are 20, friends can see what they wrote
when they were 12 if they dig into their history?

(I am not very familiar with Facebook but I do have two young kids who will
probably start wanting it soon)

~~~
Wilduck
Honestly, I would suggest you get a Facebook account and start playing around
with it. The answer to all your questions are "it depends". In part it depends
on how Facebook evolves over time, in part it depends on how much they want to
curate their content, in part it depends on what their friends do with the
content your children are incidentally a part of.

More than any of these, however, it will depend on how well they understand
the implications of their actions online. You're going to be in a much better
position to communicate about these implications if you understand exactly how
they're interacting with their online identity. This means having at least a
reasonable understanding of how interacting on Facebook works and, like it or
not, Facebook is complicated enough that the only way to understand it is
going to be using it.

------
Qworg
I did career day at my daughter's school, when she was in 4th grade (ages
9-11). It was interesting that the kids were far more interested in computers
than in robotics. They were even more interested in gaming, which I kind of
expected (be prepared to weigh in on which console you prefer, and expect to
have at least one of the kids tell you your choice sucks).

I'd recommend it for any technical parent - what you do is definitely cooler
than being a lawyer. =P

------
sosuke
"Every kid has a smart phone. I guess my son wasn't being dramatic when he
said he was the only one without one."

Ha! My inner child feels somewhat vindicated.

------
SiVal
re: "whole numbers" and "decimal numbers"

The terms don't vary much by district; they vary by age. Kids younger than
these use the term "number" to mean positive, decimal, integral numerals.
That's all they know.

Kids at this age are introduced to some new distinctions: fraction vs. whole,
negative vs. positive, and decimal fraction vs. common fraction. At that
point, they will use the term "whole number" to mean not some type of fraction
and "decimal" to mean a number that uses this nifty, new fractional notation
that has digits on the right side of the decimal point.

A few more years pass, and they no longer see "fractions and decimals" but
just "numbers." At that point, they switch over to referring to integers and
real numbers (with no emphasis on exactly how a fraction is represented), and
if they begin working with binary numbers, they'll use the same term,
"decimal", to make the distinction of base, not type of fraction notation.

The term "float" is not a mathematical term. Many older math professors don't
know it. It is a tech term for a form of storage and display of approximations
of real numbers.

These terms are not regionalisms; they represent the distinctions being made
by the students at their stage of development.

------
hising
Great read, I felt a bit excited after reading it. I look forward to do the
same thing at my boys school. One thing I am wondering about kids and
programming is when they are suitable to start taking in the concept of
programming, it is probably different from kid to kid. It is such a great tool
to teach a kid, to actually be able to build stuff on their own.

------
nadam
"Getting kids excited about programming today means that one day, you're more
likely to have competent juniors. If you plan on being in the workforce eleven
years from now, the fifth grader you talk to today is your new hire in the
future."

Wait another 2-3 years, and you will be their new hire.:)

Seriously, I wouldn't think of them as 'juniors' or 'new hires', that will be
only a very short temporary state. Think of them as your future colleagues,
competitors, hacker friends, fellow tax payers.

Great article though!

------
emehrkay
> The kids repeat questions. Over and over and over again. Not variations on a
> question: the same exact question. I would just repeat myself until the
> teacher intervened.

Just like trying to give the computer the same input over and over again. I
find this hilarious, kids are the best

------
ionforce
Great article. But expecting children to know what integers and especially
floats are is ridiculous. Integers, maybe, like definitely in a higher grade
level. But floats absolutely not. They are whole and decimal numbers!

------
nsxwolf
Don't put it off!

[http://www.youtube.com/watch?v=ZxVBHhXi8Ho&feature=fvwp&...](http://www.youtube.com/watch?v=ZxVBHhXi8Ho&feature=fvwp&NR=1)

------
tnuc
>I comforted myself that I was at least a step above the nutritionist.

How is this person a "step above" a nutritionist?

~~~
dsil
He was talking about the "cool factor", presumably as measured by the kids.

~~~
henrik_w
She

------
natmaster
What grade / how old are these students?

