For Programmers: Free Programming Magazines  


Home > Archive > Software Engineering > May 2006 > Re: Off topic Re: Iteration vs. Recursion -------- subject drift detection









You are viewing an archived Text-only version of the thread. To view this thread in it's original format and/or if you want to reply to this thread please [click here]

 

Author Re: Off topic Re: Iteration vs. Recursion -------- subject drift detection
David Lightstone

2006-05-13, 8:00 am


"SM Ryan" <wyrmwif@tango-sierra-oscar-foxtrot-tango.fake.org> wrote in
message news:126ako3s1tpm5fa@corp.supernews.com...
> Apparently it is okay to go off topic if you are in the Elect.
>
>


What topic? You read the subject line, you read the content and decide for
yourself if there is a correlation.

Perhaps I should have retitled the subject when I made my post. Perhaps the
author of the post to which I responded should have retitled it.
Either way it did not occur.

What to title the subject of this post. Can't decide. Perhaps - "a decision
criteria for determining when it might be wise to consider changing the
subject of the newsgroup posting" no that is just to long

>
> "David Lightstone" <david._NoSpamlightstone@prodigy.net> wrote:
> #
> # "CBFalconer" <cbfalconer@yahoo.com> wrote in message
> # news:4463C372.DA1A0537@yahoo.com...
> # > Richard Heathfield wrote:
> # >> blmblm@myrealbox.com said:
> # >>
> # >>> Possibly, though, I wasn't clear -- I wasn't so much claiming that
> # >>> we *do* turn out a few who might be useful (though I hope that's
> # >>> true) as saying that we *should* turn out a few such, and asking
> # >>> for stories that would make it clearer what to avoid.
> # >>
> # >> Well, for starters, either teach them how to program or tell them
> # >> not to apply for programming jobs. :-)
> # >>
> # >> Seriously, it's not my place to teach you how to teach. But IF IT
> # >> WERE, then I'd suggest the following:
> # >>
> # >> Make sure they have a thorough understanding of an abstract machine,
> to
> # >> the
> # >> extent that they can write non-trivial machine code programs in it.
> An
> # >> 8-bit machine will be fine - 256 bytes of RAM ought to be enough for
> # >> anybody. 16 bits if you're feeling astoundingly generous. Make sure
> it
> # >> has
> # >> a weird character collating sequence. I mean /really/ weird. (But
> keep
> # >> '0'
> # >> through '9' contiguous and ascending.) If you're feeling really
> pleasant,
> # >> make it a two-byte machine with 11-bit bytes! Let them learn the
> meaning
> # >> of
> # >> the word "architecture" (or "agriculture", as we read in clc
> recently!).
> # >>
> # >> Set one of the really bright ones to write the machine code
> interpreter
> # >> in
> # >> something like C or C++; then make sure it works, fix it if need be,
> and
> # >> use it forever afterwards for students to test their machine code
> # >> programs
> # >> on. Then get someone else bright to write an assembler and debugger
> for
> # >> it.
> # >>
> # >> You're now in a position to teach programming at the dirty end - so
> make
> # >> sure they all understand about stacks and heaps and how memory works
> and
> # >> procedure calls, and so on ad nauseam. (Make sure they write enough
> # >> machine
> # >> code programs to get the idea, before you let them graduate to
> assembly
> # >> language.)
> # >>
> # >> This doesn't have to be hugely in-depth, but I am sick and tired of
> # >> teaching
> # >> people what a pointer is, when they ought to KNOW what a pointer is.
> # >> "Look,
> # >> you want this function to update the pointer, right? So you ought to
> be
> # >> passing a pointer-to-the-pointer into the function" + blank look =
> recipe
> # >> for a police caution.
> # >>
> # >> Then, once they know all that, teach them programming from the clean
> end.
> # >> :-) High level, in other words. You should find that they pick it up
> # >> rather
> # >> easily, because they understand what's going on underneath.
> # >
> # > But you would clutter their pristine young minds with all this
> # > detail, when all they need to know is the abstract properties of an
> # > operation! Something like teaching the basic definitions of a
> # > limit (difference arbitrarily small as things approach arbitrarily
> # > near, or we can find an epsilon such that, etc.) to budding
> # > mathematicians. Or even that hot gases expand and urge pistons or
> # > other things to move to budding automotive engineers.
> # >
> # > In all seriousness though, the fundamental teaching problem is when
> # > and where to draw the line between detail and abstraction, and
> # > persuade the student to choose the appropriate view.
> #
> # I thought Parnas resolved that circa the development innovation
> # modularization / incapsulation / data hiding.
> # Is a whole new bunch of programmers (and I know you are not one of them)
> # rediscovering the square wheel?
> #
> #
> # >The lack
> # > today of simple but complete systems, such as were built around the
> # > 8080, is a drawback. A stack is a detail, automatic storage is an
> # > abstraction.
> #
> # I do not consider that necessary to learn about systems. Laszlos's book
> # System View of the World will be adequate
> #
> #
> # >
> # > --
> # > "If you want to post a followup via groups.google.com, don't use
> # > the broken "Reply" link at the bottom of the article. Click on
> # > "show options" at the top of the article, then click on the
> # > "Reply" at the bottom of the article headers." - Keith Thompson
> # > More details at: <http://cfaj.freeshell.org/google/>
> # > Also see <http://www.safalra.com/special/googlegroupsreply/>
> # >
> # >
> #
> #
> #
> #
>
> --
> SM Ryan http://www.rawbw.com/~wyrmwif/
> What kind of convenience store do you run here?



Sponsored Links







Also available: Server administration forum archive | Web Design forum archive | Software forum archive | Hardware reviews archive

Copyright 2008 codecomments.com