One Rule to Rule Them All • Pragmatic Dave Thomas • GOTO 2023
Vložit
- čas přidán 16. 05. 2024
- This presentation was recorded at GOTO Chicago 2023. #GOTOcon #GOTOchgo
gotochgo.com
Dave Thomas - Author of The Pragmatic Programmer @pragdave
RESOURCES
pragdave.me
/ pragdave
github.com/pragdave
/ dave-thomas-53aa1057
ABSTRACT
As developers, we live under a constant barrage of helpful advice, often in the form of rules with cute names. We're told how to design, how to code, how to deploy, how to monitor: there are systems and rules for everything. How can we keep up? How can we know what's good advice, and what's bad?
Over time I've come to realize that just about every good piece of advice is actually a special case of something both more general and simpler. So, let me introduce you to the "one rule to rule them all." [...]
TIMECODES
00:00 Intro
02:46 Back to the 1990s
03:49 Classic waterfall
05:22 Theorem proving
06:17 100% test coverage
07:53 "Correct code"
11:53 Dave's postulate No. 1
12:44 Change
16:01 Manifesto for Agile Software Development
20:22 Agile is Dead • Agile is Dead • Pragma...
25:14 Easy to change
26:13 How?
34:28 Dave's postulate No. 2
33:57 Building intuition
35:09 Conscious & subconscious
42:21 Experience
46:22 Handwrite on paper
49:07 Make it easier to change
49:36 Outro
Download slides and read the full abstract here:
gotochgo.com/2023/sessions/2525
RECOMMENDED BOOKS
Dave Thomas & Andy Hunt • The Pragmatic Programmer • bookshop.org/a/9452/978013595...
Dave Thomas & Andy Hunt • The Pragmatic Programmer • amzn.to/3N3i0GP
Dave Thomas • Programming Elixir • amzn.to/3Dl6fY7
Dave Thomas & Sam Ruby • Agile Web Development with Rails 7 • amzn.to/3TuWuxj
Daniel Kahneman • Thinking, Fast and Slow • amzn.to/2XmJEtf
W. Timothy Gallwey • The Inner Game of Tennis • amzn.to/3pjol9M
/ gotocon
/ goto-
/ goto_con
/ gotoconferences
#Agility #AgileIsDead #TypeSystems #Intuition #Programming #PragmaticProgrammer #SoftwareEngineering #SoftwareDevelopment #DaveThomas #PragmaticDave
Looking for a unique learning experience?
Attend the next GOTO conference near you! Get your ticket at gotopia.tech
Sign up for updates and specials at gotopia.tech/newsletter
SUBSCRIBE TO OUR CHANNEL - new videos posted almost daily.
czcams.com/users/GotoConf... - Věda a technologie
7:23 related: when your tests break very often, it's because you've been following the London school of unit testing, not the Chicago school.
Sure, tests will still break when requirements change. But when you unit test solely against the use cases from the domain model, then tests breaking is much more seldom.
Great talk as usual from Dave. This one is a particularly interesting series of points which is a better summary of what Kent Beck was saying and some other things. There are so many juniors looking for a reference book like Clean Code or "show me a project with good code I can study" and I've always said the ultimate judge is change. This idea itself coming from someone else that I can't remember. This talk from Dave seems like a better video to share.
Best GOTO Conference to this day
Great talk, especially about the brain stuff! I go to volleyball games, in the front row, and at least once a game a ball comes screaming towards my seat. I noticed years ago that I don't see the ball coming, I see that my hand has already moved to block it. Dozens of times every game a ball takes a slow high arc into the crowd, and often bangs someone on the head who had all the time in the world to see it coming. With software, I work with people who must get banged in the head.
Great insight!
No need for training on or certification in Agile - "Understand the Agile values and then apply them" - Dave Thomas
Somehow I am reminded of my ancient philosophy professor, Eric Lewis, suggesting that an interesting way to understand Plato's _Meno_ (which discusses "Can virtue be taught?") is not that the text is inconclusive (as it would be if you read it literally) but instead shows how one can *embody* virtue, and hence "teach it that way". Consequently, Dave might want to encourage us to "learn agile" not by finding some coach to pay $(large_amount) to, but instead to attempt to exemplify it by absorbing (so to say) the exemplifications of others.
39:00 living in Japan for 6mo while not knowing how to read Japanese was amazingly relaxing, probably partly for this reason.
Old school is my way. Structured Analysis and Design and Programming
A company I once worked for built a brand new certified green building. To do this, they had to put in fewer bathrooms and make the paper towel dispenser dispense one small sheet at a time. I'm glad I never had to spend much time in that building. (Just a side note after watching the first few minutes of this video.)
Interesting. Uncle Bob advocates for automated tests and 100% test coverage and his name is also on the Manifesto for agile software development.
Also, he says "oh and don't test the UI". I think his perspective stopped at projects where you don't use frameworks, libraries and 3rd party software.
At about 12:50 Dave states "there is no such thing as correct code" and then says (paraphrasing) "Why? Because things change, and what _was_ correct is no longer correct." So you mean that it was correct? So if that's true then the postulate is wrong. Just because the code will change in the future doesn't mean it's not correct for the time being.
Let's be honest with the words we speak please. I mean I love Dave but come on...