Building Green Software

Building Green Software

Author: Anne Currie

Publisher: "O'Reilly Media, Inc."

Published: 2024-03-08

Total Pages: 252

ISBN-13: 1098150589

DOWNLOAD EBOOK

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 how your company can prepare The fundamental architectural principles of sustainable software development and how to apply them How to determine which parts of your system need to change The concept of extending hardware longevity and the part that software plays


Building Software Teams

Building Software Teams

Author: Joost Visser

Publisher: "O'Reilly Media, Inc."

Published: 2016-12-12

Total Pages: 136

ISBN-13: 1491951826

DOWNLOAD EBOOK

Why does poor software quality continue to plague enterprises of all sizes in all industries? Part of the problem lies with the process, rather than individual developers. This practical guide provides ten best practices to help team leaders create an effective working environment through key adjustments to their process. As a follow-up to their popular book, Building Maintainable Software, consultants with the Software Improvement Group (SIG) offer critical lessons based on their assessment of development processes used by hundreds of software teams. Each practice includes examples of goalsetting to help you choose the right metrics for your team. Achieve development goals by determining meaningful metrics with the Goal-Question-Metric approach Translate those goals to a verifiable Definition of Done Manage code versions for consistent and predictable modification Control separate environments for each stage in the development pipeline Automate tests as much as possible and steer their guidelines and expectations Let the Continuous Integration server do much of the hard work for you Automate the process of pushing code through the pipeline Define development process standards to improve consistency and simplicity Manage dependencies on third party code to keep your software consistent and up to date Document only the most necessary and current knowledge


Building Maintainable Software, Java Edition

Building Maintainable Software, Java Edition

Author: Joost Visser

Publisher: "O'Reilly Media, Inc."

Published: 2016-01-28

Total Pages: 164

ISBN-13: 1491953497

DOWNLOAD EBOOK

Have you ever felt frustrated working with someone else’s code? Difficult-to-maintain source code is a big problem in software development today, leading to costly delays and defects. Be part of the solution. With this practical book, you’ll learn 10 easy-to-follow guidelines for delivering Java software that’s easy to maintain and adapt. These guidelines have been derived from analyzing hundreds of real-world systems. Written by consultants from the Software Improvement Group (SIG), this book provides clear and concise explanations, with advice for turning the guidelines into practice. Examples for this edition are written in Java, while our companion C# book provides workable examples in that language. Write short units of code: limit the length of methods and constructors Write simple units of code: limit the number of branch points per method Write code once, rather than risk copying buggy code Keep unit interfaces small by extracting parameters into objects Separate concerns to avoid building large classes Couple architecture components loosely Balance the number and size of top-level components in your code Keep your codebase as small as possible Automate tests for your codebase Write clean code, avoiding "code smells" that indicate deeper problems


Building Microservices

Building Microservices

Author: Sam Newman

Publisher: "O'Reilly Media, Inc."

Published: 2015-02-02

Total Pages: 281

ISBN-13: 1491950331

DOWNLOAD EBOOK

Annotation Over the past 10 years, distributed systems have become more fine-grained. From the large multi-million line long monolithic applications, we are now seeing the benefits of smaller self-contained services. Rather than heavy-weight, hard to change Service Oriented Architectures, we are now seeing systems consisting of collaborating microservices. Easier to change, deploy, and if required retire, organizations which are in the right position to take advantage of them are yielding significant benefits. This book takes an holistic view of the things you need to be cognizant of in order to pull this off. It covers just enough understanding of technology, architecture, operations and organization to show you how to move towards finer-grained systems.


Green Software Engineering

Green Software Engineering

Author: Santiago Fontanarrosa

Publisher: Packt Publishing Ltd

Published: 2024-07-26

Total Pages: 237

ISBN-13: 1835885896

DOWNLOAD EBOOK

