Green Patterns

In architectural and computer science, a green pattern is a programming best practice intended to reduce the environmental impact of IT. The intention behind green patterns is to make software more sustainable.
The expression refers to Design Patterns, which describe recurring solutions to common problems in Object-Oriented programming.
Overview
The reference to design pattern implies a scope focused on software and not on hardware infrastructure. We define the green patterns as programming actions. They are not related to CPU or memory optimization. A lot of other frameworks exist for hardware and datacenters optimization.
A green pattern does not intend to create performing or maintanable software : other patterns are dedicated to these problems. Green patterns are focused on reducing energy consumption of software. Performance and green patterns can sometime, but not always, be in opposition.
Green patterns might also be in opposition with ergonomics. They might make the application slower or diminish the “wahoo effect”. The challenge is to find a compromise between the best user experience and the lowest resources consumption, i.e. the lowest environment impact.

A metaphor for a green pattern could be a solar car: this kind of car compete at Salt Lake City running quite slowly, but they can be driven for hundred of miles without one single gallon of oil.
Comparison to consumer electronics
Consumers are more and more aware of electronics impact on environnement : everyone has heard about the problems for recycling these kind of products. Some organisation, like GreenPeace, publish regularely surveys on company trying hard to make cleaner products. These kind of survey help consumers to buy cleaner products, and more and more companies start to give information of themselves on their products impact on earth.
The idea behind green patterns is that software vendors could use them to improve their applications impact, and then eventually communicate on this impact reduction.
 
< Prev   Next >