[Wolves] Sat^WSunday Fun
alex at moreati.org.uk
Sun Jan 28 00:36:34 GMT 2007
Hopefully this will spark off some fun discussion.
* Name a program that by choice or fate, you rely on.
* Describe three aspects of it that you like most and three that
annoy you most.
* Finally, give a verdict - overall, do you love it or hate it.
For me: Python.
I love most:
1. It's quirky, minimal, indentation=delimitation syntax. If it
runs, it's probably readable & I can keep the whole language
model in my head, with room to spare.
2. It's cross platform to the core. With little or no effort, I can
write a clean script for Windows, *nix and (I presume) OSX
3. Functionality per Line of Code. For gluing things together and
mangling just about any data type , python's terseness with
clarity continues to impress me. Generators and list
comprehension, which allow looping without a loop, are just so
powerful for their compactness.
I'm most annoyed by:
1. Much of the standard library violates the principal of 'There
should be one-- and preferably only one --obvious way to do it.'
Module naming is inconsistent (ie foo, foolib, cFoo or foo.foo).
Nearly every module litters the top level & there's no clear
indication which modules are platform specific, other than
consulting the manual. Some modules (eg [any|bsd|dumb|g]db[hash|
m]) overlap others.
2. The DB-API is spartan in the extreme. It doesn't introspect
tables or column names and extra modules are required for
connecting to anything but sqlite.
3. I've not yet found a Python IDE that beats Visual Studio for
VB6. None that I've tried could offer the level of
autocompletion I grew accustomed to.
Verdict: I love Python, it gets so many things right, I expect I'll love
Python 3 even more.
Now your turn. Spare no praise, pull no punches.
PS I don't mean this as a troll, just a conversation starter.
More information about the Wolves