Three pillars of machine programming

  1. Logic-driven definition: What to do
  2. System-driven execution: How to do
  3. Data-driven optimization: Scale everything thru ruthless automation