Hacker News new | past | comments | ask | show | jobs | submit login

Unless you work for Twitter, I'd say you're right, and rightly so. Don't depend on someone else's API, how many times must history repeat itself before this message sinks in.



Don't rely on someone else's API? That's like going through life never trusting anybody. Sure, you'll avoid getting burned, but I hardly think that's an optimal strategy.

A better strategy is to trust somebody (/an API) until they give you good reasons not to. Admittedly, twitter seems to have broken that trust. I personally would't use them as a platform, unless the benefits clearly outweigh the risks of them haphazardly cutting me off.


How about "don't build your business on a free service's platform".


Free? Free to whom? Twitter charges some users, but doesn't charge others. The same could be said about just about every platform out there. I don't think that's particularly useful advice, because I don't know what you mean by free (is Android free? what about network tv? what about the road systems?).


I mean a platform where the vast majority of users don't pay to use it. Why would Twitter be happy to engineer and support an API for Twitter client apps if it means they can't reach those users the way they need to to generate revenue?


Twitter's API is free for API consumers...


That's an unreasonable position to take. Almost all third-party software products ever created rely on some other third-party APIs, and to suggest "Don't depend on someone else's API" as a strategy would be akin to saying "Don't write software for a living."

The challenge is to determine, in advance, if the platform you are writing for will maintain some reasonable level of access to the API, both now, and in the future.


>Almost all third-party software products ever created rely on some other third-party APIs

This is evidence for an unfortunate confusion about the usage of the term "API". There is a world of difference between a third-party library and a third-party service, each of which can be said to have an API. There are plenty of pieces of software which rely on one kind of API but not the other.

It is entirely possible to write software that doesn't rely on a third-party service. If that's the point you're trying to make then great! You see the thing is about relying on third-party services is that a great amount of trust must exist between the application and the service. It's a good way to go, but when there's no actual money moving between the app and the service, everyone has reason to be a little concerned.


Perhaps "don't depend on someone else's API unless you're paying for it" is a better attitude. Depending on someone else to keep giving you something for free is problematic at best.


That's not correct either. There are lots of free APIs that are reliably stable, available, and profitable. Think about how many tens of billions of dollars have been made writing to the win32 API. Likewise, the community of GNU/Linux APIs (Perhaps the first time I've ever felt it was appropriate to write GNU/Linux in a sentence :-) - glibc, etc...

The question you have to ask yourself is how much leverage the third-party has over you if they decided they want to screw you over. Even still, you may want to write for that platform if the $$$ is there. Look at iOS platform - Apple totally owns you. Or, even better, look at the PS3/Wii/XBox platforms - the owners of those APIs have even more control over what you can do - but still very profitable platforms to develop for.

At the end of the day, a judgement call has to be made. No easy rules.


That's a ridiculous statement. Unless you are as vertically integrated as Apple, you can't avoid dependencies on someone else's APIs.


What's ridiculous is assuming you can make money off of a free data source without any inherent long term risk.


Better advice would be: Don't depend on someone else's API when they've made it quite clear how hostile they're going to be towards you.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: