On 6/14/2011 9:50 PM, Dethe Elza wrote:
On 2011-06-14, at 9:36 PM, Julian Leviston wrote:
The thing that irritates me about this attitude of "don't consider kids as equal" is that
we DO consider them as equal in other frames... we expect so much of them in terms of linguistic
and cognitive development... and actually the abstractions (zero-th order abstraction) capable of
and exhibited by a 5 year old are used when in the activity called "programming" all the
time... so much so we as adult programmers rarely think about them.
Not equal. Children are very different cognitively from adults and it is
important to resist the temptation to treat them as little adults. On the other
hand, we shouldn't condescend to them, they are like learning sponges and can
absorb ideas far beyond what we generally give them credit for.
not much experience interacting with kids (don't have kids, never
married, don't have a significant other either, as things just never
seem to go anywhere...).
but, yeah... being young, time seems to go by very slowly, and just
sitting around fiddling with something, one accomplishes a lot of stuff
in a relatively short period of time.
as one gets older though, time goes by ever faster, and one can observe
that less and less happens in a given period of time. then one sees many
older people, and what one sees doesn't look all that promising.
sadly, as is seemingly the case that a lot of potentially ones'
potentially most productive years are squandered away doing things like
schoolwork and similar, and by the time one generally gets done with all
this, ones' mind has already become somewhat dulled due to age.
it is like, me noting that several years ago, I was dealing with a
personal-project codebase expansion of around +120 kloc/yr or so (and a
few cases of breaking 1 kloc/day, usually in bursts), but more recently,
my codebase has actually been shrinking (seemingly defying common
sense...). granted, it is a question of how big of a codebase can be
reasonably developed and maintained by a single developer though.
also, maybe the underlying forces behind codebase expansion and
shrinking, where positive effort and adding functionality doesn't
necessarily always make ones' code get bigger, ... it leaves something
to ponder.
granted, at the time I was pulling off high output rates:
I wrote an x86 assembler/linker, pulling off around 10 kloc in 3 days or
something;
when writing a C compiler, which turned out very large, and a bug-ridden
mess;
writing an x86 interpreter, which itself was like 40 kloc in around a 2
weeks or similar;
...
granted, these sorts of efforts are relatively rare.
scary would be if someone else could (actually) pull off consistent
output at this rate (and emit code consistently at approx 1Mloc/yr...).
and, meanwhile, recent output has been net negative...
hmm...
One problem is immersion. They learn language amazingly fast (in large part) because they
are immersed in it constantly. Seymour Papert's book, Mindstorms is one of the best reads
I've ever had about software, and he discusses creating "worlds" for math,
physics, and other subjects on the computer so that children can be as immersed in those
worlds as they are naturally in the world of language. That was one of the guiding ideas
behind the creation of Logo.
yes, but it is also notable that they learn language, being exposed to
it in its full complexity.
it is like, kids don't learn from a watered-down subset of the language,
they just learn the language from hearing others use it.
hence, a large portion of immersion may be more due to availability and
them having a personal interest or reason.
Some of the structural patterns that a small child already has at least some
mastership of are connection, fitting, representation, indirection, context,
mood, physical relationship. These are all used in simple programming. Perhaps
they don't have the meta-words, but that's okay - that can come later at about
12 when they begin their next level of abstract cognitive development (ie
proper abstract thought).
My flatmate's 7 year old daughter is in the process of mastering addition,
subtraction, multiplication and division. These things are quite abstract. My
flatmate's THREE year old (!!) understands in a non-verbal way the idea of a
pointer and mouse connection. Do you realise how advanced that idea is?
Consider that he's only really begun to talk in sentences properly in the last
6 to 8 weeks. It's very simple in terms of our usage of computers, but it's an
incredibly complex structural pattern, really... it's representation and
indirection... you move this thing, and it represents this other thing, and we
can use it to manipulate yet more things... of course the child doesn't realise
that the things on the screen aren't real that they're simply further
representations... but you get the gist... the capacity is there... and the
ENERGY that is there is amazing...
There are some pretty subversive tools out there. Reader Rabbit's math software was teaching my
kids algabraic abstraction before they started school. It just used boxes where you fill in a value
instead of "variables" like "x". Very concrete and they got it right away.
yep, and fair enough...
a mystery though is how generally "off putting" the school experience
can be to people...
I generally remember these years of my life to be just plain dismal (I
really don't know how people can find much enjoyment in all this...).
in more recent years, it doesn't seem quite as bad, but maybe just that
I have gotten a bit better at dealing with it (actually there is a
"bright side" of things as well, but I have little real idea how to
express what I am thinking here).
but, alas, this is an unrelated and likely not particularly relevant
issue...
_______________________________________________
fonc mailing list
[email protected]
http://vpri.org/mailman/listinfo/fonc