Episodes
Episodes



Tuesday Sep 17, 2024
The Nuances behind SRP, YAGNI, DRY, and #NoEstimates with Dave Copeland
Tuesday Sep 17, 2024
Tuesday Sep 17, 2024
In this episode of the Mob Mentality Show, we are excited to have Dave Copeland share his experiences in the world of agile development, focusing on the critical nuances behind well-known principles such as SRP (Single Responsibility Principle), YAGNI (You Aren’t Gonna Need It), DRY (Don’t Repeat Yourself), and the often-debated #NoEstimates approach. Drawing from his journey transitioning from government waterfall projects to agile methodologies at a startup, Dave kicks off a discussion with invaluable lessons on how teams can avoid misunderstanding and misapplying agile aphorisms, or avoid the pitfalls of following agile aphorisms too woodenly.
### The Dangers of Following the Literal Words of Agile Aphorisms?Have you ever seen a team stuck arguing over what SRP or SOLID (Single Responsibility, Open-Closed, Liskov Substitution, Interface Segregation, Dependency Inversion) truly means? Dave explains how teams can misinterpret these catchy phrases, leading to confusion, low cohesion, improper coupling, and poor decision-making. We dive into real-world examples from Dave’s experience, discussing when it's okay to duplicate code and when it's not, the delicate balance between over-engineering and under-engineering, and the importance of nuance in agile practices.
### "Just Sharing" vs. Universal RecommendationsIs it wise to blindly follow every "recommendation" from an agile coach, or is there room for discussion, experimentation, and adaptation? With Dave we tackle the common issue of semantic diffusion. We explore how teams can navigate complex situations and adapt agile and lean principles to their unique contexts.
### Organizational Change and Safe Learning EnvironmentsWe bring in the “Reading Rainbow” analogy and other examples to illustrate how organizational change needs to be gradual, allowing for nuanced learning. We also emphasize the importance of creating an environment where team members can safely fail while being guided by experienced developers in real-world contexts. Whether you’re scaling a team or trying to stack the deck with the right mix of skills, actionable strategies for fostering growth are discussed.
### Estimates, #NoEstimates, and Dealing with UncertaintyThe conversation gets even more interesting as we delve into the jarring #NoEstimates and its sometimes misunderstood implications. Dave brings up valid situations with real deadlines (e.g., seasonal deliveries, regulations) and we weigh-in on ways to handle them with or without estimates that are less likely to lead to self-sabotage. We also discuss the impact of automation on estimates, and what terms like "estimate" really mean.
Continuous Delivery (CD) also takes center stage as we discuss examples of how it and the practice of "don't sell what you don't already have built" fosters trust and reduces uncertainty. We touch on the various unknowns that can arise in development, how CD can help mitigate them, and whether teams can benefit from an "#OptionalEstimates" mindset. Throughout, Dave provides practical advice on aligning practices with business goals and managing risks effectively.
### Coaching, Coding, and Higher-Level RolesFinally, we explore Dave’s thoughts on balancing hands-on coding with coaching responsibilities, especially in higher-level roles. How do you set expectations for coaches, and how can team composition shape the effectiveness of good practices? Whether you’re actively writing code or stepping back to guide others, Dave shares examples for making both approaches work.
Don’t miss this episode packed with deep dives into agile practices, team dynamics, and nuanced leadership. Be sure to subscribe to the Mob Mentality Show on your favorite platform to catch this episode and others like it!
Video and Show Notes: https://youtu.be/IPFYe_oOFtI



