Over the last 2 months we tried an experiment in my team to improve our muscle memory on keyboard shortcuts. The motivation for this was my belief that being able to navigate one’s development IDE’s / tools without using a mouse leads to a more fluid development experience and helps you discover functionality that you IDE has that you are not aware of.
Two years ago I invested personal time to learn the shortcuts of my IDE (which was Visual Studio with Resharper at the time) and in doing so discovered a ton of useful features that I was not aware of.
How do it work?
The experiment was marketed as an internal team challenge - we called it the ShortCutFoo Challenge. The basic idea was that everybody participating put $10 in th pot. Participants would then have during the week to practice using ShortcutFoo. On the Friday we would challenge each other using the ‘Fight the Friend’ feature; at the end of two months a champion would be crowned.
So, how did the experiment go?
It had mixed results.
The first Friday nobody was ready to challenge each other because nobody spent time learning shortcuts. In the weekly one-on-ones I encouraged those in the challenge to spend just ten minutes each day learning shortcuts. The following week one person had spent time actively learning shortcuts, everyone else still had not spent sufficient time and thus refused to participate in the ‘fight the friend’. We also discovered that the experience in ShortcutFoo for ‘fighting a friend’ was buggy; we needed to open the browser in “incognito mode” to be able to get it to work.
I really liked the idea of “fight a friend”, however it still needs substantial work to make it more enjoyable. A potential business model I would suggest to the people behind ShortcutFoo is to make their “Fight a friend” feature free, and use this as a mechanism to encourage people to sign up to the paid for service - just an idea.
Over the weeks different participants began to do ShortcutFoo, although because they started at different times (in ShortcutFoo you have different stages) - this meant that unless participants challenging each other agreed to challenge at the right level it would be incredibly hard for someone on a lower level to beat someone on a higher level.
Another issue we had was during the time the challenge was happening we had new dev join the team. Nobody in our team has access to the company credit card - it sits with the Dev Managaer - which proved a challenge to get. In the end the new dev ended up paying for access on the service on their own. A team having access to a credit card would have made this a lot easier.
What was the outcome?
Ultimately one member of the team really enjoyed ShortcutFoo and completed the challenges; however while they are doing well knowing the shortcuts in ShortcutFoo, there is still work in moving them applying this in the actual editor.
Other particpants dabbled with ShortcutFoo but never really got into it as much as I would have liked. In speaking to them, multiple reasons were given:
- We were learning Webstorm shortcuts, at the time we moved on to C# work (which meant we were working in VS).
- Some participants had other things they felt were more important and battled to get into a routine
- Giving people an opportunity to learn shortcuts as individuals is a good idea, getting a team to learn is hard.
- If we had dedicated time during the day for the whole team to practice we probably have seen more uptake (but this feels to much like babying people).
- Having easier access to a credit card and not needing to get approval to use it would also make handling team changes better.