This is a talk Eli White gave at Midwest PHP this year.
Best practices are important, but are they always the best for your situation? I spent years working on large software projects where best practices were crucial. Milestone planning, multiple code branching, 99.9% uptime requirements, heavy testing, deployment processes, etc. But I then blindly applied those to every project afterwards. In retrospect, that hurt many projects, especially in smaller companies or startups where speed of innovation was more important and downtime acceptable. In this session, learn from my experience and discover where cutting corners is not only acceptable, but better for the project. At the same time, learn which practices are crucial and should be used no matter what!