• Write the code
  • Agree on code if there are more than one person involved
  • Read the code
  • Modify the code
  • Execute the code on hardware
  • Debug the code

These are things developers actually do. They are costs. E.g. how much does the execution cost? How much time does it need on the customer’s computer to run? Besides, “execution”, the other costs are developer time which affects the customer. Therefore, we try to minify as most of the costs as possible.

Source: Where Does Bad Code Come From?