This week the two worlds of software development and sustainable design started to line up and I predict in the coming years this area will come into sharp focus (it’s quite fuzzy at the moment - as you can find out if you look for research).
Sustainable design was a large part of my design degree but we don’t think of coding as a physical product that has a environmental footprint. It does.
Lifecycle analysis (LCA) is complex for tangible products and more so for services. Sustainability concerns for software development is more similar than it is different to the concerns for industrial design.
The lines of code we write run on hardware somewhere that is powered by electricity on machines that have been built using materials that are extracted from the earth and processed, transported, dismantled, recycled and disposed at end of life.
All of this, the bits in between and in the web of related activities have a measurable cost in terms of economic, environmental and social impact.
Designing with this in mind, similar to when we design for accessibility or inclusivity, has an interesting side effect - it makes our products better, more efficient, simpler, more cost effective and simpler. Oh, and more competitive.
And writing lines of code is an act of design - as is pretty much everything.
Some interesting stuff to read:
Principles of Green Software Engineering