Tuesday Sep 10, 2024
Impact of Teaming from a Management Perspective with Rickard Westman
Tuesday Sep 10, 2024
Tuesday Sep 10, 2024
In this episode of the Mob Mentality Show, we explore the profound impact of mob programming from a management perspective with our special guest, Rickard Westman. With a diverse background in sports and news software products, Rickard transitioned from a traditional solo work environment to embracing mobbing—a journey that radically transformed how teams communicate, collaborate, and deliver value.
Rickard opens up about his early experiences in the industry, where he witnessed the drawbacks of isolated work patterns—particularly the delays and inefficiencies caused by waiting on pull requests. His initial encounter with mob programming was anything but smooth. The concept felt awkward and unnatural, but after Woody Zuill’s workshops and after experimenting with mobbing, Rickard and his teams discovered its potential to revolutionize their workflows.
In this episode, we dive into Rickard's journey from skepticism to advocacy for mob programming. He shares how mobbing helped increase production release frequency and enhance safety within his teams. By exposing communication breakdowns and dependency issues during scaling, mob programming brought to light the hidden challenges that were stalling progress. With the introduction of multiple mob teams, these issues began to dissipate as team members naturally shared knowledge and collaborated across different areas.
One of the key insights Rickard offers is the importance of slack in the system, generated through effective teaming. This slack led to greater autonomy, smoother flow, and quicker resolution of bottlenecks. Rickard recounts a compelling story where a bug fix, which would have taken six weeks in the traditional setup, was resolved in just one day through mobbing. This rapid turnaround is a testament to the power of collective problem-solving and the deep, holistic understanding of the product that mobbing fosters among team members.
Rickard also touches on the shift in management responsibilities as a result of mob programming. With teams becoming more self-organizing, managers found themselves spending less time overseeing individual tasks and more time empowering their teams to make decisions. This distributed decision-making model, contrasted with the traditional command-and-control approach, aligns with principles from the book *Turn The Ship Around.*
Throughout the episode, we discuss the benefits and potential pitfalls of mob programming from a management perspective. Rickard emphasizes the importance of coaching mob members to understand their contributions, especially when not working solo. He also explores how successful mob teams can serve as models for new teams, highlighting different interaction patterns for product owners, analysts, and even sports writers.
Finally, we examine the meta-level impact of mob programming at the C-suite level and how it influences broader organizational decision-making. Whether you're a manager, developer, or team member, this episode provides valuable insights into how mob programming can unlock potential, foster collaboration, and drive continuous improvement in your organization.
Video and Show Notes: https://youtu.be/hLN2iCBdYac



Tuesday Sep 03, 2024
Tuesday Sep 03, 2024
It's back to school, everyone! Dive into a transformative journey of education with Matthew Philip, an experienced Organizational Refactorer and educator, as he shares his innovative approach to integrating XP (Extreme Programming) and Agile methodologies into the classroom. In this episode of the Mob Mentality Show, we explore how Matthew's dynamic teaching methods are applied to software engineering education, fostering an environment where trust, mastery, and psychological safety are paramount.
**XP and Agile in the Classroom**
Matthew Philip's unique perspective as both an educator and coach provides a compelling narrative on how XP and Agile principles can be implemented in higher education. From his history of teaching Agile in orgs and universities to leading hands-on learning experiences that go beyond traditional lectures, Matthew's methods challenge the conventional constraints of the classroom.
Discover how Matthew creates a WAR room environment in the classroom, fostering high energy and positivity to encourage active participation. Learn about the use of information radiators, pairing, and mob programming to ensure students not only grasp theoretical concepts but also excel in real-world applications. Matthew also delves into the challenges of teaching Agile content as part of a master's program in software engineering, where students are exposed to the intricacies of refactoring to patterns and leading through facilitation.
In this episode, we discuss the critical differences between being a crafter versus just a coder, and how Matthew helps students navigate the transition from the academic world to the corporate environment. We explore the importance of understanding short-term school code versus long-term maintainability, and how working with real customers in a classroom setting can profoundly impact students' learning experiences and feedback loops.
**Mastery-Based Learning and Psychological Safety**
Matthew is a strong advocate for mastery-based learning, where the focus shifts from simply passing quizzes to deeply understanding and applying knowledge. We discuss how students can assess their own understanding, whether through techniques like Test-Driven Development (TDD) or experiencing the consequences of poor practices. Matthew emphasizes the significance of psychological safety in the classroom, where students learn how to fail safely and collaborate effectively.
Explore how the pressure of pacing in large classrooms can conflict with mastery learning, and how assessment strategies can be adapted to ensure that learning sticks and isn't lost over time. Matthew shares insights on fostering peer assessments and creating systems where even when students "game" the system, true mastery is still achieved.
**The Role of AI and Future of Education**
In a rapidly evolving educational landscape, Matthew addresses the impact of generative AI in the classroom. How can AI be leveraged to enhance learning, and what are the risks of its misuse? We discuss the importance of correct prompting, the authenticity of AI-generated content, and whether mob programming could be the solution to these challenges—while also questioning whether this approach could disrupt current educational and industry standards due to teacher-to-student ratios.
**Psychological Safety and Building Trust**
Finally, we delve into the role of psychological safety in the classroom, exploring how activities like group juggling can teach students to fail and learn together. Matthew shares strategies for establishing trust and the correlation between high energy, positivity, and psychological safety. We also consider whether in-person interactions are essential for fostering trust, or if remote environments can replicate these conditions.
Don't miss this episode as we uncover the future of education, one where trust, mastery, and psychological safety take center stage. To stay updated on this and other insightful episodes, subscribe to the Mob Mentality Show on your favorite platform.
Video and show Notes: https://youtu.be/IkqRI2GQ4MY



