tmux and tmuxinator give you the ability to start the project and all necessary services you need in a second. I found it very useful especially when I need to restart all processes when working on a feature which depends on background jobs (to make binding.pry work, for example).

Some time ago I started keeping a inbox.md file for each project. This gives me a space to:

  • Plan 3 things I want to do
  • Keep a checklist
  • Throw in rough notes / ideas
  • Keep notes for a feature I’m working on
  - varia:
      panes:
        - nvim -O ~/dotfiles/zshrc ~/Projects/lolyglot/inbox.md ~/Documents/inbox.md ~/Documents/ajti_crawl_ideas.md

See it in more context:

name: lolyglot
root: ~/Projects/lolyglot

pre: rvm use 2.2.2

pre_window: rvm use 2.2.2 && rvm gemset use lolyglot

windows:
  - dev:
      panes:
      - kill $(lsof -ti :5000) && && nvim
  - main:
      panes:
      - foreman start
      - npm start
      - nvm use 4.5.0 && ember s --proxy http://localhost:5000
      - redis-server
  - varia:
      panes:
        - nvim -O ~/dotfiles/zshrc ~/Projects/lolyglot/inbox.md ~/Documents/inbox.md ~/Documents/ajti_crawl_ideas.md

This protip has been written in 899 seconds