Feedback wanted on programming introduction (Python in Windows)

Rhodri James rhodri at
Fri Oct 30 02:06:16 CET 2009

On Thu, 29 Oct 2009 16:53:05 -0000, Alf P. Steinbach <alfps at>  

> There's rather a lot to know about the environment that a program  
> executes in if one is going to create robust, dependable, generally  
> usable programs, not just toy examples.

I'd say this was at best an extremely misleading statement.  The robust,
dependable, usable, low-fat, carcinogen-free programs that I've written
fall into two categories; either they are embedded programs whose
environment is the silicon they're running on pretty much literally, or
they carefully *don't* know about their environment so run equally
effectively everywhere.  It's the programs that do know about their
environment and go on to make assumptions about it that turn out
not to be robust, dependable, or very often usable.

> Unfortunately even most professional programs do not handle the  
> requirements of their environs very well, and I think that educators,  
> even such as I, have a responsibility to now start teaching students to  
> do things right. To take but one example that you may or may not be  
> aware of, Microsoft's own Windows Explorer, the main GUI shell for  
> Windows, which presumably was made by the best programmers available


Uh, sorry.  I know that wasn't terribly nice, but the politest answer
I can think of that gets over the utter wrongness of this assumption is
"Hell, no."

> with the best knowledge of the program's environment, is unable to  
> handle (such as delete) files or folders with paths greater than some  
> 260 characters, is unable to handle filenames that differ only in case  
> and are in the same directory, and is unable to e.g. delete a folder  
> called "con"  --  although such files & folders can very easily be  
> created.

You may or may not be aware that some of these things are limitations of
the underlying disc format, and some of them limitations of the API.
Laying them at the feet of Windows Explorer is a tad unfair.

> In addition to such things impacting on the design and functionality of  
> programs even just the tool usage is very complex and runs to a great  
> many pages.

That rather depends on what tool you're using for what purpose.  Tools
which require stonking amounts of flagging or button-pressing for simple
uses are IMHO bad tools.  Most IDEs fall into this category.  If your
tools make simple things hard, stop recommending them to people and get
better tools.

> For example, for general tool usage in Windows the student needs to know  
> about levels of environment variable specifications and file  
> associations, which in turn requires knowledge of processes and the  
> Windows registry database and various commands.

Mercifully this is rubbish.  For most purposes with most tools even
Windows users don't need to know much if anything about environment
variables and the registry.  Needing to know anything about the
registry is usually a sign that Windows has stuffed you up royally.

> * Martin P. Hellwig:
>> I don't think it is a virtue to help adding to the pool of programmers  
>> unaware of the command line, whatever platform that might be.
> This comment baffles me.

The fact that you can say this and write "How to program" books
terrifies me.  Don't make me compare you to Herbert Schildt!

Rhodri James *-* Wildebeest Herder to the Masses

More information about the Python-list mailing list