You’re building open source API client? That’s great ❤️ I like you already. But please keep in mind:
1. It’s always cool to have a changelog
Changelogs are super-awesome, they allows other developers to quickly check what cool feature you hacked and what breaking changes they might face. It takes a few minutes to create a changelog and it can save hours of somebody else’s time.
2. Try to keep runtime dependencies at minimum
Do you really need that popular-fancy-library in order to execute few http requests? Or that uber-quick parser to parse few lines of JSON? Can you use soft-dependencies - or better yet - no dependencies at all? Give it a try, keep it low level if possible, who knows - maybe you will have a chance to know core library of language-of-your-choice a little bit better?
3. Please do no parse my parameters in a automagical fashion
If I try to push timestamp param with nano-seconds precision please do not parse it back to datetime under the hood or at least explicitly mention in in the readme so I don’t have dive into the source code in order to debug the problem. Imagine how frustrating it might be for other developers, assuming something they will know, when they have no chance of knowing that. Transparency is the key and other folks will love you for that.
4. Do not swallow exceptions, it’s just easier that way!
Just throw it at my face! I can handle those exceptions - even better I want to handle it and react accordingly. Treat fellow developers like adults!