Want to build software that is more testable, easier to modify, and has fewer lines of code? Architecting with more immutable objects that are always in a valid state is the most important lesson I have learned in building better software applications. Using immutable value objects will lead to less checking, fewer bugs, and more DRY code, and will help avoid the “spooky action at a distance” problem in PHP. We will also learn how to use immutable objects and immutable collections to improve design of our mutable entities. Lastly, we’ll see how immutable objects and functional programming can reduce complexity.


Comments are closed.

Donald Tyler at 09:02 on 15 Nov 2018

I found the talk to be insightful. I've always been interested in immutability but struggled with how to deal with database entities. I guess I've always assumed it was an all or nothing prospect. Your distinction between value objects and entities really helped clarify that for me.

The presentation was easy to follow as well. I found your speaking style to be clear and not too fast. The slides were clear for the most part and not too cluttered. I'm not sure if the zooming in and out was a good thing or not. The effect was cool, but the motion was a bit distracting. Maybe instead of that, you might consider showing the overall code on an initial slide, then separate slides that focus on the part you wish to speak on? It's basically the same thing, but maybe the absence of the motion would help the viewers focus on what matters? Not that I'm an expert or anything... Just thinking out loud :)