Skip to content

Instantly share code, notes, and snippets.

ciacci1234 /
Last active August 4, 2022 19:00
Kill It With Fire by Marianne Bellotti: Takeaways and Excerpts

The following is a series of excerpts from a book by Marianne Bellotti on how to revive and maintain a complex system of software that has been in operational use over a period of time, and has accrued a significant amount of technical and operational debt. Each header before the excerpt is my own or a section title from the book.

Preface "We build our computer systems the way we build our cities: over time, without a plan, on top of ruins." - Ellen Ullman


Restoring legacy systems to operational excellence is ultimately about resuscitating an interative development process so that the systems are being maintained and evolving as time goes on...there is little downside to maintaining all systems as if they are legacy systems. It is easy to build things, but it is difficult to rethink them once they are in place. Legacy modernizations are not hard because they are technically hard - the problems and solutions are usually well understood - it's the people side o

Suggested Resources

This a collection of resources meant to serve as an entry point into various tools and technologies. Many of the resources below are awesome Github repos, which are curated lists of resources for a given tool, technology, or concept. These repos are meant as a way to provide information on a variety of topics in a variety of ways in the hopes that you will find resources that best suit your learning style.

Table of Contents

  • How GCP Ruby team implemented Ruby runtime for Cloud Functions
  • One Dev's Way of Automating New Machine setup
  • Functions-as-a-Service with OpenFaaS
    • Author takes you through their experience using faasd, a project from OpenFaaS, which is an alternative to AWS Lambda functions or GCP Cloud Functions. For the outset of a project, the author is convinced that fassd is more lightweight and easier to experiment with than other solutions out there.
  • Suggestions on Doing Successful Migrations
  • Thoughts on the need for migrations to manage a company's technical debt as well as providing a loose framework (derisk, enable, finish) for doing migrations.