18th October 2014
@davidb583
davidb583 / keyboard
Coder
===
Is 800g heavy?
800g
80g
problems
The Flow
"efficient, painless, mouse-free development is possible"
- Jared Carroll (ruby)
"Do not use your mouse if you want to be productive"
- Vincent Sepiak (java)
"Navigate a menu with [the] mouse interrupts the flow."
- Pragmatic Programmer tip
Exercice 1
"typing competition"
var score = 20;
if ( mistake) score ÷= 2
if (looked at keyboard) score ÷= 2
if (< 9 fingers used) score ÷= 2
if (time > 30 sec) score ÷= 2
score = ?
I
I
I
I
I
I
I
I
I
Exercice 1
Text
"typing competition revenge"
Exercice 2
Text
"file & folder academy"
Exercice 2 bis
Text
"file CRUD"
Exercice 3
Text
"selection"
Exercice 4
Text
"jump to"
Exercice 5
Text
"find and replace"
Exercice 6
Text
"automate, automate, automate"
Text
What's wrong ?
Text
Cool !
modifiers
Exercice
Save : Ctrl + s
Print : Ctrl + p
Cut : Ctrl + x
Quit : Ctrl + q
A bunch of
Eclipse : ~ 200
Webstorm : ~220
SublimeText : ~250
Wait !
Ctrl -> already binded
Shift -> already binded
Alt -> already binded
Super -> already binded
Text
Good, then
Keyboard WTF
super, k, super, b
alt, t, o, a, alt+k, spacebar, enter
Keyboard WTF
Rename : shift+ f6 ?
delete : ctrl + shift + k ?
Easy to memorize with hand
Optional : easy to memorize with brain
Easier if fallback (abbreviation, context menu, cheat sheet)
Principle of least surprise applied
Extensions are logical
Frequency and ease of use are proportional
... but try to understand native shortcuts before to customize
Good shortcut
Exercice 7
Text
"you are the one who define shortcuts"
Exercice 8
Text
"mastering HTML, CSS, JS keyboard tricks"