S07 E01 Gojko Adzic on Specification By Example
Mastering Agility - A podcast by Sander Dur and Jim Sammons
Categories:
SummaryIn this episode, Goiko shares his experiences and insights on visualizing specifications, writing Specification by Example, and solving communication problems in software development. He discusses the challenges and patterns in the adoption of Spec by Example and the importance of identifying bottlenecks and visualizing problems. Goiko also talks about causing organizational change and the evolution of software development solutions. He concludes by discussing the promise and reality of no-code tools and sharing his recent work and projects. The conversation explores various themes related to software development and its impact on organizations and society. It discusses the power of expressing human knowledge in software and the role of visualization tools in increasing shared understanding. The shift from specialists to generalists in the software industry is examined, as well as the potential for smaller organizations and general-purpose work. The conversation also delves into the role of AI in minimizing political games in organizations and the responsibility of software professionals in creating good software. The need for spending more time on edge cases and negative use cases is highlighted, along with the societal impact of bad software and the potential for IT to become a profession. The conservation and shifting of complexity in software development is explored, and the conversation concludes with a discussion on the impact of shoddy software on people's lives.TakeawaysVisualizing specifications can help improve understanding and reduce rework in software development.The adoption of Spec by Example and other agile practices can be hindered by organizational politics and resistance to change.Identifying bottlenecks and visualizing problems can lead to effective solutions and improvements in software development processes.No-code tools have the potential to democratize software development and empower non-technical users to create automation. Visualization tools like FigJam and Zeppelin increase shared understanding in organizations.The software industry is shifting towards smaller organizations and general-purpose work.AI cannot eliminate political games in organizations, as they are driven by cultural factors.There is a need for more focus on edge cases and negative use cases in software development.The responsibility of software professionals is to create good software and address the societal impact of bad software.Gojko's booksCheck out our sponsors:www.xebia.comwww.wiserbees.comwww.scrummatch.comwww.masteringagility.orgSound BitesChapters00:00Introduction01:21Visualizing Specifications03:04Early Experiences with Software Quality04:09Solving Communication Problems05:31Validating Real-World Usage of Spec by Example06:29Getting Permission from Companies for Case Studies08:28Persistent Challenges and Positive Patterns09:49Adoption of Given-When-Then and Consolidation of Tools11:42Identifying Bottlenecks and Visualizing Problems13:01Causing Organizational Change14:09The Challenge of Change Resistance16:30The Evolution of Software Development Solutions26:48Goiko's Recent Work and Projects35:26The Power of Expressing Human Knowledge in Software36:03Visualization Tools and Increased Shared Understanding37:27Specialists vs. Generalists in the Software Industry38:49The Shift Towards Smaller Organizations and General Purpose Work41:49The Role of AI in Minimizing Political Games in Organizations42:54The Responsibility of Software Professionals in Creating Good Software51:01The Need for Spending More Time on Edge Cases and Negative Use Cases53:31The Societal Impact of Bad Software and the Role of Governments57:41The Potential for IT to Become a Profession01:01:29The Conservation and Shifting of Complexity in Software Development01:04:43The Impact of Shoddy Software on People's Lives