Almost any body using Google's services would be familiar with the famous "j" and "k" keyboard shortcuts. They are used to move items forward or backward. For instance,

  • Gmail - "j" will take you to the next email message while "k" will take you to the previous message.
  • Google Reader - "j" will show you the next feed item and "k" will show the previous one.
  • Google+ - "j" is used to navigate to newer posts while "k" will take you to the previous post.

Not only Google, but many other services like Twitter and Tumblr also uses the same "j" and "k" keys for the same operations. But have you ever wondered why of all the 26 keys, "j" and "k" come to be so special? Well there is an interesting history behind this -

Back in the old days, most software developers from the Linux/Unix world used "vi" as their editor to write programs. Now when Bill Joy created the "vi" editor back in 1976, he used an ADM-3A terminal (a computer at that time) whose keyboard didn't have any dedicated arrow keys. instead, the keys h,j,k and l were used in combination with "Ctrl" key as arrow keys.

So Bill also added the same "j" and "k" as shortcut keys to navigate up and down in his "vi" editor as well. Now most developers who created Google, Twitter and other services have their roots in the Linux world. They were so used to the "j" and "k" shortcuts from "vi", the same got passed into their creations as well.

Times have changed and there would be no keyboard in the world nowadays which doesn't have arrow keys. But "vi" is still the preferred editor for many developers even today and the legacy with "j" and "k" is set to stay for sure.