BT

Presentation: The Ethics of Error Prevention

by David West on Mar 20, 2009 |

No one wants programming errors. We have many tools to detect and correct errors in code. We also have a number of techniques we can use to prevent the introduction of errors. In this presentation, Michael Feathers looks at error prevention while posing a number of interesting questions.

Watch: The Ethics of Error Prevention (56 min.)

Michael starts his presentation noting that we are very aware of the need for error prevention and most of us are aware of several techniques to achieve this goal. But do we practice these techniques, and if so how many of them, and why or why not? If we fail to practice these techniques are we less than professional? Are we unethical practitioners?

Five "Good Ideas" are introduced and discussed:

  • Abstraction
  • Design by Contract
  • Clean Room Engineering
  • Test Driven Development
  • Pair Programming / Software Inspection

Each idea is examined and the manner in which it helps prevent errors is explored. He also discusses the advantages and disadvantages of each idea. For example: an advantage of contracts and test driven techniques is automation, an advantage not shared by software inspections.

In the last part of his talk, Michael suggests that all of these ideas share a common purpose - to make us reflect on our code, to actually think about what it does and why. Not only does this reflection help prevent errors, it also motivates us to write better code - code that is simpler, easier to read, properly refactored, and better designed.

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Dowloadable version? by Brad Bruce

Is there a downloadable version of this presentation? My company doesn't allow streaming video. I have a team of about 10 developers who SO need to watch this!!!

Re: Dowloadable version? by Dmitry Tsygankov

Not sure if it's legal, but you can:
- at home
- with Firefox
- and DownloadHelper extension
- click Play once, so that DownloadHelper can see the video (DownloadHelper doesn't seem to support infoq.com directly)
- then download it with DownloadHelper

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

2 Discuss

Educational Content

General Feedback
Bugs
Advertising
Editorial
InfoQ.com and all content copyright © 2006-2014 C4Media Inc. InfoQ.com hosted at Contegix, the best ISP we've ever worked with.
Privacy policy
BT