Craft sustainable software and reduce digital environmental impact with practical strategies and principles Key Features Discover practical strategies for developing energy-efficient digital solutions across various domains Learn effective strategies to measure and mitigate the environmental impact of digital solutions Explore real-world examples of integrating sustainable design patterns into the software development cycle Purchase of the print or Kindle book includes a free PDF eBook Book Description Embark on a transformative journey toward sustainable software engineering, exploring the vital intersection of technology and environmental responsibility. Authored by Santiago Fontanarrosa, a Green Software Foundation member with 20+ years in software engineering, this book explores practical strategies and use cases to help you assess and mitigate digital product environmental impact. Through real-world examples and hands-on experiences, you’ll gain the skills you need to craft environmentally responsible solutions aligned with green software engineering principles. As you progress, you’ll assess and optimize software architecture for sustainability within a sustainable software delivery framework schema. Beyond technical insights, the book delves into ethical implications and societal impacts, fostering a deeper understanding of the broader implications of technology usage. As you approach the conclusion, you’ll have gained the ability to comprehend, measure, and craft energy-efficient digital solutions aligned with green software engineering principles. What you will learn Optimize software and infrastructure for sustainability Integrate green software principles into the Agile Software Development Life Cycle Explore emerging trends and technologies shaping the future of green software engineering Reflect on tech ethics as well as address societal and environmental concerns Implement industry standards and reporting methodologies for software emissions Measure digital operations' environmental footprint with methodologies Mitigate software's ecological impact with strategic approaches Who this book is for If you’re a software developer, software architect, or IT professional who wants to integrate sustainability into your organization, this book is for you. Whether you're a seasoned professional or a sustainability-focused tech enthusiast, this book provides the knowledge and tools you need to drive positive change in the software industry. A basic understanding of IT concepts and programming is recommended, and familiarity in modern digital technologies like cloud computing will also be helpful.


The Integrative Design Guide to Green Building

The Integrative Design Guide to Green Building

Author: 7group

Publisher: John Wiley & Sons

Published: 2009-04-13

Total Pages: 436

ISBN-13: 0470181109

DOWNLOAD EBOOK

"The members of 7group and Bill Reed are examples writ large of the kind of leadership that is taking this idea of green building and forming it into reality, by helping change minds, building practice, and design process." —from the Foreword by S. Rick Fedrizzi President, CEO, and Founding Chair, U.S. Green Building Council A whole-building approach to sustainability The integrative design process offers a new path to making better green building decisions and addressing complex issues that threaten living systems. In The Integrative Design Guide to Green Building: Redefining the Practice of Sustainability, 7group's principals and integrative design pioneer Bill Reed introduce design and construction professionals to the concepts of whole building design and whole systems. With integrative thinking that reframes what sustainability means, they provide a how-to guide for architects, designers, engineers, developers, builders, and other professionals on incorporating integrative design into every phase of a project. This practical manual: Explains the philosophy and underpinnings of effective integrative design, addressing systems thinking and building and community design from a whole-living system perspective Details how to implement integrative design from the discovery phase to occupancy, supported by process outlines, itemized tasks, practice examples, case studies, and real-world stories illustrating the nature of this work Explores the deeper understanding of integration that is required to transform architectural practice and our role on the planet This book, both practical and thoughtful, will help you deliver your vision of a sustainable environment. 7group, based in Kutztown, Pennsylvania, includes principals John Boecker, Scot Horst, Tom Keiter, Andrew Lau, Marcus Sheffer, and Brian Toevs, who bring a unique integration of expertise in design, engineering, energy and daylight modeling, materials assessments, commissioning, education, and communications to their work. Internationally recognized thought leaders in the green building movement, they have led countless teams through the practical implementation of integrative design on building projects of all types around the world. 7group also has been directly and deeply involved with the development of the LEED® Green Building Rating System, including experience on more than 100 LEED projects. Scot Horst currently serves as chair of the U.S. Green Building Council's LEED Steering Committee.


Designing for Sustainability

Designing for Sustainability

Author: Tim Frick

Publisher: "O'Reilly Media, Inc."

Published: 2016-08-23

Total Pages: 336

ISBN-13: 1491935723

DOWNLOAD EBOOK

Pixels use electricity, and a lot of it. If the Internet were a country, it would be the sixth largest in terms of electricity use. That’s because today’s average web page has surpassed two megabytes in size, leading to slow load times, frustrated users, and a lot of wasted energy. With this practical guide, your web design team will learn how to apply sustainability principles for creating speedy, user-friendly, and energy-efficient digital products and services. Author Tim Frick introduces a web design framework that focuses on four key areas where these principles can make a difference: content strategy, performance optimization, design and user experience, and green hosting. You’ll discover how to provide users with a streamlined experience, while reducing the environmental impact of your products and services. Learn why 90% of the data that ever existed was created in the last year Use sustainability principles to innovate, reduce waste, and function more efficiently Explore green hosting, sustainable business practices, and lean/agile workflows Put the right things in front of users at precisely the moment they need them—and nothing more Increase site search engine visibility, streamline user experience, and make streaming video more efficient Use Action Items to explore concepts outlined in each chapter


