Re: Per the discussions of Software Engineering



On Apr 21, 3:53 pm, John Larkin
<jjlar...@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx> wrote:
On Sat, 21 Apr 2007 21:45:03 +0100, "Andrew Holme" <and...@xxxxxxxxxx>
wrote:







"John Larkin" <jjlar...@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx> wrote in message
news:joqk23ljm150epnrep40lgt497gnstufus@xxxxxxxxxx
On Sat, 21 Apr 2007 17:19:03 GMT, "Robert" <Rob...@xxxxxxxxx> wrote:

The best Programming Language to start with:

http://www.shlomifish.org/philosophy/computers/education/introductory...

Robert

This makes no sense to me:

"The reason for that is that people who dive right into Assembly, tend
to write sub-optimal code because they don't understand well how this
code is executed by the processor and how to compile it. This is while
programmers who've learned C are better equipped to understand how
Assembly code works, because it is somewhat more convenient yet still
very close to Assembly."

Actually, programmers who've learned assembler are better equipped to
understand how C works.

Someone technically oriented could well start with assembly on a good
architecture (which qualification immediately excludes all Intel
products.) I can't see how learning C first helps. They should be
*taught* good assembly programming technique (data types, indexing on
structures, bare-metal binary math concepts, general organization,
commenting) so they don't grow their own bad habits, just like
teaching tennis or skiing.

I started-out programming in BASIC and 6502 machine code on a Commodore PET.
By the time I went to university, I was quite an accomplished spaghetti
programmer. At college, they taught us structured programming in PASCAL.
My BASIC and machine code were much better organised after that. I just
needed a little pointer in the right direction to correct my self-taught bad
habits.

I started writing horrible stuff on PDP-8's, but the PDP-11 taught me
how to think... it was designed for cleanly structured data and code.
I read the listings of the Focal-11 interpreter and the RSTS
timesharing system and the lights came on.

I still do my embedded stuff in 68K assembly, which is at least as
nice a language as C. A typical embedded product program takes a week
or two to do and never breaks. I finish programs very fast because I
hate to program. That's consistant with the quote in "Dreaming in
Code", something to the effect that the problem with programmers is
that they love to write code.

"never breaks. I finish programs very fast "

A typical programming oxymoron.

.



Relevant Pages