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

  Рет қаралды 24,998

Domain-Driven Design Europe

Domain-Driven Design Europe

6 ай бұрын

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.

Пікірлер: 26
@marcusradell7544
@marcusradell7544 4 ай бұрын
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 😄
@kdiggity1
@kdiggity1 5 ай бұрын
Another brilliant talk from the legend.
@MarcusHammarberg
@MarcusHammarberg 2 ай бұрын
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 3 ай бұрын
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 6 ай бұрын
What a wonderful talk! Thanks Kent Beck! 🤩
@brettdelia
@brettdelia 4 ай бұрын
Great talk. Looking forward to the books. Loved the Powell's Book store shoutout!!
@stephendgreen1502
@stephendgreen1502 6 ай бұрын
Best talk on software design I’ve seen
@maverickmusic101
@maverickmusic101 5 ай бұрын
Great talk, thanks
@jimmyhirr5773
@jimmyhirr5773 3 ай бұрын
The definition of "cohesion" here sounds just like Meilir Page-Jones's definition of "connascence." It's even characterized by strength, locality, and degree.
@maximandreev593
@maximandreev593 6 ай бұрын
I liked the highlight that coupling/cohesion are respective to changes.
@PhilipNee
@PhilipNee 3 ай бұрын
learned immensely.
@aaronzhong
@aaronzhong 5 ай бұрын
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 5 ай бұрын
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 3 ай бұрын
"Why are we still storing our code in files/directories?" Because Code Bubbles (Andrew Bragdon's project, not the unrelated startup) never caught on.
@bartholomewtott3812
@bartholomewtott3812 4 ай бұрын
I can't find this definition of coupling in structured design
@lars4953
@lars4953 5 ай бұрын
"Im glad I made it" lol...
@davidglaubman6341
@davidglaubman6341 6 ай бұрын
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 6 ай бұрын
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.
@bartholomewtott3812
@bartholomewtott3812 4 ай бұрын
I can't find Kent's definition of coupling and cohesion in structured design.
@antesmolcic4354
@antesmolcic4354 5 ай бұрын
Easily watched at 1.25 speed :)
@AAZinvicto
@AAZinvicto 26 күн бұрын
For me it was 1.5
@prathykt
@prathykt 6 ай бұрын
He should be writing the 3rd book first because that is what helps in identifying what changes come in.
@bonsairobo
@bonsairobo 6 ай бұрын
"Why are we still putting source code in files?" "Compared to what?"
@encapsulatio
@encapsulatio 6 ай бұрын
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 6 ай бұрын
@@encapsulatio Are you referring to "image-based persistence"?
@igo_rs
@igo_rs 5 ай бұрын
Boring. Lifecoaching becomes a valid excuse when there is no engineering.
Continued Learning: The Beauty of Maintenance - Kent Beck - DDD Europe 2020
55:36
Domain-Driven Design Europe
Рет қаралды 32 М.
Help Herobrine Escape From Spike
00:28
Garri Creative
Рет қаралды 56 МЛН
The State of Software Engineering 🔨 - with Kent Beck
1:00:11
Refactoring
Рет қаралды 3,8 М.
Balancing Coupling in Software Design - Vlad Khononov - DDD Europe 2023
50:43
Domain-Driven Design Europe
Рет қаралды 7 М.
A Philosophy of Software Design | John Ousterhout | Talks at Google
1:01:40
Bounded Contexts - Eric Evans - DDD Europe 2020
34:02
Domain-Driven Design Europe
Рет қаралды 73 М.
Tidy First? Kent Beck on Refactoring
46:20
InfoQ
Рет қаралды 7 М.
🚀  TDD, Where Did It All Go Wrong (Ian Cooper)
1:03:55
DevTernity Conference
Рет қаралды 544 М.
3X Explore, Expand, Extract • Kent Beck • YOW! 2018
53:00
GOTO Conferences
Рет қаралды 10 М.
DDD By Example - Paul Rayner - DDD Europe 2020
54:58
Domain-Driven Design Europe
Рет қаралды 47 М.
Technical debt isn't technical - Einar Høst - DDD Europe 2019
47:37
Domain-Driven Design Europe
Рет қаралды 9 М.
Распаковка айфона в воде😱 #shorts
0:25
НЭКС
Рет қаралды 1,1 МЛН
🔥Новый ЛИДЕР РЫНКА СМАРТФОНОВ🤩
0:33
Компьютерная мышь за 50 рублей
0:28
dizzi
Рет қаралды 1,2 МЛН
All New Atlas | Boston Dynamics
0:40
Boston Dynamics
Рет қаралды 5 МЛН