Tuesday Aug 27, 2024
Automated Quality Gateways and Cross Discipline Firmware Mobs with Cyrus Metcalf
Tuesday Aug 27, 2024
Tuesday Aug 27, 2024
In this episode of the Mob Mentality Show, we explore the intricate landscape of **Automated Quality Gateways and Cross-Discipline Firmware Mobs** with our guest, Cyrus Metcalf. This conversation is rich with practical insights and actionable strategies for anyone engaged in software, firmware, or hardware development, particularly those interested in enhancing team collaboration and continuous delivery (CD) practices through mobbing techniques.
**Automated Quality Gateways:**
Cyrus shares his experiences in setting up automated quality gateways for firmware and software that control sophisticated systems like boats. Learn how these gateways, including tests, formatting, and coverage, ensure robust code quality and seamless operations. We discuss the merits of running formatters locally versus within a pipeline. We also discuss the impact of these gateways on agility, depending on whether you’re in a startup or a more established organization.
The conversation includes the role of hardware abstraction layers and how automated quality gateways can supplement and even replace certain types of human feedback, thereby streamlining the development process. Cyrus also provides insights into achieving consistent formatting, the challenges of fine-tuning formatters, and the importance of custom config files. Discover how these practices create “highways” for development teams, enabling them to operate at peak efficiency within a fast red-green-refactor cycle.
**Leveling Up Through Mobbing:**
We also discuss how mobbing techniques can elevate the skills of every team member, regardless of their technical background. Cyrus explains how mobbing demystifies the development process, reducing their apprehension about software complexities. By fostering a collaborative environment where everyone learns a bit of everything, mobbing helps dismantle knowledge silos and promotes a culture of continuous improvement.
Cyrus shares his experiences as the sole software developer in a company, including strategies for using mobbing to educate and collaborate across hardware, firmware, and software teams. We explore the dynamics of cross-discipline mobs, where diverse teams work together on complex challenges, and how these mobs have evolved from training tools into essential parts of the production process.
**The Culture of Mobbing:**
The episode also delves into the cultural aspects of mobbing, including the pros and cons of different mob cultures across various companies, the importance of openness and inclusivity, and methods for resolving disagreements within a mob. Cyrus discusses the benefits and challenges of mobbing with juniors and interns, interacting with skeptics, and how a culture of openness—both within the mob and across the organization—can drive innovation and collaboration.
Lastly, Cyrus offers his perspective on how agile principles and practices have naturally integrated into his teams without the need for an official agile coach. This episode is essential listening for anyone looking to improve their team’s efficiency, collaboration, and overall quality through the integration of automated quality gateways and cross-discipline mobbing.
Video and Show Notes: https://youtu.be/vOxFEtX541A



