One of the most amusing things is the “’aha!’ moment”.
One of those moments that you read something in a semi-random page, an article you just happened to reach through a series of tonight-I-have-too-much-free-time web links, and then you hit a particular passage of text which rings an enormous bell inside your head, as if something which has always been there was suddenly lit so brilliantly that it shone through the maze of boredom and so freaking made your day :-)
I have always felt rather skeptical about the crazy madness of the OO programmers, the drive and the need they seem to promote to make everything, every single little detail, a monstrous class hierarchy. One of the posts by Paul Graham seems to have phrased one of the reasons for my skepticism pretty eloquently, and I just stumbled upon it:
Object-oriented programming generates a lot of what looks like work. Back in the days of fanfold, there was a type of programmer who would only put five or ten lines of code on a page, preceded by twenty lines of elaborately formatted comments. Object-oriented programming is like crack for these people: it lets you incorporate all this scaffolding right into your source code. Something that a Lisp hacker might handle by pushing a symbol onto a list becomes a whole file of classes and methods. So it is a good tool if you want to convince yourself, or someone else, that you are doing a lot of work.
— Paul Graham, “Why Arc isn’t especially object-oriented”
I don’t usually like to be “appearing like I am doing a lot of work”.
In fact, most of the time I fall in one of the traps which are so common now that friends and colleagues who know me recognize almost instantly.
I do a lot of work now, so I can sit back and enjoy a cup of coffee doing absolutely nothing when I have to repeat the same work later :-)