I started using Gmail (for business) a couple of years ago. I wish I had started making a screen grab of the interface every day so I could run back through the hundreds (maybe thousands) of often subtle changes that have occurred to the interface over that time. I’ve joked that Google could move a button from the left side of the Gmail interface to the right one pixel at a time, day after day, and you wouldn’t realize they had moved it. Google is practicing Agile Development as they iterate and test dozens of ideas and changes to the user experience each day.
What seems most interesting to me is their ability to introduce new features and make small tweaks to the interface without causing much, if any, notice by users. A new button here, a color change there; never enough change to confuse you or disrupt your normal use of the product. Pixel by pixel, they iterate and improve the product. Gmail users learn new features over time instead of being interrupted by an abrupt release where their world is turned upside down. Given that there are tens of millions of users, Gmail is a great example of rapid iteration sans massive disruption.
There are important lessons in this approach for application developers, both desktop and web-based. As users are bombarded with more and more information and offered alternatives it is more imperative to improve your product(s) rapidly without disrupting utility to your customers. You may lose them if you confuse them.