The Hidden Architecture of the Domain


Comments are closed.

Riley Major at 14:53 on 4 Mar 2016

The overview of the SOLID principles was brisk and without justification. If you're presuming the audience doesn't know SOLID, then rather than merely deliver the maxims, why not also explain their context and benefits, contrasting them with the alternatives. You had plenty of spare time in the talk.

You also shared "The Clean Architecture" diagram without (initially) explaining why it was clean, or superior to other architectures. Toward the end you mentioned better testing and framework independence, but I think you would be more persuasive exploring those advantages before the big reveal.

I wasn't a fan of the deadpan setup where you said we shouldn't be doing things a certain way, only to turn around and admit that it was mostly fine. You hadn't given us enough background to recognize the defect yet.

Thanks for taking the time to present.

Ben Ramsey at 15:33 on 4 Mar 2016

I think Riley makes some good points in his critique. Perhaps some restructuring of the talk to explain the advantages up front and then more in-depth discussion of each SOLID principle would help lead into the "clean architecture" discussion and provide a stronger argument. The information provided and the refactoring example were great. I'd love to see more examples and maybe some domain modeling/architecture exercises. Thanks!

There are a lot of resources out there that cover clean coding, good architecture, etc., so I'll echo Ben in that the practical example(s) of how to refactor were probably the greatest source of value in the talk. Woody made his case and did a good job of giving the audience a good starting point in the event they agree with him, while not spending too much time preaching. There is always room for improvement, but aside from finishing a little early I wouldn't have guessed this was a debut talk. Good job all around.

Becky at 17:56 on 4 Mar 2016

I would have benefited from a little more explanation. My biggest take-away was that I can use my user stories to create tests. I've never done TDD but have always wanted to. That tip will help me.

In conjunction with other talks about microservices, the longevities of apis, and the options available for classes, interfaces, and traits, this talk provided code examples along with theory (clean) for amending the practices of the semi-pro php coder and taking them to the professional level. It is natural that some of the changes is my own coding remain mysterious to me, however in testing i will know when i've succeeded. For the amatuer the talk may remain obscure, and for the professional trivial, but to bridge the gap is a difficult and instructive step.

Jansen Price at 07:14 on 5 Mar 2016

Thanks for being brave and getting up in front of a bunch of people.

I can tell you have a well of opinions and experience and that is awesome. I have to say I didn't get the connection between the SOLID principles and the rest of your talk. I would recommend stringing the principles throughout the talk to hit home each point with the examples of explaining the clean architecture. Also, more examples.

Also, it was kind of hard to hear you because of the lapel mic.

Jed Anderson at 12:02 on 7 Mar 2016

I think there is a lot of good content in your talk, but it didn't shine through. I suggest:

* More diagrams to help you convey the story you were trying to tell.
* Inject callback slides to the domain diagram you kept flipping back to in order to allow you to flow smoothly through your deck.
* Make sure your mic is loud enough so that everybody can hear you all of the time

I thought this was a good session about architecture. It was obvious that Woody understood the material very well. I think it would be valuable for the next time this talk is given to spend more time on the domain model in general. I feel like I could see and make connections during the talk, but after a day, the details got fuzzy. Admittedly, I am probably less advanced of a developer than the target audience for this presentation.