Learning from Big Public Software Failures | Kevlin Henney In The Engineering Room Ep. 6
In this episode of “The Engineering Room” Dave Farley chats with renowned author, speaker and expert software developer Kevlin Henney.
In fact "The one and only Kevlin Henney" - literally! He has a google-unique name: try it!
Kevlin is a member of the ACCU and IEEE Software Advisory Board.
Famous for works on Pattern-Oriented Software Architecture and Big Public Software Failures.
He has published several ‘anthology' books, including: "97 Things Every Programmer Should Know - Collective Wisdom from the Experts”
In their wide-ranging discussion they talk about:
• Why Kevlin Henney is famous for big public software failures!
• Software Engineering, mathematics and the interesting gap between formal programming and sloppy humans.
• Architecture, empiricism and three ideas for design.
• Coping with incomplete knowledge and making stuff that works in the real world.
• Confidence, certainty and loose-coupling.
• Learning from actual failure, not just simulation.
• Programming is deceptively easy to start, and gets complicated really quickly: Low Code is no exception.
_____________________________________________________
🚨 My "TDD & BDD: DESIGN THROUGH TESTING" Course is Available NOW! 🚨
Learn to write great tests, and how to use those tests to improve the design of your software: with step-by-step guidance and demos by Dave Farley, and practical exercises for you to learn TDD and BDD. Available to start now!
ENROL HERE 👉 bit.ly/3JB5smY
_____________________________________________________
📚 BOOKS:
📖 97 Things Every Programmer Should Know, Kevlin Henney ➡️ https://amzn.to/3kkhzdA
📖 97 Things Every Java Programmer Should Know, Kevlin Henney & Trisha Gee ➡️ https://amzn.to/3EZ2d7P
📖 Dave’s NEW BOOK "Modern Software Engineering" is now available here ➡️ https://amzn.to/3DwdwT3
📖 "Continuous Delivery Pipelines" by Dave Farley
paperback ➡️ https://amzn.to/3gIULlA
ebook version ➡️ https://leanpub.com/cd-pipelines
📖 The original, award-winning "Continuous Delivery" book by Dave Farley and Jez Humble ➡️ https://amzn.to/2WxRYmx
NOTE: If you click on one of the Amazon Affiliate links and buy the book, Continuous Delivery Ltd. will get a small fee for the recommendation with NO increase in cost to you.
-------------------------------------------------------------------------------------
🔗 LINKS:
Clean Coders Hate What Happens to Your Code When You Use These Enterprise Programming Tricks ➡️ https://youtu.be/FyCYva9DhsI
The SOLID Design Principles Deconstructed ➡️ https://youtu.be/tMW08JkFrBA
Six Impossible Things ➡️ https://youtu.be/YoaZzIZFErI
-------------------------------------------------------------------------------------
📧 JOIN CD MAIL LIST 📧
Keep up to date with the latest discussions, free "How To..." guides, events, online courses and exclusive offers. ➡️ https://bit.ly/MailListCD
-------------------------------------------------------------------------------------
SPONSORS:
Equal Experts is a product software development consultancy with a network of over 1,000 experienced technology consultants globally. They increase the pace of innovation by using modern software engineering practices that embrace Continuous Delivery, Security, and Operability from the outset ➡️ https://bit.ly/3ASy8n0
___________________________________________________
CHAPTERS:
00:00 Welcome
00:28 Introducing Kevlin Henney
02:25 Famous for Public Software Failures
06:20 Edge Cases & Error Paths
08:00 The Birth of Software Engineering - Margaret Hamilton
11:40 NATO Software Engineering Conference (Germany, 1968) - 50+ years on
15:40 Trade-Offs - Patterns are Not Universal
17:50 Design-Thinking & Empiricism
20:00 Programming is NOT Mathematics
23:10 "When I throw it, does it stick?" - simulation and the real world
24:00 The interesting gap between formal process and sloppy humans
27:20 Three Ideas for Design
31:20 Context is King
33:50 Beyond Metaphor
35:00 Interviewing Simon Singh and Fermat’s Last Theorem
36:00 Engineering is Pragmatic - "Just the stuff that works"
38:20 SpaceX & Learning from Failure
41:00 Assumptions - the Pros and Cons of Prior Knowledge
44:00 Production of Variation; Quality Software is Easy to Change
45:45 Coping with Incomplete Knowledge - Confidence, Certainty and Loose-Coupling
49:25 Java - the Impact of Checked Exceptions
54:00 Stability, Maturity and Actual Experience
55:00 Usability
56:50 Being Thread Safe
1:01:40 Concurrency and Coupling are Difficult Problems
1:13:40 Low Code - Spreadsheets and Hidden Dependencies
1:21:00 Walking not Running - Create Opportunities to Observe, Change and Learn
1:26:00 End