At the root of catastrophes in both code and life lies a pervasive fallacy: the attempt to model processes as if they were transactions. Join me for an honest, sometimes raw retrospective on two decades of building a software development career. We’ll examine how personal philosophy impacts software design—and vice-versa. We’ll encounter the Transactional Fallacy, and how it can hinder our attempts to build resilient systems. And we’ll explore how a narrative-oriented mindset can lead to both better code and a more joyful life.
References
If you’ve just watched a version of this talk and you’re looking to follow up on some of the ideas or technologies I mentioned, you’re in the right place. I’ve collected a list of further recommended reading/viewing below.
Also! If you liked the talk, you might like my newsletter: SIGAVDI. I do a lot of musing at the intersection of life, philosophy, and code there, and I also respond to replies! ???? You can sign up here.
The Early History of Smalltalkis one of my all-time favorite software papers. It’s a beautifully written retrospective that introduces not only the philosophy of the Smalltalk design, but also contains a wealth of insight into creating the right environment for revolutionary technological change.
For more on the Actor Model: Learning Elixir is a an approachable hands-on way to experience the actor model. There’s also the original Actor Model paper, by Carl Hewitt.
Domain-Driven Design is a classic, and the community that has sprung up around it is at the forefront of grappling with the design of complex software systems.
If you want to learn to work more skillfully with failure and suffering in a software context, I recommend Amy Newell’s talk on that topic.
You can find a concise introduction to the Saga Pattern here. For a more comprehensive look, I recommend the book Microservice Patterns by Chris Richardson.
The Circuit-Breaker Pattern is described in Michael Nygard’s superb book Release It!, now in a second edition.
Roland Kuhn’s Reactive Design Patterns covers everything from futures/promises to queue backpressure to supervisor hierarchies. It’s a cohesive and comprehensive guide to every level of a graceful software architecture.
I actually can't get this talk out of my head. I'm personally comprising my own list of people "I want to be the person they'd want to have a beer with".
Joshua Bryant
Likely the best talk I have ever seen @avdi Thank you so much for sharing. ????
Chase Southard
Remembering to not get obsessed about the goal and enjoy life with @avdi. Recommend his keynote at @keeprubyweird when it's posted
countingtoten
@avdi’s talk was exactly what I always want: a challenge to look at programming - and life - through new eyes.
Erik Ostrom
Great talk on “The Transactional Fallacy”. I’ve rarely seen a talk touch on so many topics (OO design history, architecture patterns, philosophy, health, empathy, success, living life well...) and still hang together so well as a talk. Lots to follow up on!
Justin Jones
???? @avdi's keynote at @keeprubyweird is worth a watch! His ideas around how our worldview affects the code we write and vice versa have my brain gears turning.
Nick Holden
Feeling grateful to have thoughtful people like @avdi in our community who can be honest and vulnerable about his personal situation while imparting poignant wisdom about programming philosophy. You made a huge impact today.
alex levine
This was an *amazing* talk. It harmonized the tech (OO fundamentals) with the life lessons with grace and power.
Noah Gibbs
This talk but @avdi at “Keep Ruby Weird” about how the broken parts of Object Oriented Design seep into your IRL life and hurt you is worth your time
Seth A. Roby
some talks really can change your life. I am getting the feeling this is one of those.
Thanks @avdi for moving me to tears with his closing keynote to Keep Ruby Weird
Marcello Rocha
What an Awesome way to connect life with OOPS!!
Anubhav Jain
Transaction vs process, goal vs direction, narrative oriented mindset and how writing code relates to how I’m “writing” my life and vice versa. Your talk really spoke to me @avdi. Thank you!
Gustavo Matias
The best talk of the day hands down is about the Transactional Fallacy (in life and in software) by Avdi
Mike Polischuk
My husband came back a changed man.
Tricia Steele
Your talk at @rubyconf was really cool. Connecting code narratives with our life narrative was a new way of looking at development.
Andrew Goodnough
@avdi’s 2019 RubyConf talk got me over here re-examining my life and my programs ???? great stuff
ヽ( ͡ಠ ʖ̯ ͡ಠ)ノ
I really think it was one of the best talks I have seen in a while.
Martin Öbrink-Hansen
I just want to say thank you for sharing such a deep and personal story. I don't know what the universe has done to bring this talk to me when I needed it most and I'm grateful to have spent time watching it from beginning to end. I hope you have a wonderful day and remember how much your wisdom and words continue to help folks ????
Prince Wilson
This is a beautiful talk by @avdi - thanks for your honesty and deep dive into how interwoven this stuff can be with our operating philosophies. Excellent.
Jonathan Cutrell
I don't normally stan talks/speeches, but this one from @avdi is really, really good
--
An amazing talk about living life and programming
Mark Starkman
This talk was amazing in a technical and personal way.
Rodrigo Serradura
I feel so lucky to be in the front row of @avdi ‘s very personal keynote to wrap up @southeastruby #seruby
Brittany Martin
The talk you gave... left me thinking on a completely different level.
Dominic Santo
His keynote at @keeprubyweird was absolutely fantastic and I highly recommend you watch the video when it comes out. Enjoy the process of life and stop thinking so transactionally, as programmers are oft to do.
Chris Arcand
Part tech talk and part life & motivational talk at #keeprubyweird. ????
Isabelle Giuong
Thank you @avdi for your amazing talk at @nordicjs!