Wednesday Aug 21, 2024
The Behavior Framework with Doc Norton
Wednesday Aug 21, 2024
Wednesday Aug 21, 2024
In this episode of the Mob Mentality Show, we explore the Behavior Framework with the insightful Doc Norton, traversing the foundational behaviors that drive successful software development teams. Drawing from years of experience and real-world examples, Doc shares the principles and practices that have consistently helped teams deliver software products that are not only desirable but also viable and feasible.
**Know the Problem You Are Solving**We kick off the discussion by tackling one of the most critical aspects of software development: understanding the problem you're trying to solve. Doc explains why it's not enough to have a manager dictate tasks and why teams must be aligned on the domain or specific set of problems they're addressing. We explore the difference between developers who are "builders" versus those who are "problem solvers" and discuss real-life scenarios where solving the root business problem either succeeded brilliantly or failed miserably. This section also delves into the concept of "Hubris Driven Development" and ties it into the importance of continuous validation before, during, and after development.
**Make Your Work Visible**Next, we examine the significance of making your work visible. But what does that really mean? Doc challenges the notion of simply having a manager observe the development process and instead advocates for meaningful visibility that enhances awareness of flow, cycle time, and throughput. We discuss how much visibility is necessary and how to reduce the friction in data gathering by automating the process, ensuring that "updating status" doesn’t become an additional burden on the team.
**Favor Automation Over Documentation**Doc takes us through the benefits of favoring automation over documentation. From auto-generating status reports via code commits to AI, to using Behavior-Driven Development (BDD) to create historical Gantt Charts, we explore how automation can ease developer pain and streamline DevOps engineering. This approach not only saves time but also enhances accuracy and consistency in reporting.
**Work Together**The conversation then shifts to the evolving meaning of "working together" in modern software development. Doc reflects on how teams used to function without strict roles or specialization and how the industry's shift towards hyper-specialization has created silos and Lean wastes. We share stories of Pair/Ensemble Programming, the impact of certificate mills on over-specialization, and the pros and cons of specialization in Agile teams. Doc also discusses the importance of credibility through collaboration rather than positional authority and shares examples of teams successfully filling roles collectively.
**Create Simple Things in Small Steps**Finally, we emphasize the power of creating simple things in small steps. Doc highlights the importance of being aware of psychological WIP (Work in Progress) limits and shares a story of how reducing lead time by taking small, simple steps enabled early and accurate validation. We also discuss the dangers of overproduction and the challenges faced when big steps lead to troubleshooting nightmares, all while tying it back to being meticulous about composition.
Don't miss out on this deep dive into the Behavior Framework with Doc Norton—packed with practical insights and actionable advice for anyone involved in software development.
Video and Show Notes: https://youtu.be/MsMK0q_KUwU



Tuesday Aug 13, 2024
Nothing in Tech Matters Except XP? A Hot Take
Tuesday Aug 13, 2024
Tuesday Aug 13, 2024
In this episode of the Mob Mentality Show titled **"Nothing in Tech Matters Except XP? A Hot Take,"** We take on the controversial discussion of the ever-changing landscape of technology and the role of Extreme Programming (XP). Are industry "best practices" in languages, front-end frameworks, and meta-architecture mere trends destined to fade away? Come hear a provocative stance that challenges the importance of these things, arguing that they are volatile, trendy, and often miss the mark when it comes to delivering true software excellence.
We explore how many tech trends are built on the assumption that developers will inherently write unsafe code unless they are constrained by strong type systems, impenetrable boundaries (like microservices), and restrictive frameworks. But what if consistently following XP principles makes these safeguards superfluous? Can language, frameworks, tools, and even meta-architectures lose their high significance when XP is at the core of software development?
Throughout the episode, we draw on personal experiences, asserting that our developer satisfaction remains consistently high when XP values and principles are the guiding force, regardless of the technology stack. Without good XP practices, even the most advanced tools can't solve the deeper, underlying problems that plague software projects.
We delve into the ongoing debate of Majestic Monolith vs. Microservices, questioning whether the choice of meta-architecture matters as much if XP is practiced. How do these choices affect agility, and can agility be seen as a reward for technical excellence?
Another key topic is the influence of societal factors on willpower and habits, and how these meta-problems impact developers' ability to consistently follow XP practices. Can a focus on XP help overcome the challenges posed by trendy tech choices and shifting industry standards?
Chris poses a utopian question: If everyone adhered strictly to XP principles, would other factors like programming language, framework, or meta-architecture even matter? We explore this thought experiment, considering whether an XP-driven world could render other tech decisions less critical.
But it’s not all theory. Austin reaches out to Chris for "Apathy Counseling" for developers facing burnout or disillusionment with tech trends, and offers community analogies linking dev health to "Tech Dishes"—a metaphor for the routine maintenance needed to keep your codebase clean and healthy.
Finally, we tackle the nuances of infrastructure and database management, offering qualifications on the time and effort needed to support different setups. Whether you're grappling with microservices or maintaining a monolithic architecture, the focus remains on how XP can guide you through these challenges.
Don't miss this thought-provoking episode that pushes the boundaries of conventional wisdom in tech.
Video and Show Notes: https://youtu.be/MZUUemSJMjs



