I just read an article from Michael Dubakov on The Future of Agile Development. I encourage you to follow the link and take the time to read it thoroughly, even more than once. It contains interesting facts for both managers and developers.
Everyone should clearly understand what are we doing, why are we doing this, and why is it important at this very moment.
The thing I personally don't understand is why do we have to keep on repeating this statement over and over again? Why don't people see that without the knowledge of what we're building, we (as developers) can't decide on behalf of the final goal / values. I know that there might be a great deal of political bullshit up above, and some may think that holding back information makes them special, but this corrupts any cooperation and not just software development.
Developers must set themselves to lifelong learning.
It should be developers and managers. Both should have a profession which needs to be updated and evaluated constantly. By evaluation I mean mostly self-evaluation. You should be able to see whether you should stop or continue an activity. I understand that as a manager, micro-managing makes you feel invincible and you might be rewarded as the worker of the month, but think of what you're causing. You're stating, that you will tell everyone in the team what and when to do, discouraging them from becoming a self-organizing, proactive team of professionals. The time of command and conquer attitude is dawning, so if you want to stay on the top: learn! (You could start by reading Management 3.0) As for developers, you should refer to The Clean Coder book. It tells it all.
Be keen on your work, and learn to say no especially when you're reputation is at stake.
There's an evolution leap we could make if the industry truly recognizes the power of the craftsmen. We could influence the way they teach our profession and the skills which are required by HR. But until being able to show up a degree or write a piece of software in a single programming language without any care about style and tests is enough to become a highly paid developer, there's not much hope.