Programming language for children
gmane at auxbuss.com
Wed Jun 17 13:04:20 UTC 2009
>> That's not to say it's the only way; that C is much more intimidating
>> that Java/PHP is a very valid point. This is my personal opinion as to
>> which route is easier in the long run. Just because it differs from
>> yours doesn't make it "appalling".
> Having read your argument about learning C first makes me want to say
> that people should just learn Assembly first. This is not sarcasm. My
> second language was 6502 assembly and that understanding greatly helped
> me to understand C.
For educational purposes, I agree. Particularly 6500 assembly, because it
is one of the less hieroglyphic assemblers.
> All this comes down to a top
> down or bottom up approach to learning. What is best seems to be
> dictated by personality type or learning type.
I don't agree. Even if you learn an OO language, a solid understanding of
OO principles is essential, regardless of the language, to use it
> People have often said
> that learning basic first is bad but I don't think it ever hurt me.
As a maths dude, first principles are everything, and thus essential. But
folk don't need to know those principles nor the derivations to use the
results. Nor should they. It's quite valid for me to derive a theorem
based on any number of others without understanding the derivation of any
> is REALLY important is to document your programming as you do it and in
> a way that it makes scene years latter! That is the one lesson my
> computer teachers gave me that made any difference to me.
There are definitely two schools (at least) of thought on this, as
always. I sit in the camp of code being self documenting. This is a
skill, so has to be learned. But it is enabled by modern tools, which
allow arbitrarily long names because of code completion, and the
decomposition of code into classes and small, discrete methods.
Comments are essential, though, when something is not immediately clear
from the code - complex algorithms are a likely candidate - or code has
been frigged for performance.
Things are also made clearer by tests, which again modern tools make
ridiculously simple to implement.
"Change requires small steps."
More information about the ubuntu-users