This is not a post about how to set up key-bindings in your applications but why. Users, especially power users, like to navigate across your application efficiently. This implies a sound user interface, where the things are in their “natural” places and a bunch of key bindings. Nothing is more annoying than having to click several times to accomplish a simple task and doing it all over again in every repetition. Any good application framework should support the basic key bindings for the most important functions used by all applications, like command+N for “new”. But what makes the difference are the key bindings you define for everyday tasks within your program. These must not interfere with standard key bindings of the OS and in order to being used frequently, they should be easy to remember. Try to use your application without the mouse and you will soon find out which key bindings to add!