What is Performance Driven Development and why aren't you doing it? - James Seconde

Learn how to adopt performance-driven development (PDD) and break free from the misconception that it's only for big projects. Discover the culture shift and tools needed to prioritize performance optimization from the start.

Key takeaways
  • Performance-driven development (PDD) is not widely adopted due to the misconception that it is only for big companies or complex projects.
  • PDD is not just about performance, but about creating a culture that prioritizes performance, performance testing, and performance optimization from the beginning of the project.
  • The cost of PDD is not just financial, but also includes the time and effort required to implement and maintain it.
  • PHP developers are particularly guilty of not adopting PDD due to the simplicity and speed of the language leading to a lack of understanding of performance optimization techniques.
  • Debugging and testing tools such as Xdebug, Tideways, and Blackfire can make a huge difference in identifying and fixing performance issues.
  • Performance testing should not be an afterthought, but part of the development process from the beginning.
  • Many developers are not aware of the importance of monitors and logs in performance optimization.
  • Having a strong culture of performance and prioritizing it from the beginning of a project is crucial for success.
  • E.g., at Laravel, they have a culture of performance and it is part of the core of the framework.
  • PDD can be used in any project, not just big ones, and it can bring significant benefits such as faster development, better testing, and improved code quality.
  • PDD is not a one-time thing, but an ongoing process that requires constant attention and optimization.
  • DevOps and performance engineering are not mutually exclusive, and PDD can help bridge the gap between the two.
  • Performance testing should be done not just in development, but also in production, and monitoring should be an ongoing process.
  • Many developers do not understand the importance of the underlying technology stack and how it affects performance.
  • Performance optimization should be a key consideration in the development process, not an afterthought.
  • PDD can be used to improve the performance of existing applications and systems.
  • PHP developers often ignore the performance aspect of their code, leading to slow applications and frustrated users.