The second promise of The Programmer's Oath is:

The code that I produce will always be my best work. I will not knowingly allow code that is defective either in behavior or structure to accumulate.

What does this mean, and how are professional developers supposed to keep this promise in the presence of schedule pressure and deadlines?

As programmers, what is our role and responsibility in keeping the software systems we create safe, stable, and worthy?

Defects in behavior are visible and obvious to our users. Defects in structure are hidden from our users. Of the two, which is the most important? How should programmers prioritize them? What bad things happen when we get this priority wrong?

In this episode of Clean Code, Uncle Bob addresses these questions and discusses the moral and ethical elements of managing defects as a software professional.