Hello, First, thanks to everyone who contributes to this place... it's always a fascinating and informative read. I have decided after a long stretch to completely redo my page because it was about four years old and full of cobwebs. When I wrote it, I was still a student full of crazy ideas in my head. And, sorry to say, they're still there. ImplementationInheritance is still evil, and ObjectOrientedProgramming hasn't yet evolved to what it should be. What has recently been bugging me is that people really don't know how to use CheckedException (see CategoryException for all the gory details)!! And what especially bugs me is people who say 'I want my code to do X but the interface won't let me'. Huh? That's what an interface is for!! Sheesh! In Java an UncheckedException equals a programming error or a non-recoverable error. That's it. ---- I'd like to introduce a binary that I think is effective in categorising people: there are those who DivideAndConquer; and those who ConquerAndDivide. I suppose there are also those who FailToConquer at all, but we are less interested in them. I consider myself to be in the first camp, and have much difficulty seeing the world from the other point of view. Recently I've come to the conclusion that there is a strong correlation between these groupings and the S/N axis of the MyersBriggsTypes (though maybe that should be obvious?). It is by far the most significant difference amongst software engineers as a quick reading of this very wiki should make clear. I'm surprised that from my own experience in the programming world that the Ss seem to out number the Ns, or at least they do in the literature. Where are you, fellow Ns? ---- I am strongly of the belief that coding is the easiest thing we do. Therefore we should try and do as much of the heavy lifting as possible in code. Having complexity in software is much better than having it anywhere else. ---- Cheers and thanks for visiting, Richard ---- CategoryHomePage