Locality of behavior and cohesion are excellent principles for designing good software. One crucial point to note is that cohesion and separation of concerns are not necessarily opposites.
@unclebobmartin Can you elaborate a little more? I do define the loop: clear end-state criteria for the agent, and the work isn’t considered complete until they’re met. But it still takes some guidance and a few iterations to get there.
🚀 Chez Alex -> AI Roundtable #4
Join us this Friday, February 20th for a deep dive into:
The Role of AI in Software Engineering
A focused, interactive discussion with fellow engineers, architects, and tech leaders exploring how AI is changing the way we build software.
Start without a predefined API. Focus on the goal—what should happen in a given situation? Define the outcome, then create only the necessary API. This ensures clarity and purpose. For TDD, goals become behaviors, turned into tests, with API evolving along the way. Sometimes, I skip tests initially for a simpler design. How do you approach design?
#softwaredesign #TDD #cleancode
Agile isn’t about rigid rituals; it’s about adaptability. Embrace values, not just practices. Tailor your process, focus on delivering value, and keep improving. Agile is about flexibility—make it work for you.
#Agile#Adaptability
It's not just about cleaning up the mess - refactoring is a disciplined way to improve with our growing knowledge of the situation.
Sometimes, yes, it is about cleaning up the mess. 😀
@unclebobmartin These are the days of trends. Enough number of people raise valid concerns and we get gazillion people with baseless concerns.
Enough people praise someone for right reasons and.....
Should parameters be ordered by their importance/ necessity for functionality? If the order changes, it indicates a shift in the central role to a different object. Similar to single dispatch, there's always an object that is most important because it holds and orchestrates the rules.