However,
"Public APIs enable everyone to experiment with new ideas and create new ways of using your product. This is incredibly powerful because no matter how brilliant you and your coworkers are, there are always going to be smarter people outside of your company."
The only thing that worries me about this, is that in Twitters case, they have lost control to a large extent. They're not really a destination anymore. They're a backend service with a free API. They're no longer the gatekeeper. Just suppose Twitter introduces some advert tweets in everyones stream. 3rd party apps could just ignore those. Suppose twitter does something else to try and monetize... The major twitter apps could just decide to get together and pass messages between themselves instead of through twitter.
Having a public API is awesome for innovation and growing userbases, but it seems like there could be a reasonable risk and cost to that. I think a public API should not be so complete that people don't need to use your app anymore.