What would a patterns & practices 2.0 look like to you? There's been a very lively discussion on just this topic on the ALT.NET list (For which I am the instigator). Below is the summary version. Go here if you dare to see the full thread and have hours and hours of free time.

Do.

  1. Guidance on core concepts and principles like OOP, separation of concerns, layering, etc
  2. Guidance on good software engineering and design practices, code quality, TDD, DDD, BDD, code smells, CI
  3. Patterns / Anti-patterns - GOF / Fowler, etc (Don't make up new ones)
  4. Tutorials / examples
  5. Be Neutral / Pragmatic
    1. Trusted advisor on different tools, techniques and methods i.e. Stored Procs vs Dynamic SQL
    2. Existing OS solutions (NHibernate, Log4Net, etc)
  6. Be Critical including of community efforts
  7. Advocate community endeavors
  8. Engage with the OSS community

Don't

  1. Focus on toolkits and factories
  2. Become an evangelism org / marketing machine for the platform. (Though it's okay to become an evangelism org for patterns and good engineering practices.)
  3. Be Dogmatic (our way is the only way, or even the best way)
  4. Dumb down developers

Now ALT.NET is only one small sampling of the customers who use our guidance. Do these views resonate with you?