Programming Habits in Python
lobozc at my-deja.com
lobozc at my-deja.com
Mon Dec 11 01:24:43 CET 2000
In article <slrn937caf.h4.amk at 207-172-146-
akuchlin at mems-exchange.org wrote:
> On 07 Dec 2000 11:02:45 +0100,
> Jochen Küpper <jochen at pc1.uni-duesseldorf.de> wrote:
> >Not to destroy the metaphor, but you cannot learn modern physics from
> >Principia! Classical Mechanics at most. But you can learn the
> >physicists way of thought... 
> In the back of my mind I had a quotation, which I cannot track down on
> the Web. The Principia uses geometrical methods throughout, even
> where analytical methods would have been much simpler, and someone
> (Halley, perhaps) said that reading the Principia was like walking
> through an arsenal of giant weapons of a past age, and that one is
> amazed that anyone could wield them at all. I feel the same way about
> TAoCP; amazing piece of work, but I'm not strong enough to make any
> use of it. Hmm, there's an essay lurking here somewhere...
be warned - that analogy for your essay may be misleading... TAoCP
[neat - never thought if it as TAOcp before :-)] is not about weapons
of the past age - as this would suggest that nowadays we have better
weapons and we can use them instead - and we can forget the old stuff.
It's more like quantum mechanics - usually below the surface but
required to understand physics. I believe that TAoCP is about things so
fundamental to computer science / technology that most of them were
encapsulated into software years ago so most programmers nowadays don't
have to think about them (until they run into trouble :-)
Take for example things like random number generators - you have them
for every platform [ see C libraries, Java libraries etc] - so there is
not much point in writing them yourself. Here goes half the volume...
having said that I had to write some of them, as the underlying
platform was giving bad random numbers and it was obvious from the
start that the guys who wrote it were unaware of Knuth. And the fact
that I was aware of Knuth saved me from making serious blunders and
time waste (mine and others) - as the docs were showing [to me] that
the lib was bad and I could fix the problem before using bad software.
[and please take into account that random number generator errors are
subtle, unlike sorting]
Most people would have similar stories with sorting and searching,
accuracy of computations (floating point) etc.
So, I agree to most programmers nowadays don't need Knuth's recipes.
But most of the time they need to know the issues raised there. Having
said that I'm not going to imply that that's all that is to
programming. There is not much there on programming languages etc.
Sent via Deja.com http://www.deja.com/
Before you buy.
More information about the Python-list