Compromise

Overview

Teaching: 20 min
Exercises: 0 min
Questions
  • How can I improve my project’s development processes without becoming overwhelmed?

  • Under what circumstances can I suspend best practices?

Objectives
  • Describe the concept of technical debt.

  • Discuss strategies for principled compromises in software development best practices.

Key Points

  • Technical debt must often be accrued to get a project off the ground, but must eventually be paid down for a project to grow.

  • Use rapid iterative development to bring a project up to a minimally viable standard.

  • Software engineering best practices are not a goal unto themselves, but means to an end.

  • Ensure the scientific core of your project is sound. Otherwise, fix bugs when they come along, and then get back to science.