Is there anything specific you do to make software "green"? Any sustainability goals your teams cater to while designing applications?
Sort By:
Oldest
Strategic Banking IT advisor in Bankinga year ago
The most underestimate element to support a 'greener software' is the datacenter infrastructure. I completely agree with Sven. We tend to forget the energy consumption of cloud computing. I think of one the biggest threat or impact on environment comes with data storage.In the era of big data, we store terabytes of information. As storage itself cost less and less, compared to 1990s, we often forget to ask ourself: do we really need to store so much data?
And to circle back to cloud computing, we now have a strong tendancy to forget the footprint of data while stored 'far-away'.
We definately need to become more conscious on this.
Steve
One is to evaluate the remote services you use as part of the IT development process, and see if they focus on sustainability themselves. Do they have certifications on this, or have a plan of action that they share with the world? Do their services run on 100% renewable energy? Etc.
Another is to develop software that is efficient in its resource consumption. Lower CPU and memory requirements means that the systems on which your software will run can run more software simultaneously. If it is data center oriented software, it also implies that more virtual servers can run on the same physical server. So the software efficiency translates into higher efficiency of the IT infrastructure.
Make sure your software does not have specific hardware requirements or operating system requirements that it doesn't really need. More specialized hardware or more diverse operating system requirements translates in a more diverse hardware landscape and lower efficiency overall.
Develop the software and the practices surrounding it in such a way that it is all fully automated, and that operations tasks are also just a API call (or other automation) away. By providing all steps (including the installation and decommissioning, upgrades, data migrations, etc.) in a fully automated manner, operations teams can focus on the automation of the environment itself, optimizing the resources and infrastructure even more (right-sizing infrastructure). Software that needs manual installation steps is often deployed in a pre-production environment and kept up and running even when there are no tests involved, whereas a fully automated environment can be installed from the grounds up, get up and running in a manner of minutes, run the tests, and decommission when no longer needed.
If you develop software that is shipped to consumers, reduce the waste material that surrounds it. It is more ecologically friendly to give the customer a download URL than to ship the software on a removable media. Have online documentation that is easy to read and consume, rather than delivering with 3 books (in multiple languages). An e-mail is better than a letter, which is better than a package. Etc.
Finally, evaluate your non-IT processes as well: push for a higher degree of work-from-home (or at least allow employees to do so), digitize your education/courses, pick conferences that are closer to you, etc.