A comprehensive talk about bringing Laravel's best practices and components to legacy PHP applications through incremental improvements rather than complete rewrites. The speaker discusses how to modernize existing codebases by gradually introducing modern PHP practices, Laravel components, and external services while maintaining operational stability.
An introduction to Domain-Driven Design (DDD) that focuses on the importance of communication between developers and domain experts. The speaker emphasizes that DDD is not about specific coding patterns but rather about understanding business domains, creating ubiquitous language, and establishing bounded contexts. He shares personal experiences working with legacy applications and explains how DDD principles can improve software development through better communication.
The speaker, primarily a Symfony developer, shares his journey into the Laravel community and presents Rector, a PHP upgrade automation tool. He demonstrates how Rector can help automate PHP version upgrades, improve code quality, and handle framework-specific upgrades. The talk focuses on practical examples of using Rector with Laravel projects, including automated type additions, dead code removal, and framework-specific upgrades.
Sam Greenwood presents a comprehensive talk on the importance of types and static analysis in PHP and Laravel applications. He discusses different types of typing systems, the benefits of static analysis tools like PHPStan, Psalm, and Larastan, and how these tools can help improve code quality and catch potential errors before runtime, especially in legacy applications.
The speaker discusses strategies for modernizing and refactoring legacy PHP applications. He covers the challenges of dealing with old, poorly structured codebases and presents a methodical approach to upgrading them using the 'strangler fig' pattern. The talk emphasizes the importance of securing buy-in, implementing code standards gradually, and carefully migrating functionality to new systems while maintaining business operations.