Tuesday Aug 06, 2024
Tuesday Aug 06, 2024
Come dive into the transformative world of Cross Discipline Causal Loop Diagramming on this episode of the Mob Mentality Show! Unveil the principles and practices behind generating organization-wide understanding and breaking down cross-functional misunderstandings that often lead to missed opportunities.
**Key Highlights:**
**1. The Cost of Misunderstanding:** Discover how cross-functional misunderstandings can lead to missed opportunities and inefficiencies. We explore real-world examples and offer practical solutions to bridge these gaps.
**2. Insights from "The 5th Discipline":** Learn from the wisdom of Peter Senge's seminal book, "The 5th Discipline". Understand how systems thinking can revolutionize your organizational dynamics and foster a culture of continuous improvement.
**3. Causal Loop Diagramming 101:** Get a clear definition of causal loop diagramming and its critical role in understanding complex adaptive systems within organizations. See how quantities in a system impact each other through balancing and reinforcing loops.
**4. Breaking Down Knowledge Silos:** Address the dangers of over-reliance on specialists and knowledge silos. Learn how causal loop diagramming can facilitate better communication and collaboration across different functions and departments.
**5. Visualizing Complex Systems:** Grasp the importance of visualizing exponential effects and cause-and-effect patterns that enhance the performance of typically separately managed systems.
**6. Practical Examples and Tools:** Dive into examples from a Fifth Discipline book club and understand how to draw and use causal loop diagrams. Explore tools and techniques that make the process accessible and effective.
**7. Real-World Applications:** Hear about a causal loop diagram example related to bad code quality and how pairing with each part of the system can build a comprehensive system diagram. Understand the impact of psychological safety on system self-awareness.
**8. Interdepartmental Impact:** Discuss the importance of seeing the whole system to understand interdepartmental impacts. Compare the efficacy of having the whole system in the room with and without formal tools.
**9. Addressing Second-Order Effects:** Identify and address second-order effects and human shortcomings in seeing side effects of side effects. Learn how diagramming can help deal with the chunking problem of a large system.
**10. Feedback and Future Learning:** Hear feedback from Big Agile session participants and understand the learning path for drawing and using causal loop diagrams. Discover how mob/pair causal loop diagramming can enhance understanding and problem-solving.
Join us as we uncover the power of causal loop diagramming to aid decision making, improve communication, and foster a culture of collaboration and continuous improvement. Don't miss out on this edifying episode!
Ensure you stay engaged in the world of organizational development and systems thinking by tuning in to this episode. Your learning path for causal loop diagramming and breaking down knowledge silos starts here!
Video and Show Notes: https://youtu.be/Oe75SzPeCSs



Tuesday Jul 30, 2024
Crafting Lean Software: Dave Adsit on Small Batches and Short Lead Times
Tuesday Jul 30, 2024
Tuesday Jul 30, 2024
Join us in this thoughtful episode of the Mob Mentality Show as we explore the world of Lean Software Development with Dave Adsit. Titled "Crafting Lean Software: Dave Adsit on Small Batches and Short Lead Times," this episode provides valuable insights for those looking to enhance their software development values and practices. Dave Adsit shares his experiences on how to effectively implement lean principles to achieve small batches, short lead times, and frequent releases.
### Key Discussion Points:
#### **Lean Software Development**- **Craft vs. Engineering**- **Principles of Flow**- **Waterfall vs. "Agile" vs. Lean**- **Timeboxes vs. Scope-Boxes**- **Resource vs. Flow Efficiency**- **Prioritization, Prototyping, and Lean Investment Bets**- **Single Piece Flow, Feature Flags, Continuous Delivery**- **Maximal Learning through Experimentation and a 50% Product Bet Success Rate**
#### **Collaboration**- **Integration with Lean**- **"All Hands on Deck" Mindset**- **Relation to WIP Limits**- **Pair and Mob Programming**- **Failures and Lessons**- **Rules, Why, and Learning Paths**- **Utilization and Person vs. Team vs. System Value**
#### **Continuous Improvement**- **Core Value**- **Innovative vs. Inert Practices**- **Deep vs. Shallow Learning**- **Leading Learning Opportunities**- **Knowing Enough to Make Informed Decisions**- **What If Some Do Not Want to Learn?**- **Rock Star vs. Super-Star**
Video and Show Notes: https://youtu.be/LgAMUGtdXGA



