Took me a while to figure some of these out. The goal I had was to achieve a quick flow state by using only the keyboard for my most common everyday tasks - programming, surfing, gaming, etc.

Caveats:

  • These are just preferences, you do you
  • Stay cautious of not spending too much time optimising
  • With the advent of AI, things may change very quickly from the time of this writing

OS

Omarchy (Arch Linux)

  • minimal, beautiful
  • can run Steam games

Keyboard

Needs to be

Code Editor

vim motions are arguably superior

  • Learn vim if you wanna gigachad
    • I like Lazyvim with some minimal config changes
    • Some additional effort needs to be put into learning how plugins are setup
    • Decent learning curve on how plugins are setup with lua - Can definitely get frustrating at times!
  • I used vscode with vim extension for ~yr
    • Easy middle ground if you dont want to fiddle with neovim plugins
    • vim extension not kept upto date
    • works fine if you are ok with occasionally having to use the mouse

Browsing

Brave with vimium, dark-reader

Keybindings

  • Learn tmux
  • Get a windows manager that can load predefined windows
    • I use WindowsButton + # : Goto window
      • 1 terminal
      • 2 browser
      • 3 slack
      • 4 misc
    • For apps:
      • Brave: Alt + # : Goto
      • tmux: ctrl + b + #
      • Neovim: + # using [harpoon](https://github.com/ThePrimeagen/harpoon)
    • Can reconfigure most things
  • Takes time to remember these hotkeys, but pays dividends

Using multiple machines

  • Stick to one OS if possible, Arch btw
  • Mac vs Linux
    • TODO: Remapping technique
    • TODO: Mac window manager
  • Setup dotfiles repo, one liner setup script that uses stow, etc.
  • Primarily use one editor

Credits

  • ThePrimeagen for productivity tips
  • DHH for Omarchy