Search This Blog

Showing posts with label Antipatterns. Show all posts
Showing posts with label Antipatterns. Show all posts

Tuesday, May 8, 2012

The Joys of Engineering Leadership

Check out this AWESOME video from Google I/O 2010

Google I/O 2010 - The Joys of Engineering Leadership
Featuring Brian Fitzpatrick and Ben Collins-Sussman

Double click to view in YouTube

Note - after you watch this - claim a full PMI Professional Development Unit!

Too many great points for prose - find outline below the break - note their use of the patterns / anti-patters lingo we covered a few days ago :)


Monday, April 30, 2012

Antipatterns

DJ Gregor at Nationwide introduced me to the term "Antipattern" a few years ago and I find myself seeing antipatterns everywhere I look.  From Wikipedia :
Click to buy on Amazon

!
"In software engineering, an anti-pattern (or antipattern) is a pattern that may be commonly used but is ineffective and/or counterproductive in practice."

The 1998 book "AntiPatterns: Refactoring Software, Architectures, and Projects in Crisis" (see Amazon link to the right) put the term on the map.  Now software engineers and architects understand the term and use it often.

Some easily understood examples of antipatterns include:
  • Golden Hammer:  Assuming that a favorite solution is universally applicable.
  • Not Invented Here Syndrome:  Failing to adopt an existing adequate solution. 
 Many antipatterns exist in the project management world.  Samples from the Wikipedia article include:

  • Avalanche: An inappropriate mashup of the Waterfall model and Agile Development techniques
  • Death march: Everyone knows that the project is going to be a disaster – except the CEO – so the truth is hidden to prevent immediate cancellation of the project - (although the CEO often knows and does it anyway to maximize profit). However, the truth remains hidden and the project is artificially kept alive until the Day Zero finally comes ("Big Bang"). Alternative definition: Employees are pressured to work late nights and weekends on a project with an unreasonable deadline.
  • Groupthink: During groupthink, members of the group avoid promoting viewpoints outside the comfort zone of consensus thinking
  • Overengineering: Spending resources making a project more robust and complex than is needed
  • Smoke and mirrors: Demonstrating unimplemented functions as if they were already implemented
  • Software bloat: Allowing successive versions of a system to demand ever more resources
I even found a book on Amazon that focuses on Project Management AntiPatterns