Title: I recently realized that certain kinds of knowledge allow one to be significantly more productive when solving a large class of problems.<p>For example,<p>* Regular expressions for simple text processing.<p>* Parser combinators for parsing.<p>* Parser generators (esp. packrat variety) for parsing.<p>* The concept of fuzzing and property testing for testing code.<p>* Calculus for solving all sorts of problems.<p>* MCMC for solving a huge class of probability problems.<p>* Search algorithms for solving a variety of problems (e.g. all NP-hard problems, sudoku, HTNs, scheduling, planning).<p>* Gradient descent for solving a variety of optimization problems.<p>* Vector Space embedding as a conceptual tool for a variety of complex AI problems.<p>* Effect composition (Haskell&#x27;s IO or Scala&#x27;s ZIO) as an incredibly powerful paradigm for concurrency and parallelism.<p>What are some examples of 10x multipliers that come to your mind? Fundamental ideas without which you would be drastically less productive.
Upvote: