What is different with Python ?
agriff at tin.it
Mon Jun 13 08:32:10 CEST 2005
On Sun, 12 Jun 2005 21:52:12 -0400, Peter Hansen <peter at engcorp.com>
>I'm curious how you learned to program.
An HP RPN calculator, later TI-57. Later Apple ][.
With Apple ][ after about one afternoon spent typing
in a basic program from a magazine I gave up with
basic and started with 6502 assembler ("call -151"
was always how I started my computer sessions).
>What path worked for you, and do you think it was
>a wrong approach, or the right one?
I was a fourteen with no instructor, when home
computers in my city could be counted on the fingers
of one hand. Having an instructor I suppose would
have made me going incredibly faster. Knowing better
the english language at that time would have made
my life also a lot easier.
I think that anyway it was the right approach in
terms of "path", not the (minimal energy) approach
in terms of method. Surely a lower energy one in
the long run comparing to those that started with
basic and never looked at lower levels.
>In my case, I started with BASIC. Good old BASIC, with no memory
>management to worry about, no pointers, no "concrete" details, just FOR
>loops and variables and lots of PRINT statements.
That's good as an appetizer.
>A while (some months) later I stumbled across some assembly language and
>-- typing it into the computer like a monkey, with no idea what I was
>dealing with -- began learning about some of the more concrete aspects
That is IMO a very good starting point. Basically it
was the same I used.
>This worked very well in my case, and I strongly doubt I would have
>stayed interested in an approach that started with talk of memory
>addressing, bits and bytes, registers and opcodes and such.
I think that getting interested in *programming* is
important... it's like building with LEGOs, but at a
logical level. However that is just to get interest...
and a few months with basic is IMO probably too much.
But after you've a target (making computers do what
you want) then you've to start placing solid bricks,
and that is IMO assembler. Note that I think that any
simple assembler is OK... even if you'll end up using
a different processor when working in C it will be
roughly ok. But I see a difference between those that
never (really) saw assembler and those that did.
>I won't say that I'm certain about any of this, but I have a very strong
>suspicion that the *best* first step in learning programming is a
>program very much like the following, which I'm pretty sure was mine:
>10 FOR A=1 TO 10: PRINT"Peter is great!": END
Just as a motivation. After that *FORGETTING* that
(for and the "next" you missed) is IMO perfectly ok.
>More importantly by far, *I made the computer do something*.
Yes, I agree. But starting from basic and never looking
lower is quit a different idea.
More information about the Python-list