How will software development and operations have to change to meet the sustainability and green needs of the planet? And what does that imply for development organizations? In this eye-opening book, sustainable software advocates Anne Currie, Sarah Hsu, and Sara Bergman provide a unique overview of this topic—discussing everything from the likely evolution of national grids to the effect those changes will have on the day-to-day lives of developers.
Ideal for everyone from new developers to CTOs, Building Green Software tackles the challenges involved and shows you how to build, host, and operate code in a way that's not only better for the planet but also cheaper and relatively low-risk for your business. Most hyperscale public cloud providers have already committed to net-zero IT operations by 2030. This book shows you how to get on board.
You'll explore:
How the energy transition is likely to change hosting on prem and in the cloud—and...
AI Reading Assistant
Whole-book reading guide from stratified index samples; jump to passages in the text
Tip the Site
Support this siteYour recognition and a small knowledge-service contribution help keep this technical work open source.Scan the WeChat Pay or Alipay code below. Logged-in and guest visitors can both tip.
WeChat Pay
Alipay
Open WeChat or Alipay and scan. No login required.
AI guide
# Building Green Software: A Sustainable Approach to Software Development and Operations
## 【One-Line Pitch】
A practical, opinionated guide for developers, architects, and CTOs who want to reduce the carbon footprint of their software without sacrificing performance or profitability—showing that green software is often cheaper, more efficient, and lower-risk for business. If you build, host, or operate code at any scale, this book gives you the mental models and concrete techniques to start today.
## 【Book Arc】
- **Opening (~0%–10%)**: Introduces the core principles of green software—energy efficiency, hardware efficiency, and carbon awareness—and explains why the authors (all Green Software Foundation practitioners) can't give you a one-size-fits-all playbook. Sets up the book as a foundation for passing the Linux Foundation's "Green Software for Practitioners" certification.
- **Early (~10%–23%)**: Builds the scientific and technical groundwork: how greenhouse gases work, how electricity grids operate, what carbon intensity means, and how to measure data center efficiency with PUE. Then shifts to the fundamental tension between developer productivity (the industry's current goal) and machine efficiency (the old goal), showing why synchronous calls, idle servers, and wasteful architectures are carbon problems.
- **Early (~23%–32%)**: Dives into concrete efficiency techniques—multithreading, platform-managed threading, serverless, message optimization (RPC vs. REST), and operational strategies like autoscaling and burstable instances. Includes real-world case studies like Microsoft Teams' binary-encoding optimization and Skyscanner's use of spot instances.
- **Middle (~32%–48%)**: Explores the operational and systemic side: containerization and cluster scheduling for workload packing, the trade-offs of hyperscale concentration (efficiency vs. resilience risk), and the mechanics of carbon-aware computing—shifting workloads to times and regions with cleaner electricity. Covers carbon intensity metrics (gCO₂e/kWh) and how cloud providers label "low carbon" regions.
- **Late (~48%–end)**: Extends carbon awareness to end-user devices and applications—adaptive video quality, progressive web apps with lazy loading, and consumer features like Xbox's Shutdown mode and iPhone's clean-energy charging. Also covers greener machine learning and AI (model shrinking, pruning, quantization, federated learning) and the importance of using the right hardware for training jobs.
## 【Key Takeaways】
- **Green software rests on three pillars: energy efficiency, hardware efficiency, and carbon awareness** (Early). These aren't optional extras—they're the foundation for every technique in the book, and they overlap heavily with existing architectural pillars like cost optimization and resilience.
- **Idle servers are carbon disasters—a turned-on server can draw up to 60% of its peak power even when idle** (Early). This reframes "waiting" as an environmental problem: synchronous calls that block threads waste both electricity and the embodied carbon already spent manufacturing the hardware.
- **Developer productivity and machine efficiency are in direct tension** (Early). The industry spent three decades optimizing for developer speed via Moore's law, and we're not going back—so green solutions must work within this constraint, not against it.
- **Autoscaling sounds green but often isn't in practice** (Early). Scaling up is easy; scaling down is risky and scary, so it frequently doesn't happen automatically. Burstable instances offer a pragmatic compromise between resilience and efficiency for spiky workloads.
- **Carbon awareness means shifting work to when and where electricity is cleanest** (Middle). Carbon intensity (gCO₂e/kWh) is the key metric—Google Cloud labels regions "low carbon" under 200 gCO₂e/kWh—and many workloads (especially ML training) are not latency-sensitive and can be scheduled flexibly.
- **Efficiency gains require resilience investment** (Middle). Microsoft Teams had to adopt chaos engineering to safely make efficiency changes; Skyscanner used spot instances specifically to force additional resilience testing. Green isn't free—it demands testing and skill.
- **Containerization and cluster scheduling enable workload packing** (Middle). Fast instantiation and proper labeling let schedulers move jobs to the most efficient machines, but this only works if encapsulation tools support quick start/stop cycles.
- **Carbon awareness extends to end users, not just data centers** (Late). Consumer features like Xbox's Shutdown mode (20x electricity savings) and iPhone's clean-energy charging show that device-level design choices matter—and progressive web apps with lazy loading reduce bandwidth and energy on slow networks.
## 【Reading Tips】
- **Skim Chapter 2's science primer if you're already climate-literate**—the greenhouse effect and electricity basics are well-explained but familiar territory. Do read the PUE and carbon intensity sections carefully; they're the measurement vocabulary used throughout the book.
- **Deep-read the operational efficiency chapters (4–5) if you're a platform or infrastructure engineer**—autoscaling pitfalls, burstable instances, container scheduling, and spot instances are the most actionable content for day-to-day work.
- **Pay attention to the case studies (Microsoft Teams, Skyscanner, Xbox, iPhone)**—they're the most concrete evidence that green techniques work at scale and show the real trade-offs companies faced.
- **Don't expect a prescriptive checklist**—the authors explicitly say they can't tell you exactly what to do because context matters. Use the book to build mental models, then apply them to your own constraints.
- **If you're a developer, focus on Chapters 3 and 8** (code-level efficiency and greener ML/AI)—these give you techniques you can apply without waiting for organizational buy-in.
## 【Coverage Limits】
This guide covers the book's core technical and operational content through approximately the first half, plus key themes from later chapters on carbon-aware devices and greener AI. The excerpts do not cover the book's final chapters in full detail, including specific guidance on carbon reporting tools, organizational change strategies, or the complete treatment of ML/AI techniques.
##
Excerpt 1
ian Cockcroft OrionX.net Salinas, California, February 2024 greenness—has a lot of overlap with those existing architectural pillars. All three of us are als...
ry kWh of electricity coming from the grid is used to power the computing equipment instead of supporting overhead operations. When PUE increases to 2.0, it...
you were using autoscaling in the first place. As a result, autoscaling doesn’t always solve your underutilization problem. Fortunately, another potential so...
sustainability pledge to utilize more renewable resources. Since it’s a day when the sun decides to play ball, and with electricity demand under control, we...
etimes be better off sending data uncompressed. However, if your data is highly and easily compressible, if you are sending it at a busy time, or if it benef...
and maintenance is where you are spending the most. 1 A. M. Turing, “Computing Machinery and Intelligence,” Mind 49 (1950): 433–60, https://oreil.ly/kcDuI. 2...
amount of money and, naturally, reducing carbon emissions. commonly associated with DevOps and site reliability engineering (SRE). These include monitoring f...
your systems are using multitenancy to improve utilization. Level 3: You have defined and tracked utilization targets. All your systems use some form of mult...
Support this siteYour recognition and a small knowledge-service contribution help keep this technical work open source.
Scan the WeChat Pay or Alipay code below. Logged-in and guest visitors can both tip.
WeChat PayAlipay
Open WeChat or Alipay and scan. No login required.
Add Tag
Enter tag name (max 50 characters)
Share E-Book
Building Green Software A Sustainable Approach to Software Development and Operations (Anne Currie)(Z-Library)
Scan QR code with your phone to access
Copy the link or scan the QR code to access this e-book on your phone
Share E-Book via Email
Please enter email address
Donation Statistics
¥.00
Total Donations
0
Donation Count
Building Green Software A Sustainable Approach to Software Development and Operations (Anne Currie)(Z-Library)
Find Your Favorite Books
Only registered users can comment after logging in. Comments need to be reviewed by administrators before being displayed
Loading comments...
Reply to Comment
Edit Comment