Working with Microsoft software is often a ride of highs and lows. Highs caused by a tiny feature which changes your life. These tiny features are the spark of genius from some lowly dev in Redmond which makes the magic happen (my favorite is the fact you can copy and paste the MSCRM license code into the installer and fills in all the blocks at once, not just the first block like other installers. Office 2007 has a similar good idea).
However there is the other side, the lows of the idiot. The people think about problems so much they forget how the rest of the world works/sees there item and thus makes it work in odd ways (MSCRM team bastardizing relationships in 3.0 to build certain things. Thankfully fixed in 4.0).
Today though I met another one of these issues, the RegularExpressionValidator in ASP.NET. You give it a RegEx to validate against and guess what it validates against that. Good, expected, normal. Here's the issue, leave the field blank or put only spaces in the field and BOOM! No validation! The workaround, and it is a workaround since this is supposedly by-design, is two validators per field (RegEx and Required!). I mean for heaven sake this is retarded. There is no reason why it should be like that, and if there is WHY OH WHY is there no property to make it work logically/illogically.
Let it be said that if I find you, Mr RegularExpressionValidator Designer Guy/Girl, you will pain for the torture you have caused me to go back through every field in my app and add another validator!