I get that flat is meant to strip away unnecessary ornamentation, but depth has a purpose. We aren't living in a 2 dimensional universe. Our screens may be 2 dimensional right now, but that doesn't invalidate the use of depth to provide helpful hints to the user. Abandoning a tool in your toolbox because of misguided principles. You'd rather hit your nail with a wrench than use a hammer, you don't want to be seen using a hammer, that's not fashionable. Flat design is what happens when designers over-think problems at the expense of usability. Flat design is frustratingly naive. It's a revolution of the unexperienced who through desire to leave a mark, only left the impression that they wanted to make one. All at the expense of unhappy users.
Many graphic designers who have become 'web designers' will simply colour in wireframes rather than working with actual content. Therefore you end up with a design full of gradients, curved corners and shadows because that's all they have to work with.
Which is odd considering the core of graphic design relies on understanding the content and message, in essence the form follows the function.
To be clear, I just think flat is a solid stepping stone in right direction, nothing more.