Episode 206 | David Bernstein - Beyond Legacy Code




Developer On Fire show

Summary: <div> <div>Guest:</div> <div> <div><a target="_blank" href="https://tobeagile.com/">David Bernstein</a></div> <div><a target="_blank" href="http://twitter.com/ToBeAgile">@ToBeAgile</a></div> </div> </div> <div class="podcast-episode"> <div class="subtitle"> David Bernstein talks with Dave Rael about writing a book, writing software, untangling legacy code, and rewards </div> <div class="podcast-summary"> <p>David Scott Bernstein is the author of the new book Beyond Legacy Code: Nine Practices to Extend the Life (and Value) of Your Software. It’s an insider’s view of the software industry drawn from his decades of hands-on experience as a software developer, trainer, and consultant to some of the biggest players in the business. With its emphasis on technical excellence, the primary audience for Beyond Legacy Code is software development managers and their teams. David’s continuing passion for software design and construction has led him to train more than 8,000 developers since 1989 at hundreds of companies around the world including IBM, Yahoo, and Microsoft—where his book’s advice has been successfully applied. Since 2006, David has been devoted to coaching and training developers at organizations transitioning to Agile and Scrum. His consulting firm, To Be Agile (http://ToBeAgile.com), helps developers adopt Extreme Programming practices such as test-first development, continuous integration, and refactoring. David is a Certified Scrum Professional, Certified Scrum Developer and Certified ScrumMaster. </p> </div> <div class="podcast-chapters"> <h6>Chapters:</h6> <ul> <li><a href="#!"> - Dave introduces the show and David Bernstein</a></li> <li><a href="#!"> - David's book: Beyond Legacy Code</a></li> <li><a href="#!"> - Creating code resistant to becoming legacy code</a></li> <li><a href="#!"> - The approach and layout of the book</a></li> <li><a href="#!"> - David's career path and experience</a></li> <li><a href="#!"> - "Understanding how we understand" - modeling processes</a></li> <li><a href="#!"> - How David found himself writing software professionally from being a biologist</a></li> <li><a href="#!"> - How David learned to program and different constraints on programming in different times</a></li> <li><a href="#!"> - Technical failings - untangling a knot of legacy code via understanding and safe refactorings</a></li> <li><a href="#!"> - David's motivations for writing the book and writing process insight</a></li> <li><a href="#!"> - The power of stories</a></li> <li><a href="#!"> - David's success story - getting his lessons out in book form</a></li> <li><a href="#!"> - How David stays current with what he needs to know</a></li> <li><a href="#!"> - David's book recommendation</a></li> <li><a href="#!"> - The things that have David most excited</a></li> <li><a href="#!"> - David's causes of pain and suffering</a></li> <li><a href="#!"> - The things about which David likes to geek out</a></li> <li><a href="#!"> - David's top 3 tips for delivering more value</a></li> <li><a href="#!"> - Keeping up with David</a></li> </ul> </div> <div class="podcast-resources"> <h6>Resources:</h6> <ul> <li><a href="https://tobeagile.com/" target="_blank">David's Website and Business</a></li> <li><a href="https://www.amazon.com/dp/1680500791/?tag=devonfir-20" target="_blank">Beyond Legacy Code: Nine Practices to Extend the Life (and Value) of Your Software - David Scott Bernstein</a></li> <li><a href="https://www.amazon.com/dp/0131177052/?tag=devonfir-20" target="_blank">Working Effectively with Legacy Code - Michael Feathers</a></li> <li><a href="http://developeronfire.com/podcast/episode-102-michael-feathers-providing-options" target="_blank">Michael Feathers on Developer On Fire</a></li> <li><a href="http://developeronfire.com/podcast/episode-114-robert-martin-master-craftsman" target="_blank">Uncle Bob Martin on Developer On Fire</a></li> <li><a href="http://blog.cleancoder.com/uncle-bob/2014/06/20/MyLawn.html" target="_blank">Uncle Bob Martin on the consequences of exponential growth in the number of software developers in the world</a></li> <li><a href="http://www.netobjectives.com/" target="_blank">Net Objectives</a></li> <li><a href="https://twitter.com/alshalloway" target="_blank">Al Shalloway</a></li> <li><a href="http://www.netobjectives.com/users/scott-bain" target="_blank">Scott Bain</a></li> <li><a href="https://en.wikipedia.org/wiki/PDP-8" target="_blank">PDP-8</a></li> <li><a href="http://blog.mattwynne.net/2013/07/24/how-much-should-i-refactor/" target="_blank">Matt Wynne's Blog Post on Emphasizing Refactoring</a></li> <li><a href="http://developeronfire.com/podcast/episode-016-matt-wynne-strong-communication-and-passionate-dedication" target="_blank">Matt Wynne on Developer On Fire</a></li> <li><a href="http://developeronfire.com/podcast/episode-073-arlo-belshee-refactoring-humanity" target="_blank">Arlo Belshee on Developer On Fire</a></li> <li><a href="https://www.youtube.com/user/JordanPetersonVideos" target="_blank">Dr. Jordan Peterson</a></li> <li><a href="https://en.wikipedia.org/wiki/Joseph_Campbell" target="_blank">Joseph Campbell</a></li> <li><a href="https://en.wikipedia.org/wiki/Maslow's_hierarchy_of_needs" target="_blank">Maslow's Hierarchy of Needs</a></li> <li><a href="http://developeronfire.com/podcast/episode-168-diana-larsen-living-in-inquiry" target="_blank">Diana Larsen</a></li> <li><a href="https://www.amazon.com/dp/B008YI91HS/?tag=devonfir-20" target="_blank">Jurassic Park (film)</a></li> </ul> </div> <div class="podcast-book-recommendation"> <h6>David's book recommendation:</h6> <ul> <li><a href="https://www.amazon.com/dp/1591847125/?tag=devonfir-20" target="_blank">Joy, Inc.: How We Built a Workplace People Love - Richard Sheridan</a></li> <li><a href="https://www.amazon.com/dp/0201485672/?tag=devonfir-20" target="_blank">Refactoring: Improving the Design of Existing Code - Martin Fowler</a></li> </ul> </div> <div class="podcast-tips"> <h6>David's top 3 tips for delivering more value:</h6> <ol> <li>Focus on value</li> <li>Know yourself</li> <li>Praise others</li> <li>Be willing to change your mind</li> <li>Understand refactoring</li> <li>Understand design patterns</li> </ol> </div> </div>