A Junior, A Senior and I

Pablo Curell

I invite two people to get different perspectives on tech subjects: -Continuous Learning, - Testing, - Practices, - AI, - Team Work, - Software Teaming

  1. 12/16/2025

    26 - On OOP with Tim and Rob

    Summary In this episode, We discuss Object-Oriented Programming (OOP) with Tim and Rob, its origins, principles, and practical applications. The guests share their experiences and insights on the importance of naming conventions, the balance between purity and practicality in OOP, and the impact of Object-Relational Mappers (ORMs) on design. They also explore the challenges of modeling reality with objects and provide recommendations for those looking to deepen their understanding of OOP. Takeaways Object-Oriented Programming is a way of organizing work.Naming things in code is a significant challenge.All models are wrong, but some are useful for abstraction.You can model both physical and unphysical concepts in OOP.Understanding design patterns helps in solving problems effectively.Clarity in code is essential to avoid misunderstandings.The use of ORMs can limit the flexibility of OOP.It's important to trust that objects behave as expected in OOP. Chapters 00:00 Introduction to Object-Oriented Programming 02:35 The Origins and Purpose of OOP 04:34 Purity in Object-Oriented Programming 10:50 Design Principles and Patterns in OOP 15:41 Types and Their Importance in OOP 20:58 ORMs and Their Limitations 24:48 The Role of Patterns in OOP 26:11 Understanding Patterns in Object-Oriented Programming 30:04 The Iterative Process of Object Design 35:52 Trusting Object Competence in Code 39:10 Modeling Reality with Objects 43:27 Building a Shared Vocabulary in Programming 50:07 Recommended Resources for Learning OOPFind our Guests: Rob: https://www.linkedin.com/in/purinkle/Tim: https://www.linkedin.com/in/agileotter/ and http://agileotter.blogspot.com/

    52 min

About

I invite two people to get different perspectives on tech subjects: -Continuous Learning, - Testing, - Practices, - AI, - Team Work, - Software Teaming