A Daily Practice of Empirical Software Design - Kent Beck - DDD Europe 2023

แชร์
ฝัง
  • เผยแพร่เมื่อ 17 ต.ค. 2023
  • Domain-Driven Design Europe 2023
    dddeurope.com - / ddd_eu - newsletter.dddeurope.com/ / domain-driven-design-e...
    Organised by Aardling (aardling.eu/)
    The economic rationale for software design is increased revenue & decreased cost. The relationship rationale for software design is to encourage trust through a steady delivery of value. The humane rationale for software design is to care for & encourage the growth of the geeks working on the software &, by extension, care for & encourage the growth of those affected by geeky decisions.
    A short list of principles & observations serves to explain why satisfying all these rationales is difficult--coupling & cohesion, time value versus optionality, power laws. The same list suggests a way forward for software designers in a complicated, conflicted, uncertain, & deeply human world--large changes in small, safe steps.
    We'll start with a 10x/day situation--you need to change some messy code. Do you tidy first? (Spoiler: likely yes, only as much as you need for now.)
    About Kent Beck:
    Kent consistently challenges software engineering dogma, promoting ideas like patterns, test-driven development, and Extreme Programming. Currently affiliated with Three Rivers Institute and Gusto, he is the author of many Addison-Wesley titles.
  • วิทยาศาสตร์และเทคโนโลยี

ความคิดเห็น • 27

  • @marcusradell7544
    @marcusradell7544 6 หลายเดือนก่อน +5

    One of the best talks I've ever listened to. The description of coupling and cohesion was Correct, Understandable, and Terse. Sometimes you can get all three 😄

  • @MarcusHammarberg
    @MarcusHammarberg 4 หลายเดือนก่อน +6

    Goodness from start to end. Such much to unpack here.
    Also - looks and talks a bit like John Malkovich - never noticed that before.
    That's a movie I wanna see - Being Kent Beck.

  • @TSD0416
    @TSD0416 4 หลายเดือนก่อน

    Thank you so much for uploading this talk. Excellent talk and thank you Mr Beck for sharing your experience, knowledge and insights with us Geeks in the world ❤🙏

  • @gabrielemastrapasqua2939
    @gabrielemastrapasqua2939 7 หลายเดือนก่อน +3

    What a wonderful talk! Thanks Kent Beck! 🤩

  • @kdiggity1
    @kdiggity1 6 หลายเดือนก่อน +2

    Another brilliant talk from the legend.

  • @brettdelia
    @brettdelia 6 หลายเดือนก่อน +1

    Great talk. Looking forward to the books. Loved the Powell's Book store shoutout!!

  • @stephendgreen1502
    @stephendgreen1502 7 หลายเดือนก่อน +8

    Best talk on software design I’ve seen

  • @maverickmusic101
    @maverickmusic101 6 หลายเดือนก่อน +1

    Great talk, thanks

  • @maximandreev593
    @maximandreev593 7 หลายเดือนก่อน +6

    I liked the highlight that coupling/cohesion are respective to changes.

  • @PhilipNee
    @PhilipNee 4 หลายเดือนก่อน

    learned immensely.

  • @jimmyhirr5773
    @jimmyhirr5773 4 หลายเดือนก่อน +2

    The definition of "cohesion" here sounds just like Meilir Page-Jones's definition of "connascence." It's even characterized by strength, locality, and degree.

  • @aaronzhong
    @aaronzhong 7 หลายเดือนก่อน +2

    Great talk, looking forward to the books! Separating the behavioural and structural changes feels like another way to look at TDD in the green and refactor cycles, or possibly even an iteration on the TDD flow with red - refactor (tidying first) - green - refactor?

  • @FlaviusAspra
    @FlaviusAspra 7 หลายเดือนก่อน +1

    41:00 "lumpers and splitters".
    Ask the devs which type they are and their yoe and if they used to be the other type and at how many yoe they changed.
    Then you're able to tell what common developer wisdom is.

  • @jimmyhirr5773
    @jimmyhirr5773 4 หลายเดือนก่อน

    "Why are we still storing our code in files/directories?" Because Code Bubbles (Andrew Bragdon's project, not the unrelated startup) never caught on.

  • @bonsairobo
    @bonsairobo 7 หลายเดือนก่อน +2

    "Why are we still putting source code in files?"
    "Compared to what?"

    • @encapsulatio
      @encapsulatio 7 หลายเดือนก่อน +2

      He is one of the lucky influential people in software development domain who programmed in Smalltalk in his early career and of course he's going to make inside jokes that only other people who know what Smalltalk could do 30-40 years ago is still space age technology compared to keeping source code as text files like we still do today.

    • @bonsairobo
      @bonsairobo 7 หลายเดือนก่อน

      @@encapsulatio Are you referring to "image-based persistence"?

  • @davidglaubman6341
    @davidglaubman6341 7 หลายเดือนก่อน +4

    A beautiful talk.
    I have one question (nitpick?). Since coupling is defined wrt a delta, and cohesion is defined as an entity A whose components are coupled, it seems to me no easy thing to determine if A is cohesive since the space of possible changes is so large. Maybe this doesn’t matter in practice since the idea is to reduce cost of coupling by moving coupled components closer together (increasing cohesion)?
    Also you ask why we keep code in files - what is better alternative?

    • @KentLBeck
      @KentLBeck 7 หลายเดือนก่อน +9

      Cohesion should also be defined wrt a particular change (or set of changes).
      Better than files of text in hierarchical directories would be a native AST store. We had this in Smalltalk way back when and it was glorious.

  • @lars4953
    @lars4953 7 หลายเดือนก่อน +1

    "Im glad I made it" lol...

  • @bartholomewtott3812
    @bartholomewtott3812 5 หลายเดือนก่อน +1

    I can't find this definition of coupling in structured design

  • @bartholomewtott3812
    @bartholomewtott3812 5 หลายเดือนก่อน

    I can't find Kent's definition of coupling and cohesion in structured design.

  • @antesmolcic4354
    @antesmolcic4354 6 หลายเดือนก่อน +3

    Easily watched at 1.25 speed :)

    • @AAZinvicto
      @AAZinvicto 2 หลายเดือนก่อน

      For me it was 1.5

    • @mlntdrv
      @mlntdrv 16 วันที่ผ่านมา

      I am a bit of a genius myself as well.

  • @prathykt
    @prathykt 7 หลายเดือนก่อน

    He should be writing the 3rd book first because that is what helps in identifying what changes come in.

  • @igo_rs
    @igo_rs 6 หลายเดือนก่อน +1

    Boring. Lifecoaching becomes a valid excuse when there is no engineering.