I love C#, I really do. Of course is has its little annoying quirks here and there, but in general it is, IMHO, one of the best static programming languages out there. Having said that, one thing that makes me wonder “WHAT THE HELL WERE THEY THINKNING?!?$?!?” every single time is the feature known as “ Method Hiding ”. What is Method Hiding? Method hiding, in short, is the crippled, mentally-ill brother of method overriding. For example, look at the next code: class A { public string GetName() {...