Green Computing : Let Your Codes Help Reduce Emissions !!!
Navjyot Mitter | Tuesday, October 16, 2018 |
Category: Green Computing
While the world is working hard towards a greener planet in terms of reducing plastic, conversing our forests, reducing fuel waste, using clean sources of fuel and recycling non-biodegradable waste, the software industry is relatively untouched in terms of energy saving models.
In a world of super-computers, robots, information clouds, and state-of-the art mobile devices the knowledge of reducing emissions from these devices has not be greatly pondered on. With every household having a minimum of 7-8 computing devices (laptops, mobiles, tabs, etc) reducing emissions from them can certainly help us drastically in a collective way. Bulky soft wares with excessive and unnecessary visual graphic features, unnecessary background applications, redundant apps are the major culprits in emissions from these devices.
While a software must be designed in a way that it is user-friendly, comprehensive and at the same time user-friendly, it must also be light and energy efficient. A few tips on how to make your codes greener are as follows:
- Avoid unnecessary features:Most Software apps though serve beautiful user interfaces, however have several gateways that could be avoided, for e.g.: Asking the user the same question in different ways or letting the user see how their files are being deleted (Shifted to recycle bin) these features are unnecessary and consume extra power.
- Log data efficiently: while logging progress and intermediate steps often helps developers debug and rectify defects, comprehensive log files stored on the server after the software has been successfully deployed are usually rendered useless and waste a lot of space and energy, efficient logging to create optimised logs that will help detect the root cause of bugs and at the same time be energy efficient are the need of the hour.
- Inefficiently interpreted languages: Most apps when developed in several programming languages that are not compiled to effective machine codes need an interpreter to convert the programming language into the machine code when the application runs, these interpreted codes consume more power and the system must work more to finish the same task and thereby add to wastage.
- Shared Servers: Having applications run on shared servers is more energy efficient than having applications run on individual servers and having the servers on even when no application is running on them.
- Background applications: many applications are designed to be running in the background even when they are not being used actively, these applications consume space on the RAM, reduce the efficiency of the system, consume power and thus are not beneficial to the user as well, Having smarts apps that hibernate or stop when not being used actively is certainly a good way ahead to an energy efficient clean digital era.
These are few things that can be done to develop more efficient soft-wares, it would also be beneficial to train soft-ware engineers to develop codes/ learn languages that are energy efficient, agile and help reduce emissions. While going paperless will help conserve our green planet, using efficient apps will take us a long way in the future of digitization.