What makes a great API? Good API design is memorable and unambiguous. It encourages readable, correct and performant code, and helps developers fall into the pit of success. I call these design aspects “first order” because they are the first things a library developer tends to focus on. You might have to compromise on some of them and make tradeoffs but at least they’re always on your mind. Howev