Secrets of Awesome JavaScript API Design
Brandon Satrom – http://twitter.com/BrandonSatrom
Slides at https://speakerdeck.com/brandonsatrom/secrets-of-awesome-javascript-api-design
This session was presented at the O’Reilly Fluent Conference in San Francisco, CA on May 29th, 2013 – http://fluentconf.com/fluent2013/public/schedule/detail/27777)
It doesn’t take long for most developers to sniff out a poorly-designed JavaScript API. Within minutes of reading about or coding against a new library, most developers can intuit whether their long-term relationship with that library will be a pleasant or unfortunate one. While documentation, buzz and other factors certainly play into that conclusion, the largest influencer of that snap conclusion is the “feel” of the API itself. APIs are developer UX: A good one raises a developers enjoyment; a bad one sends it plummeting.
As developers, we know what good and bad JavaScript APIs “feel” like, and yet we struggle with designing the kind of APIs that we enjoy using. But principles of good JavaScript API design do exist, and it’s possible to extract them from several key libraries in the the proliferating JavaScript landscape. In this article, Brandon Satrom will do exactly that, digging into the design aspects of popular libraries like jQuery, Backbone, Modernizer, Kendo UI and others to enumerate the designed-in qualities of these libraries that make them not only popular, but a pleasure to use.
source