

How to Deal with Software Complexity • Gail Murphy & Charles Humble
Mar 7, 2025
In this engaging discussion, Dr. Gail Murphy, a Computer Science Professor and VP of Research at UBC, joins Charles Humble, a freelance tech consultant and podcaster. They delve into the complexities of modern software engineering, emphasizing that productivity isn't just about lines of code but rather focus and task management. Gail shares insights on the challenges of architecture evolution and the downsides of open-source dependencies. They also explore the changing landscape of technical leadership and how it shapes team dynamics in navigating software complexity.
AI Snips
Chapters
Books
Transcript
Episode notes
Developer Productivity Definition
- Defining developer productivity is elusive and has been a challenge since the beginning of programming.
- Early metrics like lines of code proved inadequate, and even function points or eliminating waste don't fully capture it.
Developer Productivity Perceptions
- Developers perceive productivity through various lenses, including commits, solved bugs, and focus time.
- Common factors include the ability to focus, engagement, and minimizing task switching.
Emergent Architectures and Challenges
- System architectures often emerge from code rather than being designed upfront, leading to architectural drift.
- This can create challenges in changeability, performance, and understanding system behavior.