Laracon DB
Laracon DB
Adam Wathan Adam Wathan
Has spoken at:
And has done the following talks:
Chasing "Perfect" (2015)

In this talk titled 'Chasing Perfect', Adam Wathan discusses how to improve code quality by focusing on fundamental object-oriented design principles rather than chasing complex architectural patterns. He demonstrates this through a practical example of implementing a coupon discount system, showing how to iteratively refactor the code to be cleaner and more maintainable using techniques like polymorphism and the null object pattern.

Test Driven Laravel (2016, 2019)

Adam Wathan presents a detailed walkthrough of test-driven development (TDD) in Laravel, demonstrating how to build features from scratch using both acceptance tests and unit tests. He builds a Twitter clone called 'Tweeter' and shows how to implement features like viewing user profiles and sending follower notification emails, while explaining best practices around using mocks, spies, and fakes in testing.

Curing the Common Loop (2016)

Adam Wathan presents a talk on improving code quality by eliminating loops, conditionals, and temporary variables using Laravel Collections and functional programming concepts. He demonstrates how to refactor complex nested loops into cleaner collection pipelines using methods like map, filter, flatMap, and contains. The talk includes practical examples ranging from data transformation to simple conditional checks, showing how collections can make code more expressive and maintainable.

Cruddy by Design (2017)

Adam Wathan presents strategies for simplifying Laravel controllers by following the 'Never Write Custom Actions' (NWCA) rule. He demonstrates how to break down large controllers with many custom actions into smaller, more focused controllers that only use standard CRUD/REST actions. Through examples from a podcast management application, he shows how to model seemingly custom operations as standard resource actions by thinking creatively about your domain models and resources.

Resisting Complexity (2018)

In this talk, Adam Lavin discusses a common misunderstanding about object-oriented programming, specifically how methods should be thought of as affordances (properties that tell you what you can do with an object) rather than abilities. He demonstrates how this shift in thinking leads to cleaner, more maintainable code through real-world examples from his course platform, including how to eliminate agent nouns, break up God objects, and when to use simple functions instead of classes.

Tailwind CSS Best Practice Patterns (2019)

Adam Wathan presents a comprehensive overview of Tailwind CSS, a utility-first CSS framework. He demonstrates how to effectively use Tailwind's utility classes, explains best practices for component extraction, and shows how to handle animations and responsive design. The talk includes practical examples of extending the framework and optimizing file size using PurgeCSS.

Designing a Component Library (2024)

Adam Wathan shares insights and techniques from his experience building component libraries, focusing on flexible and maintainable approaches using CSS and Tailwind. He demonstrates patterns for handling responsive layouts, touch targets, and complex styling challenges without relying on excessive JavaScript or props.

Modern CSS with Tailwind (2021)
No video available
Test-Driven Laravel (2017)
No video available
Advanced Vue Component Design (2018)
No video available