Software should never be a closed system. I believe that if you’ve truly built something great, you should share it with the world. That’s what our APIs allow us to do. They give others the power to leverage the system we’ve built so they can make bigger and better things. Through the adaptation of others, both our system and theirs become successful. A strong set of APIs is one of the best marketing tools you’ll ever build.
And that’s why they’re so central to this project. We’re working on a core of APIs that will give our users access to a whole host of functions they can use to build their own applications. Our system will support other developers from day one, and through continued feedback, we’ll keep improving upon the foundation we’ve built.
Why all this talk about APIs? It occurred to me over a brief Skype conversation with my team. For all this time, we’ve never had a proper brainstorming session where every idea gets thrown onto the table, no matter how strange it might seem. It’s amazing what such a short exchange of ideas can do. As soon as we got started, we were thinking of all kinds of ways our system could be used for other applications. It was almost immediately apparent to me that we needed strong API support for any of these new possibilities to become reality.
So many great startups have become successful because of their strong API support. Just have a look at Basecamp. A growing number of apps now have Basecamp integration. That’s a big reason why Basecamp is everywhere. The team at 37 Signals have built something that’s easy to integrate, simple, and highly effective at what it does. Outstanding products like Basecamp spread like wildfire on the web because their APIs provide the kindling.
Good documentation and support are just as important as the APIs themselves. You need to make life easier on your developers, not harder. There’s nothing more frustrating than trying to figure out how to use someone else’s API when there’s no clear documentation. You’ll spend hours searching the web, often in vain, trying to find the one correct way to use a function. Nothing deters developers from using your APIs faster than that.
If you put careful thought into your APIs and make them central to the application you’re building, it will get adopted much faster. Good software breaks down barriers, facilitates communication, and makes complicated tasks seem simple. That’s been our goal from day one.