At the end of February, I conducted a successful bootcamp on API design and development at Africa's Talking offices. APIs are everywhere. It's what makes the internet and web services an ecosystem of interconnected parts that work together to deliver great value to end users. Whenever you are logging in to another site using your Facebook or Gmail account, you are using APIs in the background whether you know it or not.

APIs are very powerful and quite simple because they abstract away complex systems exposing only user-friendly interface that third-party developers can use to interact with a sophisticated system.

But how do APIs work? What kinds of API architectures are available? How do you handle authentication? Here are the slides;

To demonstrate the principles, We went further to build a simple App called remindme that you can use to remind yourself of stuff by sending requests to an API. remindme is built using the awesome and minimalistic Python Flask framework. You can view the source code on github.