Workflow
These days I have been taking optimizing my work pretty seriously. One can only get as far with half-baked workflow.
I incorporate more keyboard shortcuts (ctrl+R
is ma fav), added git aliases to the .zshrc file and cleaned up branches
from previous PRs. Incidental github push of my messy local copy of the Node.js fork
was a strong incentive to clean it up
and reorganize some of the half written notes and
scrapbooking files.
I added a bash script to copy builds into a special directory that is
not under version
control and rename them accordingly to avoid overwriting. Node.js build
softlinks executables from /out/Release and /out/Debug, so that
they get overwritten with every build made off any branch.
Obvious thing, it seems, yet it takes a few re-builds and
“oh geee’s” to realize what is happening
.
I was using a homebrew installation of Node.js (aside from my local builds).
Following my mentor’s advice I switched to nvm
. I installed nvm
from homebrew, removed the few global packages previously installed via npm
(not the best
practice to go npm -g
with node packages) and used it
to re-instal npm
and current stable releases of Node.js versions.
nvm
puts its files in a .nvm/ folder in the home directory.
I did not build it from source, which contains a few utility files.
For the sake of convenience, I copied the nvm.sh
and bash_completion
from
nvm
and placed them
in .nvm/. It allows to load commands without a need for sourcing
and adds tab completion.
The benefit of using nvm
is to be able to install and easily switch
between different Node.js versions. In addition, one can run distinct
releases in different tabs, which is great for tests.
I cleaned my desk to have only my laptop and a notebook on it .
Clear space = clear mind, as the zen masters have been saying all along.
A major game-changer was getting in a habit of preparing a to-do list
at the end of my work for the day, so that I can jump start the following morning
by ticking things off of it (after my meditation and yoga practice, that is),
instead of trying to figure out tasks and their priorities. I find that I am
most productive when starting to code the moment I sit down at my computer.
You live and you learn– getting better each day and enjoying the process
.
Every day I get to do what I love most-
learn, solve problems and collaborate with extremely smart and talented people.
All that in a stunning and vibrant setting. So grateful!