- Excessive Coupling
- Inappropriately Clever Code
- Deferred Refactoring
- Premature Optimization
- Overuse of Virtual (C#) or Overridable (VB.NET)
- Overuse of Inheritance
- Premature Generalization
What's on your list?
Facilitating the Spread of Knowledge and Innovation in Professional Software Development
Write for InfoQLearn what's next in software from world-class leaders pushing the boundaries. Attend in-person or get video-only pass to recordings.
Discover new ideas and insights from senior practitioners driving change in software. Attend in-person.
Your monthly guide to all the topics, technologies and techniques that every professional needs to know about. Subscribe for free.
InfoQ Homepage News Seven Deadly Sins of Programming
Community comments
How about ...
by Cameron Purdy,
Failure to follow DRY principle ...
by Sammy Larbi,
How about ...
by Cameron Purdy,
Your message is awaiting moderation. Thank you for participating in the discussion.
Making non-virtual the default for methods in an OO language? ;-)
(It's probably the biggest design mistake in the C# language. Welcome to the 1980s and C-front, folks!)
Peace,
Cameron Purdy
Tangosol Coherence: The Java Data Grid
Failure to follow DRY principle ...
by Sammy Larbi,
Your message is awaiting moderation. Thank you for participating in the discussion.
Although, I guess that could come under "deferred refactoring," considering that not refactoring would be deferring it for infinite time.