This is an excellent description of many programmers I've met and I'd certainly include myself among this category. There is one this I do tend to find occasionally, which is that I get the most enjoyment actually solving the problem in my head and once I know the actual way of doing it I sometimes lose interest a bit. This makes it hard sometimes to really make the code I write down excellent.
I'm not so sure that it is as simple as the above categories might suggest as I think that most people are hybrids of two or more of these types to varying degrees. I'm certainly a mixture of hobbyist, evil monopolist (circa 1-2%) and obsessive-compulsive problem solver.
Please, if this node offends you, re-read it. Think for a bit. I am almost certainly not trying to offend you. Rememer - Please never take anything I do or say seriously.