Talk in English - US at Longhorn PHP Conference 2023
Track Name:
Elm
Short URL: https://joind.in/talk/d8160
(QR-Code (opens in new window))
For many years now, a common pattern, at least in PHP, is to organize your classes and files by archetype. But as a project grows (and grows, and grows) you may find that you’re jumping all over the place to work on a single feature. In fact, you may even find it hard to locate or figure out where all the related pieces of your feature are at. In this presentation, I’ll show you the way forward with a pattern called co-location. And we find that as we apply these principles, we actually learn to think differently about our software and how it’s put together. And that can tend to make us better software engineers, which is a goal we all share!
Comments
Comments are closed.
My two favorite slides were the "organized by technical concern" and the "organized by use case" slides.
Also I feel like packagist / composer kinda self organize based on use case. Like maybe a good mental model would be to consider every use case as an independent composer package. Like you have a Note package that depends on a Note_Add package, etc
Content and slides are great.
Great talk, thanks! It’ll give me something to think about.
Great talk. Would be cool to see how one could refactor an existing app to locality of behavior. Of course, that may take too much time, but it would be helpful.
Big proponent of organizing by use case/capability/feature myself. Great talk, TJ!
I really enjoyed this. It is similar to what I have been doing in my design decisions already. Thank you for helping me understand that I am not necessarily incorrect in my designs. The only other comment would be to maybe make the text larger so the back of the room can see it when showing the code (or provide the repo link earlier in the talk). Would help a lot.
Great talk. I appreciated the two slides about organizing by technical concerns versus use cases.
I’ve run across similar structure & organization a decade ago in a company’s own homegrown framework (in the days before namespaces) so it’s an idea I’ve thought about a lot since then. It’s really great to have it crystalized more clearly than I’ve ever thought of it before.
This was a fun talk that explored the idea of breaking conventions with code organization that we normally just accept without even thinking about it. Thinking about how we organize files as us setting up boundaries is a great idea. Why not put things that work together... together? The comparison of how web pages used to be organized versus how frameworks like React have changed things for the better is the example that probably encapsulates the core of this talk the best. The takeaways from this presentation may be the driving force behind some paradigm shifts with code in the future. Great work, TJ!
Well argued, good examples. I like the idea, but I'm not sure how well it plays out in practice. Something I'd like to try when I can.
Good stuff
TJ is able to explain a highly abstract topic in clear, concise, and practical terms, using relatable examples that didn’t feel contrived. The diagrams and examples were great.