Programming with .NET is like cooking in a McDonalds kitchen. It is full of amazing tools that automate absolutely everything. Just press the right button and follow the beeping lights, and you can churn out flawless 1.6 oz burgers faster than anybody else on the planet.
However, if you need to make a 1.7 oz burger, you simply can't. There's no button for it. The patties are pre-formed in the wrong size. They start out frozen so they can't be smushed up and reformed, and the thawing machine is so tightly integrated with the cooking machine that there's no way to intercept it between the two. A McDonalds kitchen makes exactly what's on the McDonalds menu -- and does so in an absolutely foolproof fashion. But it can't go off the menu, and any attempt to bend the machine to your will just breaks it such that it needs to be sent back to the factory for repairs.
the restAn amusing piece, ans the very last comment might have been worth it alone. It's a good example of "take an opinion, slightly overstate it for comedic effect, watch the net esplode" affect
A