Home GOTO Experts Michael Feathers...

Michael Feathers is the Founder and Director of R7K Research & Conveyance, a company specializing in software and organization design. Prior to forming R7K, Michael was the Chief Scientist of Obtiva and a consultant with Object Mentor International. Over the past 20 years he has consulted with hundreds of organizations, supporting them with general software design issues, process change and code revitalization. A frequent presenter at national and international conferences, Michael is also the author of the book Working Effectively with Legacy Code (Prentice Hall, 2004).

Upcoming masterclasses featuring Michael Feathers

Forces in Software: Understanding the Physics of Software Evolution

Why does software seem to drift toward complexity no matter how carefully we build it? What unseen forces shape our systems over time?

In this intensive one-day workshop, Michael Feathers explores the fundamental forces that determine how software changes over time and why systems take the forms they do. You’ll walk away with actionable insights and practical strategies for steering long-lived systems toward sustainable growth rather than inevitable decay.

This workshop dives into the forces—often invisible, yet always present—that influence the structure, behavior, and longevity of software systems. You’ll learn to recognize the principles that drive software evolution and work with these dynamics in your own codebase, including:

  • Entropic Forces: Why systems naturally move toward disorder and complexity without active intervention
  • Conway's Law: How organizational communication structures inevitably become reflected in code architecture
  • Hyrum's Law: The inevitable dependence on implementation details despite API contracts
  • Complexity Attractors: Identifying the patterns that draw complexity into specific areas of systems
  • Resistance and Flow: Understanding how information and change propagate through codebases
  • Cohesive Forces: The elements that bind code together and resist decomposition
  • Evolutionary Pressure: How external business demands shape internal technical structures

Through hands-on exercises, case studies, and collaborative analysis, you’ll learn to recognize these forces in your own systems and develop strategies to work with them rather than against them. The workshop provides practical techniques for harnessing these forces to guide systems toward sustainable evolution rather than decay.

Ideal for senior developers, architects, and technical leaders who are responsible for long-lived systems, this workshop goes beyond simple patterns and practices to explore the deeper dynamics that govern software development at scale. Participants will leave with a new mental model for understanding why software behaves the way it does and how to navigate its natural tendencies.

Wednesday Dec 3 @ 09:00 | Melbourne, Australia

Reserve your spot now

Forces in Software: Understanding the Physics of Software Evolution

Why does software seem to drift toward complexity no matter how carefully we build it? What unseen forces shape our systems over time?

In this intensive one-day workshop, Michael Feathers explores the fundamental forces that determine how software changes over time and why systems take the forms they do. You’ll walk away with actionable insights and practical strategies for steering long-lived systems toward sustainable growth rather than inevitable decay.

This workshop dives into the forces—often invisible, yet always present—that influence the structure, behavior, and longevity of software systems. You’ll learn to recognize the principles that drive software evolution and work with these dynamics in your own codebase, including:

  • Entropic Forces: Why systems naturally move toward disorder and complexity without active intervention
  • Conway's Law: How organizational communication structures inevitably become reflected in code architecture
  • Hyrum's Law: The inevitable dependence on implementation details despite API contracts
  • Complexity Attractors: Identifying the patterns that draw complexity into specific areas of systems
  • Resistance and Flow: Understanding how information and change propagate through codebases
  • Cohesive Forces: The elements that bind code together and resist decomposition
  • Evolutionary Pressure: How external business demands shape internal technical structures

Through hands-on exercises, case studies, and collaborative analysis, you’ll learn to recognize these forces in your own systems and develop strategies to work with them rather than against them. The workshop provides practical techniques for harnessing these forces to guide systems toward sustainable evolution rather than decay.

Ideal for senior developers, architects, and technical leaders who are responsible for long-lived systems, this workshop goes beyond simple patterns and practices to explore the deeper dynamics that govern software development at scale. Participants will leave with a new mental model for understanding why software behaves the way it does and how to navigate its natural tendencies.

Wednesday Dec 10 @ 09:00 | Sydney, Australia

Reserve your spot now

Content featuring Michael Feathers

44:19
Unconditional Code
Unconditional Code
GOTO Chicago 2018
44:19
Unconditional Code
Unconditional Code
GOTO Berlin 2017
45:02
Where AI Meets Code
Where AI Meets Code
GOTO Chicago 2024

Past masterclasses featuring Michael Feathers

Working Effectively with Legacy Code | GOTO Berlin 2017

Working Effectively with Legacy Code | GOTO Chicago 2018

Browse all experts

Here