I saw a video of Steve Jobs talking at the first WWDC after he came back. He was responding to a question from a developer who was bitter about Apple's decision to drop OpenDoc. I don't know the particulars of the developer's situation, but I'm assuming he put a lot of work into developing apps that worked on top of OpenDoc, at the encouragement of Apple people. They promised all kinds of wonderful rewards if developers jumped on board. The promises, of course, were never kept.
In the video, Jobs says he feels their pain. The developers laugh. It's kind of strange to laugh about your own pain that way.
At the end of Jobs's talk, he talks about how hard Avie and his team are working to make a great platform, and how basically the developers should stop complaining, and just patiently wait for Avie to complete his work.
Of course this was completely following the classic roadmap for Steve that Doc Searls published here in 1997. "The influence of developers, even influential developers like you, will be minimal. The influence of customers and users will be held in even higher contempt."
A few years before that, I was working on system-level scripting for the Mac, and had developed a toolkit, with the help of Don Park, that made it easy for apps to call each other as if they were a system-level toolkit. Just like the Mac OS. So a database could provide services to a comm program, or more likely to a user who wanted to integrate comm with database (this was before communication was integrated in everything through the TCP stack).
Shortly after coming out with my toolkit Apple announced theirs, in vapor, but I had learned the lesson before about competing with the platform vendor on plumbing, so as painful as it was, I adapted my product and made it work with Apple's approach.
Until one day, all the deals went kaput. I called these people, many of whom I considered friends, and was told that Apple had made deals with each of them that precluded them working with my company. They all took the deals. (And violated NDA's by telling me. Amazingly Apple had expected none of them to tell me why they were walking away from our collaborations.)
A few years later, I asked a room full of them, just out of curiosity, if any of them had made money on this deal they did with Apple. Of course not. Apple, Microsoft and Aldus (which later became part of Adobe) made all the money.
The bottom-line is that the developers would have done better, imho, working with each other, than each of them making separate "deals" with Apple. Because to Apple, they weren't deals at all. Their motive, as people, not so much as a company, was to regain full control of everything that happened on their platform. The other developers helped them do that. Once that was over, they weren't important to Apple. Even if, as individuals, the Apple people had integrity and honor, the company didn't. People move around all the time. Leave the company. Get reorg'd. The new guys, if there's any memory of the "deal" didn't feel obligated to honor it.
This is the famous Prisoner's Dilemma. It applies not only to prisoners but also to independent software developers. The police in the analogy are the platform vendor. And the prisoners are the developers.
Today, in the area where I'm working, the equivalent of Apple is Twitter. They're doing one-off deals with developers, and imho again the ones who will do well are the big companies with large installed bases. The ones who will lose, even if they get a deal with Twitter, are the small guys. And most of them will not get deals with Twitter. Most of them won't even get close.
My advice to developers who seek partnerships with Twitter is to spread your bets out. Sure, Twitter may buy one or two of you, but what if they buy your competitor? Would you like to have some hope for the future if that should happen?
If you get a knock on the door from someone who's too small to put you out of business on a whim, don't think about how small they are, think about how small you are. You're much more likely to be able to trust someone who has to work with you rather than someone who doesn't.