In the modern era, software is commonly delivered as a service: called web apps, or software-as-a-service. The twelve-factor app is a methodology for building software-as-a-service apps that:

  • Use declarative formats for setup automation, to minimize time and cost for new developers joining the project;
  • Have a clean contract with the underlying operating system, offering maximum portability between execution environments;
  • Are suitable for deployment on modern cloud platforms, obviating the need for servers and systems administration;
  • Minimize divergence between development and production, enabling continuous deployment for maximum agility;
  • And can scale up without significant changes to tooling, architecture, or development practices.

The twelve-factor methodology can be applied to apps written in any programming language, and which use any combination of backing services (database, queue, memory cache, etc).

Freebies

  • Mastering the Third Way of DevOps use the Toyota Kata for continuous improvement
  • Free DevOps Course much more detailed than what we can cover in the podcast
  • Products over Projects expand flow, feedback, and learning to the entire organization

Resources

  • Transcript
  • The 12 Factor App
  • My Review & Analysis on The DevOps Handbook
  • My Review & Analysis on Accelerate
  • Software Development in 3 Principles & 4 Metrics

Books

  • The DevOps Handbook by Gene Kim, Jez Humble, John Willis, Patrick Debois
  • Accelerate by Nicole Forsgren, Jez Humble, Gene Kim