I made the analogy the other day to my co-workers that doing a new project in a new programming language is like writing a dissertation on a topic you don't know in a foreign language you don't really know. Not only are you struggling with figuring out what you want to do with the project, but you're also having problems expressing yourself to the compiler/interpreter in the new syntax.
That was a lead in to the fact that my irritation with python has reached its breaking point. I originally started using python because it was billed as an "Object Oriented Programming Language". After reading through the first seven chapters of ORA's Learning Python, it looks to me like python is simply a procedural language with some objects bolted on. Most of the examples from the first chapters were procedural statements with only passing lip service to actually using objects. Classes aren't introduced until chapter 8 and, when they are presented they're presented in a ship-shot manner with little practical application. If I wanted no practical application for my code, there are a thousand OOP books out there to tell me how to create a generic Shape object and subclass a Square, Circle and Triangle from that, then override the Shape.compute_area() method in Square, Circle and Triangle to calculate the area appropriate for each. Is it too fucking much to ask for a reasonable example to use for coding!?!?!
Well, apparently not. The Practical Programmers in their Ruby book A) use a concrete example (that of coding a jukebox) for their discussions and B) talk about and show objects from the first chapter. Perhaps I'll give python another chance a little later, but for now, I think I'll use ruby to make my new project. The documentation is clearer and the pureness of the Object Orientation is much more appealing.