Breaking web APIs

  Nick Bradbury has an interesting piece on fragile web APIs. I left a long comment there earlier today. What follows is an edited version of that comment.
  One perspective that's missing is the user's. I might be using a tool that is no longer in active development, but it works and does something there's no other way of doing. We do leave behind ideas in tech, sometimes lots of them. And when the platform vendor breaks the API, where does the user go to continue his work? To gain access to his or her data?
  I totally respect Microsoft for keeping my software working, both as a user and a developer. It makes me trust them more, and want to put more software on their platform.
  It also means data lives longer. For example, I can still read the sample files I created for ThinkTank in 1984 for the IBM PC. The Mac version, heh -- long-gone. Same of course with the Apple II or Apple III versions.
  Microsoft's approach says the user comes first. Why would they want to break the user? There's really no upside, except it means less work for the platform vendor (it costs money to keep the platform backward compatible). But there are so many more users than internal developers, the backward-compatibility work has the greatest leverage. Much better investment than investment in speculative features that few people might use.
  On the other side, as soon as I saw Twitter willfully breaking developers, I stopped investing in their platform. I knew where this was going.
  And I never invested in the Google Reader API. If my users had asked me to do it I would have said no. They might have used another product, but I don't want to build on shaky foundations. It's hard enough keeping my software working as users find new ways to stretch it.