API Fluency: remembering APIs to become more effective


Application Programming Interfaces (APIs) are critical to improve developer productivity: developers can reuse a significant amount of functionality instead of writing it themselves.
The flip side of API popularity is that APIs are large and numerous: developers often spend significant time searching for the functionality they need. Worse, they may not even be aware that an API exists for a given task and thus waste time reinventing the wheel.
In this talk we want to propose a way to obtain API fluency: the ability for developers to internalize how an API is used. The more developers have internalized the APIs they need, the more productive they can become. We propose an approach to improve API fluency, that means to remember APIs and to become more productive, based on the game of spaced repetition that we all know in forms of flash cards.
We implemented the game as a prototype and will present this during the talk.