[first published 2013 OCT 16]
Why is the “best” API rarely used?
There is no agreed “empirical data” methodology for measuring the quality of API or software source code.
And there are indeed sometimes heated arguments about “best API”, with occasional battle cries, like : “VB6 …! That is still the best development environment ever !”. And this is where obviously any kind of reasonable discussion stops.
Truth to be told, “casual observer” of the very lively API scene today, will recognize the fact that using “the best” requires certain capacity that some people simply do not posses.
First of all, good API has to be based on a good programming language. Usually using the “best” programming language or API or framework, requires a developer to have good formal education, to be opened to a mental paradigm shift and to be equally capable of maturity. And that is, unfortunately beyond the reach of the majority. At least professionally.
This is perhaps why for example, the “WWW” has JavaScript behind every web page instead of Haskell. Or this is why Rust is widely acclaimed but still not ruling the scene. Here to illustrate the point one has to mention a few other really (really) good languages and API’s based on them: LUA, Lisp, Clojure, Julia … etc. All brilliant and approved by many and used by few.
Sorry for appearing as patronizing, but …