[Tutor] Shelve del not reducing file size

Alan Gauld alan.gauld at btinternet.com
Fri Jul 27 22:59:37 CEST 2007

"Andreas Kostyrka" <andreas at kostyrka.org> wrote

> was, that the only way to have more math courses would be to study
> something with mathematics in the title *g*)

Thats true of most engineering courses.
Although I studied Electrical engineering the only compulsory subject
for each of the 5 years(if you took it to Masters) was math! You could
actually drop all of the pure electricaltheory by fifth year but you 
drop math... But thats because math is the language of enginering,
regardless of whether its building bridges, oscillators or programs.
You don't need much math to build a garden shed, but you need
a lot to build the Tacoma Narrows bridge... Similarly you don't need
much math to build a GUI friont end to a database, but you need
quite a lot to build the control program for a nuclear reactor. (and 
consequences of getting it wrong are usually worse too!)

> of many students that expected to learn "programming" was the fact, 
> that
> you were expected to know programming already.

Really? We had a pretty good basic Pascal course in first year. After
that you knew how to program so after that it was just learning new
languages so no need for extra training. Most of it after that was on
techniques like data structures, parallel processing, graphics, 
data theory,  intrerruipt handling, assembler I/O techniques, 
and control theory etc etc. The stuff you need to design programs not
write them.

> cPickle/Pickle question is AFAIR documented,

But not in a manner totally clear to a newbie. An experienced
programmer will figure out that a C implementation is faster but
what does that meabn when your only reference is a few weeks
of Python? And why is there two modules if one is better? Why
not just replace the Python one completely?

> simple, because parsing XML is not a problem with one single perfect
> solution, so one needs to select the perfect one.

But how does a newbie know which solution where?
There is little or no guidance about that in the docs

> OTOH, as a newbie, it really does not matter if one uses urllib or
> urllib2.

But its confusing and unsettling that there is a choice.
especially when the zen of python claims there is only ione way
to do it! Not in the library there ain't - even if you are Dutch!

>> sits where and why. And what about the confusion over system(),
>> popen(),commands(),spawn(), subprocess() etc. or why is there time
> Mistakes of history.

Sure but again the newbie just sees a mess.

> Plus a number of these warts come from the ports to
> certain inferior operating systems.

Granted but thats not the main reason, its just history and the
open source culture of contributing modules. Now dopn;t get me wrong,
I'd rather have the batteries than build my own, but we should not 
just how hard this is for a newbie.

> time versus datetime is easy to understand => time is POSIX time

POSIX whassat? Newbies again.

>> library is another. Even the Java standard library, much as I 
>> dislike
>> Java, is better organised and more consistent!
> You think that there are no overlapping APIs in Java? Historic 
> "mistakes"?

There are overlaps - Swing v AWT etc being a prime example.
But the organisation of the library into packages is much better
controlled. By separating the old/new Java at least keeps things 
tidy and can say use the stuff here and not the stuff over there. 
essentially flat (and that is improving slowly) structure is just 

Alan G 

More information about the Tutor mailing list