Invariably, breaking programming interfaces creates a lot of pain, and the habitual willingness to change Drupal's programming interfaces is routinely identified as one of the main issues with Drupal.
For example, rewriting Drupal's form handling from Drupal 4.6 to Drupal 4.7 broke hundreds of contributed modules. And when it turned out that updating those modules was a much bigger effort than anticipated, hell broke loose. It led to quality problems, made release dates slip significantly and hordes of frustrated users were unleashed.
Today, two months after the Drupal 4.7.0 release, Drupal developers around the world are slowly recovering from the pain. We're not quite there yet but more and more people assert that the pay-off is huge and that they are thoroughly enjoying themselves with the new possibilities.
So let's capture that thought for future reference. Sweeping changes are required to make major advances in technology, and often times there is a lot of pain before the pay-off.