About these notes

Principles for software engineers and other makers


#TODO: link this!!

  • Don’t chase the shiny new toy. Focus on universal tools and principles. You can then apply these to a broad spectrum of use-cases. It saves you time, energy, effort and bandwidth.
  • Choose tools that will be here in 10 years. It’s a lot of wasted effort if you need to learn a new framework every year because you used a niche one that is now being abandoned.
  • The best tool is the tool that you can get the job done with. e.g. Being proficient in any single terminal emulator will make you 100x faster than being ok in the latest fastest GPU accelerated one.
  • For your chosen tools, invest in learning shortcuts, creating macros etc. Your efficiency will compound over time allowing you to produce multiple times the work of the amount of time you save.
  • Don’t reinvent the wheel. Use existing tools, as long as (a) it doesn’t kill the excitement of the project (b) spending time to learn the new tool will pay off (c) you’re not sacrificing understanding fundamental principles and techniques for the sake of “efficiency”.

← back

Links to this note

Aim for 0 to 1 improvements

Horizontal/extensive progress: Globalization. Taking an idea from 1 to n. Easier to imagine. Vertical progress: Technology. Taking an idea from 0 to 1. Hard to imagine, since it requires doing...