This code is part of my Master's Thesis at NTNU, Autumn 2021.
During my previous semester at NTNU, I started to think about how much we use the Internet. That is when I began to dig into the climate consequences of the Internet and found a book written by Gerry McGovern - World Wide Waste. The book made me realize that the climate impact of the Internet is vast and that we need to do something about it before it's too late.
During the 26 years I've been alive, no one has told me that I emit CO$_2$ equivalents every single second that I'm using the Internet. During the five years I've been studying computer science, no one has told me about how the things I deploy to the Internet pollute; Everything we do on the Internet uses energy.
I feel like we today are seeing the Internet as we saw the ocean 60 years ago or so. We don't know what's happening when we upload all our images to the cloud; in the same way, we didn't realize what was happening when we threw our garbage in the ocean many years ago. But today, the consequences of all the trash that we have thrown into the sea are getting clearer and clearer. That's why I think it's important to focus on saving the Internet before it is too late.
Not many years ago, the cloud became what everyone was talking about. The cloud sounded great. We could upload everything we wanted without thinking about where we last had seen our hard disk. We didn't have to go to the store anymore to buy larger hard disks. We didn't need to worry about losing our hard disk anymore. Well, the cloud isn't a cloud. The cloud is just a lot of massive data centers stored worldwide, consuming enormous amounts of energy. Every time you access the cloud, you access a data center with your files stored on their hard disks. Your data then travels from the data center, in cables, through the world back to your computer. And the worst thing is; as long as you have data stored in the cloud, the data is constantly polluting. The cloud doesn't work like your hard disk, where it is turned off when you don't need your photos. Every image, file, and video you upload to the cloud will pollute until it is deleted. The cloud is always on. You are constantly using the world's resources.
Every time you visit a webpage, you pollute. Every time you send an email, you pollute. Every second you are watching a movie on Netflix, you are polluting. We can't stop using the Internet, and we shouldn't, but we should use it correctly so we are able to reach the climate goals. We need to stop digital littering. We need to raise awareness around the Internet and its carbon footprint. We need to find a sustainable way to use the Internet.
The goal of my master's thesis is to make people more aware of how they pollute when using the Internet. The ultimate goal will be to change the participants' behavior on the Internet.
This project uses a Chrome extension to estimate the CO2e emissions from web browsing. It calculates the emissions based on the destination country's carbon intensity. First the amount of data sent and recieved is converted using a factor of 0.09 kWh/GB. Then the emission factor of the destination country is fetched from the JSON object stored here
The system consists of the following components:
- DataCollector: The Chrome extension's background page and content scripts
- DataPresenter: The Chrome extension's UI
- DataAnalyzer: The API
- DataVisualizer: Webpage to explore the usage
- pnpm is used as package manager. Install the packages with
pnpm i
- A Firebase service account is required to run the data-analyzer package (You need to be added to the Firebase project or create your own Firebase project)
- Either navigate into a specific package or run all packages from the entry folder with
pnpm dev
- To run the tests: Install Firebase emulator suite and start the emulators. Run the tests in the data-analyzer package with
pnpm test
- To build the project run
pnpm build