Great article from Keith Brown about improving original ASP.NET password field behaviour.
It is also a good hands-on example of building elegant custom controls and using control state. At least my attempts in this area were much messier.
Agile interaction between client and development team is always about a trust. It is easier to achieve with internal clients - they may have already established relationship with the team, or at least they can be influenced. Bringing aboard external client usually means that at some point Agile process should be transitioned to whatever client is used to. Some unlucky Product/Project manager has to act as a filter to accept Agile feed from the team and produce some kind of acceptable output for a client and vise versa. When looking for vendors, companies rarely have in mind something different from "fixed price for fixed features in fixed time". Software industry doesn't really have well established mechanisms for gathering and sharing success and failure statistics, so it is widely believed that such contracts minimize risks and uncertainty. It seems to provide common ground for bidding contest but in reality vendors are forced to compete in wishful thinking with their fingers crossed.
But it looks like something is happening in the twilight zone. Agile Contracts initiative aims to continue Alistair Cockburn's investigation of agile-tolerant vendor agreements. This hard-to-get experience is going to be summarized and hopefully community will get a solution, acceptable both to Agile teams and clients, who, for some weird but understandable reasons, want work done for their money.
Just imagine that pushy project manager or that ignorant colleague of yours performing the song or do the dance and you will be smiling instead of cursing.
The bearded guy probably served as an inspiration for Matt The Dancer.