Slide 1

Slide 1 text

No content

Slide 2

Slide 2 text

Our plan for today 1. What's a RSI? 2. My Journey with RSI 3. Prevention 4. Reverse engineering my pain 5. Technical optimizations

Slide 3

Slide 3 text

⚠ DISCLAIMER

Slide 4

Slide 4 text

What is a RSI?

Slide 5

Slide 5 text

Repetitive Stress Injury

Slide 6

Slide 6 text

Repetitive Strain Injury

Slide 7

Slide 7 text

Cumulative Trauma Disorder (Ok, that one really messes up with our RSI mnemonic)

Slide 8

Slide 8 text

Who's at risk?

Slide 9

Slide 9 text

Musicians

Slide 10

Slide 10 text

Athletes

Slide 11

Slide 11 text

! "

Slide 12

Slide 12 text

Labour Workers

Slide 13

Slide 13 text

Sedentary People

Slide 14

Slide 14 text

No content

Slide 15

Slide 15 text

My journey with RSI

Slide 16

Slide 16 text

My hobbies... ‣ Rock climbing ! ‣ Programming ⌨ ‣ Play the guitar # ‣ Gaming $

Slide 17

Slide 17 text

I can't ride a bike, apparently

Slide 18

Slide 18 text

How to prevent RSIs?

Slide 19

Slide 19 text

Workstation Ergonomics

Slide 20

Slide 20 text

Work hygiene ‣ take regular breaks ⏰ ‣ change your focus " ‣ drink plenty of water # ‣ pomodoro $

Slide 21

Slide 21 text

No content

Slide 22

Slide 22 text

There's no way you can touch-type on this with straight wrists

Slide 23

Slide 23 text

No content

Slide 24

Slide 24 text

No content

Slide 25

Slide 25 text

No content

Slide 26

Slide 26 text

No content

Slide 27

Slide 27 text

No content

Slide 28

Slide 28 text

No content

Slide 29

Slide 29 text

No content

Slide 30

Slide 30 text

No content

Slide 31

Slide 31 text

No content

Slide 32

Slide 32 text

No content

Slide 33

Slide 33 text

DVORAK COLEMAK WORKMAN IRST oh my...

Slide 34

Slide 34 text

"Using can be a conversation starter. You’ll get lots of nerd cred from the right people but plenty more weird looks from everyone else."

Slide 35

Slide 35 text

No content

Slide 36

Slide 36 text

How to learn a new keyboard layout? ‣ Accept that you'll be horribly slow (at first) ‣ Set aside time for short, regular practice sessions ‣ Never look down at the keyboard ‣ Go slow, aim for a high-accuracy

Slide 37

Slide 37 text

Ambient vs Deliberate practice "I've driven my car everyday for years, how come I'm not as good as a professional race car driver yet?"

Slide 38

Slide 38 text

Deliberate practice ‣ Learn where the keys are1 ‣ Practice the most common words ‣ Practice the most common bigrams (th, he, in, er, an, ...)2 ‣ Practice typing text3 ‣ Delete whole words when making mistakes (⌥ + ⌫) 3 monkeytype.com 2 ngram-type 1 keybr.com

Slide 39

Slide 39 text

Words are effortlessly flowing from my fingertips, now what?

Slide 40

Slide 40 text

Shortcuts ⌘

Slide 41

Slide 41 text

But there's soooo many of them! And no way to use the same shortcuts across all apps

Slide 42

Slide 42 text

What if I told you...

Slide 43

Slide 43 text

...you can

Slide 44

Slide 44 text

The programs Andrew4 (and I) use ‣ Karabiner-Elements to remap keys on a Mac ‣ Goku to configure Karabiner using JSON files ‣ Hammerspoon, a Mac automation tool (think macros) 4 Tighten blog: How to train your keyboard

Slide 45

Slide 45 text

"Hyper" and "Meh" keys ‣ Hyper: ⌃+⌥+⇧+⌘ ‣ Meh: ⌃+⌥+⇧

Slide 46

Slide 46 text

Actions you can use your Hyper key for... ‣ Hyper + S → Open Slack ‣ Hyper + E → Open code editor ‣ Hyper + K → Open my console ‣ Hyper + B → Open Browser ‣ Hyper + P → Open command palette ‣ ...

Slide 47

Slide 47 text

Aliases

Slide 48

Slide 48 text

"If I create aliases for commands, I will forget what the real commands are " — Me in 2010

Slide 49

Slide 49 text

Spoiler alert You wont...

Slide 50

Slide 50 text

Snippets

Slide 51

Slide 51 text

CONCLUSION

Slide 52

Slide 52 text

Links and Resources (keyboard layouts) ‣ Keyboard usage Heatmap https://www.patrick-wied.at/projects/heatmap-keyboard/ ‣ List of split ergonomic keyboards https://github.com/diimdeep/awesome-split-keyboards ‣ Colemak Mod-DH homepage http://colemakmods.github.io/mod-dh/ ‣ Miryoku, the Colemak layer system I use https://github.com/manna-harbour/miryoku

Slide 53

Slide 53 text

Links and Resources (touch-typing training) ‣ Keybr: to incrementally learn the key placements https://www.keybr.com ‣ N-gram type: practice typing the top n-grams https://ranelpadon.github.io/ngram-type/ ‣ Monkeytype: practice whole words and get cool stats about your typing https://monkeytype.com ‣ Typeracer: if you ever want to race your friends https://play.typeracer.com

Slide 54

Slide 54 text

Links and Resources (shortcuts and automation) ‣ Tighten Blog: How to train your keyboard https://tighten.com/blog/how-to-train-your-keyboard/ ‣ Home row modifiers https://precondition.github.io/home-row-mods ‣ A useful Caps-lock key https://brettterpstra.com/2017/06/15/a-hyper-key-with-karabiner-elements-full- instructions/ ‣ Karabiner-Elements https://karabiner-elements.pqrs.org

Slide 55

Slide 55 text

Links and Resources (CLI tools) ‣ j: quickly navigate directories on the command line https://github.com/wting/autojump ‣ bat: a cate clone with syntax highlighting and git support https://github.com/sharkdp/bat ‣ fzf: a fuzzy finder https://github.com/junegunn/fzf ‣ tldr: it's like man distilled to only what you want https://github.com/tldr-pages/tldr ‣ zsh-autosuggestions and zsh-completions so fish users will stop laughing at you https://github.com/zsh-users/zsh-autosuggestions https://github.com/zsh-users/zsh-completions

Slide 56

Slide 56 text

Links and Resources (Other) ‣ "Voice Driven Development: Who needs a keyboard anyway?" by Emily Shea https://www.youtube.com/watch?v=YKuRkGkf5HU ‣ Computer Related Repetitive Strain Injury http://rsi.unl.edu ‣ Vimium: vim bindings in your browser http://vimium.github.io ‣ Alfred: Spotlight on steroids, with workflows for many apps https://www.alfredapp.com

Slide 57

Slide 57 text

Thank you