I have been programming on and off since I fell out of my teens. In those days languages where showing some sign of maturity. Pascal had shown the way of what a types language could achieve, to the point that a scratchy language called "B" had borrowed from this language to become "C". With in a decade another language called basic had borrowed from Pascal to become Visual Basic. SmallTalk was showing the way, showing how objects to help with re-usability and ease of use and understanding. And it had resulted in object pascal and C++ in the early 90's. And I thought that languages where showing that they could leave behind their ugly past based in COBOL and Fortran and its even uglier sisters like RPG. Unfortunately the quest to win the rat race took me away from programming as the GUI and web started to take hold. But in the last 5 years I have got back into programming par time. Initially just in VBA and access, but then C# for...