“Do, or do not. There is no try.”

A lot of this chapter is conversation-based, which really cannot be summarized effectively.

The author starts the chapter with an anecdote about a failed launch pushed by management that was too stubborn to listen to issues while making the product. The product was unusable and shut down after only a few hours. Who is responsible for this disaster? The owner who pushed the dev team and imposed the date without listening? Or the dev team for not saying “No”?

**Professionals speak truth to power. Professionals have the courage to say no to their managers.

Adversarial Roles

Managers have a job to do: to pursue and defend their objectives as aggressively as they can.

Programmers also have a job to do: to pursue and defend their objectives as aggressively as they can.

Getting the best outcome from this relationship is possible only if both parties defend their objectives and negotiate.

The author then gives a few examples of a confrontation:

  • One where neither party is professional,
  • One where only one party is professional,
  • And finally, one where both parties act professionally.

Being a Team Player

Being a team player is about playing your best in your role while also supporting your teammates. It is not about saying yes all the time.

The author circles back to the idea that “there is no try.” Sometimes, “trying” is used as in “Put more effort into X,” which only applies if there was some effort in reserve. This constitutes a promise that you will probably not be able to fulfill.

The Cost of Saying Yes

Most of the time, team members want to say yes. But, as the author points out, to be in a position where you can say “Yes,” you must also not be afraid to say “No.”

He then shares an article by John Blanco, “Is Good Code Impossible?”http://raptureinvenice.com/is-good-code-impossible/