Maintainable

Chelsea Troy - All Code Has Maintenance Load

Episode Summary

Robby has a chat with Chelsea Troy, the Staff Software Engineer on machine learning and backend systems at Mozilla. Chelsea will impart her valuable knowledge on how we can go about making software more maintainable, strategies we can use to quantify maintenance work, documenting code with more helpful error messages that provide more context, and so much more.

Episode Notes

Robby has a chat with Chelsea Troy, the Staff Software Engineer on machine learning and backend systems at Mozilla. Chelsea also maintains the Zooniverse Citizens Science mobile app, the NASA landslide data processing pipeline, and a few other open-source projects. She is a maintainer for the rock programming language and mentors formerly incarcerated technologists through Emergent Works. She teaches Python and mobile development at the University of Chicago’s Master's program in Computer Science, hosts workshops for O’Reilly, and writes at ChelseaTroy.com  

For Chelsea, one of the most important characteristics of well-maintained software is a conscious effort to ensure that enough context remains available for engineers who come in without existing familiarity with the system to gain that context and maintain it. She shares more of her valuable insights on how we can go about making software more maintainable and explains why she’s not a proponent of the term “Technical debt”. 

She also talks about some of the strategies she uses to quantify maintenance work, how engineers can document their code with more helpful error messages that provide more context, and how to discuss the removal of features to reduce long-term maintenance load with a product team. To learn more, including what you should do when you join a new team with existing software, stay tuned. 

Book Recommendations:

Helpful Links

Subscribe to Maintainable on:

Or search "Maintainable" wherever you stream your podcasts.

Join the discussion in the Maintainable Discord Community