A Talk with Two Titles


Daniel Janus

Why I cut my hair
or, Tweaking Your Workflow to Help You Learn a Language



Why I cut my hair

2 months sabbatical

Sabbatical checklist

Learn at least one new language every year.

– David Thomas & Andrew Hunt,
The Pragmatic Programmer

How to learn language X

  1. Have an interesting problem to solve
  2. Try using language X to solve it
  3. IF you made an error THEN fix; GOTO 2

My interesting problem

Rust is hard

So I keep notes

And sometimes I want to look back

So I made a small change to the workflow...



TAG="build-`date +%Y%m%d-%H%M%S`"
COMMIT_DESC="Build attempt `date`"

{ git stash push -k -u
  git stash apply
  git add -A
  git commit -m "$COMMIT_DESC"
  git tag -a -m "$COMMIT_DESC" "$TAG"
  git reset --hard HEAD^
  git stash pop
} >/dev/null

echo Created build tag: $TAG


And now I can revisit mistakes!

Thank you!