Learn go programming language by reimplementing your everyday tools