The Nature of Software Development

The Nature of Software Development

Author: Ron Jeffries

Publisher: Pragmatic Bookshelf

Published: 2015-02-19

Total Pages: 264

ISBN-13: 1680505084

DOWNLOAD EBOOK

You need to get value from your software project. You need it "free, now, and perfect." We can't get you there, but we can help you get to "cheaper, sooner, and better." This book leads you from the desire for value down to the specific activities that help good Agile projects deliver better software sooner, and at a lower cost. Using simple sketches and a few words, the author invites you to follow his path of learning and understanding from a half century of software development and from his engagement with Agile methods from their very beginning. The book describes software development, starting from our natural desire to get something of value. Each topic is described with a picture and a few paragraphs. You're invited to think about each topic; to take it in. You'll think about how each step into the process leads to the next. You'll begin to see why Agile methods ask for what they do, and you'll learn why a shallow implementation of Agile can lead to only limited improvement. This is not a detailed map, nor a step-by-step set of instructions for building the perfect project. There is no map or instructions that will do that for you. You need to build your own project, making it a bit more perfect every day. To do that effectively, you need to build up an understanding of the whole process. This book points out the milestones on your journey of understanding the nature of software development done well. It takes you to a location, describes it briefly, and leaves you to explore and fill in your own understanding. What You Need: You'll need your Standard Issue Brain, a bit of curiosity, and a desire to build your own understanding rather than have someone else's detailed ideas poured into your head.


Release It!

Release It!

Author: Michael T. Nygard

Publisher: Pragmatic Bookshelf

Published: 2018-01-08

Total Pages: 490

ISBN-13: 1680504525

DOWNLOAD EBOOK

A single dramatic software failure can cost a company millions of dollars - but can be avoided with simple changes to design and architecture. This new edition of the best-selling industry standard shows you how to create systems that run longer, with fewer failures, and recover better when bad things happen. New coverage includes DevOps, microservices, and cloud-native architecture. Stability antipatterns have grown to include systemic problems in large-scale systems. This is a must-have pragmatic guide to engineering for production systems. If you're a software developer, and you don't want to get alerts every night for the rest of your life, help is here. With a combination of case studies about huge losses - lost revenue, lost reputation, lost time, lost opportunity - and practical, down-to-earth advice that was all gained through painful experience, this book helps you avoid the pitfalls that cost companies millions of dollars in downtime and reputation. Eighty percent of project life-cycle cost is in production, yet few books address this topic. This updated edition deals with the production of today's systems - larger, more complex, and heavily virtualized - and includes information on chaos engineering, the discipline of applying randomness and deliberate stress to reveal systematic problems. Build systems that survive the real world, avoid downtime, implement zero-downtime upgrades and continuous delivery, and make cloud-native applications resilient. Examine ways to architect, design, and build software - particularly distributed systems - that stands up to the typhoon winds of a flash mob, a Slashdotting, or a link on Reddit. Take a hard look at software that failed the test and find ways to make sure your software survives. To skip the pain and get the experience...get this book.


Monolith to Microservices

Monolith to Microservices

Author: Sam Newman

Publisher: "O'Reilly Media, Inc."

Published: 2019-11-14

Total Pages: 285

ISBN-13: 1492047791

DOWNLOAD EBOOK

How do you detangle a monolithic system and migrate it to a microservice architecture? How do you do it while maintaining business-as-usual? As a companion to Sam Newman’s extremely popular Building Microservices, this new book details a proven method for transitioning an existing monolithic system to a microservice architecture. With many illustrative examples, insightful migration patterns, and a bevy of practical advice to transition your monolith enterprise into a microservice operation, this practical guide covers multiple scenarios and strategies for a successful migration, from initial planning all the way through application and database decomposition. You’ll learn several tried and tested patterns and techniques that you can use as you migrate your existing architecture. Ideal for organizations looking to transition to microservices, rather than rebuild Helps companies determine whether to migrate, when to migrate, and where to begin Addresses communication, integration, and the migration of legacy systems Discusses multiple migration patterns and where they apply Provides database migration examples, along with synchronization strategies Explores application decomposition, including several architectural refactoring patterns Delves into details of database decomposition, including the impact of breaking referential and transactional integrity, new failure modes, and more