I think flat structures aren't always bad - if the organization is geared towards maintenance and care work, it's essential to be as flat as possible. Another good example would be research labs, where experimentation cannot happen in hierarchical envrionments.

For an organization that has definite goals and have to ship a product by a deadline, a flat structure can surely be detrimental to any progress. In an environment of competition (from outsiders) and scarcity, a flat structure will only create either chaos or an implicit form of hierarchy that is even more cruel than what should have been.