Paul Buchheit: Communicating with code
paulbuchheit.blogspot.com
paulbuchheit.blogspot.com
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.
(I'd love to build a friend-finder for it. Theirs sucks. That's a perfect setup for our graph discovery stuff, but we need to be able to traverse several levels out to do something useful with it.)
Think this is the one he was talking about.
The Twitter API rate-limiting makes things harder, but as a whitelisted app we haven't (yet) run into any situations where we've hit our quota or get throttled in any way.
It sounds like Alex is working on a new method to retrieve a users followers/friends in bulk which should help out a lot: http://groups.google.com/group/twitter-development-talk/msg/...
1. I wait until there are some clear Twitter client winners. I'd expect the market will diverge on a Killer Twitter client for each platform. Perhaps there's some alternate web interfaces with killer features, such that people stop using twitter.com.
2. I buy those twitter clients. I now control maybe 80% of the twitter client world.
3. I stop using twitter.com API as the backend, and replace it with my own.
4. Twitter.com becomes pretty much moot.
Maybe it's far fetched, maybe it's not...
Alternatively,
1. Wait until 3rd party twitter clients account for a large amount of twitter traffic - say 80%.
2. Do a deal between all the 3rd party twitter clients to stop using twitter, and collaborate on an alternate backend.
which is "a Free and Open Source microblogging platform. It helps people in a community, company or group to exchange short (140 character) messages over the Web. Users can choose which people to "follow" and receive only their friends' or colleagues' status messages. It provides a similar service to sites like Twitter, Jaiku, and Plurk."
I'm surprised no one has taken steps to avoid relying on Twitter.
I think if Twitter put a step wrong, or start to try and monetize users, we may see some changes :/
Give me an example of one person or several people who came together and bought 80% of clients built around a successful API and then controlled that market?
Interesting. I guess protecting the infrastructure of a billion dollar business is worth the cost of there being no chance of another billion dollar business being discovered in this way by a random engineer.
So, rapid prototyping: good, unspecced large projects: bad.
The more I work in this field, the more I think that this is the best and quickest way to build good software.
Once you realize that everything you write is disposable, you have freed yourself to just write and judge later.
It's not how fast you get started, it's how fast you finish. Sometimes the long roads around is quicker.
Focused, hard work is the real key to success. Keep your eyes on the goal, and just keep taking the next step towards completing it. If you aren't sure which way to do something, do it both ways and see which works better.
The best way to build the best X, is to build 5 of them.. by the 5th you're pretty awesome at building X. Seems like too many people believe instead, in meticulous up front design analysis etc etc.
The other point is that in my experience, the rewrites take less and less time to write, as you know more and more.
http://sorry.google.com/sorry/?continue=http://paulbuchheit....