Tuesday Jul 23, 2024
Tuesday Jul 23, 2024
Join us on the Mob Mentality Show as we sit down with the insightful Artie Gold to explore the pivotal role of scope and cognitive load in coding. In "Artie Gold on Scope is Your Friend: The Less You Need to Know at Any Given Moment, the Better," we delve into practical strategies for enhancing productivity and code quality through smart scope management.
### Scope and Cognitive Load
Artie Gold sheds light on the false pride developers often take in handling complex code and high cognitive demands. We discuss the advantages of understanding as needed versus knowing everything at once. Are developers truly like acrobats, balancing multiple logic threads simultaneously? Artie highlights the human mind's limitations and the significant benefits of encapsulation in reducing cognitive load.
Key topics include:- The detrimental effects of high scope and cognitive load on development- Encapsulation's role in making code easier to read, scan, and modify- Comparing agile, nimble, and shallow approaches to manage cognitive overload- Artie's amusing analogy of low-level code instructions to a simple task like buying milk- Strategies for helping developers adapt to a new paradigm of encapsulated code reading
### Clarity of Value on Stories
We shift our focus to the critical importance of clarity in user stories and the benefits of direct client relationships. Artie discusses the drawbacks of indirect communication and the often humorous complications of serving as the middleman for another middleman.
Discussion points include:- The irreplaceable value of direct conversations in understanding "the why" behind requests- Whether good story conversations can be replaced with a template or checklist- The impact of user feedback on delivered products versus theoretical future products- The risks of over-refinement, illustrated by the rock versus ruby MVP delivery example- Challenges in assuming everyone excels at written communication
### Code is Everything. Code is Nothing.
In our final segment, we explore the dual nature of code. Code is vital—it produces value, is easier to change than other components, and serves as a repository of knowledge. Yet, code alone is meaningless without context and purpose.
Artie elaborates on:- The necessity of keeping code in good shape for ease of future changes- Why "pretty" code isn't the goal—functional, adaptable code is- The inherent truthfulness of code as the ultimate source of software reality
**Don't miss this insightful discussion with Artie Gold that can transform your approach to coding, user stories, and the fundamental nature of software development.**Video and Show Notes: https://youtu.be/0z2nQHT8Jvs



Tuesday Jul 16, 2024
Sticky Mob Programming with Lennart Fridén
Tuesday Jul 16, 2024
Tuesday Jul 16, 2024
In this compelling episode of the Mob Mentality Show, we dive deep into the art of Sticky Mob Programming with Lennart Fridén, who brings a wealth of knowledge from his decade-long journey coaching mob programming in Sweden. Whether you're a seasoned mob programmer or new to the concept, this episode is packed with actionable insights and real-world examples that can help you make mobbing a lasting fixture in your team's workflow.### Key Discussion Points:**Sticky Mob Programming:**- Lennart’s insights on mob stickiness- Beyond just trying mobbing- Persistent mob habits even without the nudging of a coach - Mob stickiness challenges and triumphs- Roles: outsider, insider, first follower (AKA eager first dance partner), - Lessons from "Power of Habit"- Mob as keystone habit leading to a cascade of other beneficial practices- Community and belonging- Dealing with stagnation- Vulnerability and growth
**Technical Coaching and Redundancy:**- Embedding coaching and making the coach's role redundant (times two)- Teaching for sustainability- Gradual coach transition examples- Handling eager vs. apathetic first follower (potential future coach)**P.S.** Reach out to Lennart Fridén ( https://www.linkedin.com/in/lennartfriden/ ) for guidance on introducing mobbing and ensuring it sticks in your organization.Tune in to discover how to make mob programming a sticky and sustainable practice in your organization!Video and Show Notes: https://youtu.be/FSFyifwXbWo