home.social

#evolutionarydesign — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #evolutionarydesign, aggregated by home.social.

fetched live
  1. When one part of a function is not changing while you're repeatedly changing another part, this is a signal to consider breaking that function into two pieces: the stable part and the unstable part.

    This isn't a law, but merely a helpful guideline.

    #EvolutionaryDesign

  2. When one part of a function is not changing while you're repeatedly changing another part, this is a signal to consider breaking that function into two pieces: the stable part and the unstable part.

    This isn't a law, but merely a helpful guideline.

    #EvolutionaryDesign

  3. When I grow up, I (still) want to be like Theo! His creatures are becoming ever more complex, elegant & marvellous....

    youtube.com/watch?v=iWGlbpEZkN

    🔥🔥🔥

    #KineticArt #GenerativeArt #EvolutionaryDesign #Strandbeest

  4. When I grow up, I (still) want to be like Theo! His creatures are becoming ever more complex, elegant & marvellous....

    youtube.com/watch?v=iWGlbpEZkN

    🔥🔥🔥

    #KineticArt #GenerativeArt #EvolutionaryDesign #Strandbeest

  5. DevLog 009: Improve timeline scrubbing

    ... This passes the tests, and when I try it in the application, it works as intended.

    Are we done?

    rickardlindberg.me/writing/dev

    #python #evolutionarydesign

  6. The "Test Helper to Production Code" pipeline: one pattern.

    Custom assertions become comparison operators become summary values become domain concepts.

    #Lightweight #EvolutionaryDesign #refactoring #tdd

  7. The "Test Helper to Production Code" pipeline: one pattern.

    Custom assertions become comparison operators become summary values become domain concepts.

    #Lightweight #EvolutionaryDesign #refactoring #tdd

  8. #EvolutionaryDesign means you trust your ability to respond to change more than you trust your ability to predict the future.

    #Agile

  9. #EvolutionaryDesign means you trust your ability to respond to change more than you trust your ability to predict the future.

    #Agile

  10. #EvolutionaryDesign is a "good strategy" approach to design. Focus on the core, and only the core, of the problem first and then iterate. Attempting to anticipate all design issues upfront is "bad strategy".

  11. #EvolutionaryDesign is a "good strategy" approach to design. Focus on the core, and only the core, of the problem first and then iterate. Attempting to anticipate all design issues upfront is "bad strategy".

  12. We needed to extend a component with new behavior. Rather than trying to _think_ our way forward by designing something clever, we created a copy and added the new behavior there.

    Yes, copy and paste. Loads of duplication. Then we made the code work, with nested if-else blocks. Yucky, but it worked.

    THEN we went to town, doing mostly mindless #Refactoring. It was like the Gilded Rose #CodeKata, but in real life! #EvolutionaryDesign

  13. We needed to extend a component with new behavior. Rather than trying to _think_ our way forward by designing something clever, we created a copy and added the new behavior there.

    Yes, copy and paste. Loads of duplication. Then we made the code work, with nested if-else blocks. Yucky, but it worked.

    THEN we went to town, doing mostly mindless #Refactoring. It was like the Gilded Rose #CodeKata, but in real life! #EvolutionaryDesign

  14. @tonybyrne @davetron5000 Indeed. Thinking in labels (such as that) causes a new class of problems, which I've spent decades trying to avoid. :)

    One nice aspect of #EvolutionaryDesign involves growing increasingly comfortable with imperfection, such as unfamiliar code or two design approaches in the same code base.

  15. @tonybyrne @davetron5000 Indeed. Thinking in labels (such as that) causes a new class of problems, which I've spent decades trying to avoid. :)

    One nice aspect of #EvolutionaryDesign involves growing increasingly comfortable with imperfection, such as unfamiliar code or two design approaches in the same code base.

  16. #EvolutionaryDesign or #DesignUpfront? I believe it’s a bit of both as I always bring in my past experience and have some design in mind before I start to #tdd. I also evolve the design as I learn more about the domain and listen to what my tests are telling me.
    Here’s a 2007 discussion between Jim Coplien and Uncle Bob that prompted me to write this: youtu.be/KtHQGs3zFAM

  17. #EvolutionaryDesign or #DesignUpfront? I believe it’s a bit of both as I always bring in my past experience and have some design in mind before I start to #tdd. I also evolve the design as I learn more about the domain and listen to what my tests are telling me.
    Here’s a 2007 discussion between Jim Coplien and Uncle Bob that prompted me to write this: youtu.be/KtHQGs3zFAM

  18. Further to my recent discussion about #TestDoubles/ #MockObjects in design, I remember asking this question at a SoCraTes event in Rochegude, France:

    "Are method/function expectations an #OOP disease?"

    (Or something similar.)

    The short answer seemed to be this: it's quite OO, but maybe not a disease. In FP we sometimes contort ourselves to turn complicated custom workflows into straightforward function composition, and it's not always worth the effort.

    #lightweight #evolutionarydesign #tdd

  19. Further to my recent discussion about #TestDoubles/ #MockObjects in design, I remember asking this question at a SoCraTes event in Rochegude, France:

    "Are method/function expectations an #OOP disease?"

    (Or something similar.)

    The short answer seemed to be this: it's quite OO, but maybe not a disease. In FP we sometimes contort ourselves to turn complicated custom workflows into straightforward function composition, and it's not always worth the effort.

    #lightweight #evolutionarydesign #tdd

  20. Further to this idea, whose videos on "evolutionary design without #TestDoubles / #MockObjects" would you endorse? I mean you really like them. You found them compelling and convincing. They don't have to be free.

    #lightweight #EvolutionaryDesign #tdd

    mastodon.social/@jbrains/10943

  21. Further to this idea, whose videos on "evolutionary design without #TestDoubles / #MockObjects" would you endorse? I mean you really like them. You found them compelling and convincing. They don't have to be free.

    #lightweight #EvolutionaryDesign #tdd

    mastodon.social/@jbrains/10943