BLOSSOM-ADDON

Let’s fight against digital pollution It is an free extension that will track your browsing habits and data consumption.


Blossom AddOn is our solution to digital pollution. It is an free extension that will track your browsing habits and data consumption. Our goal is to aware people on their ecological impact. While supporting you in a more responsible use of the internet.

alt text

Download

https://addons.mozilla.org/firefox/addon/blossom-addon/

Presentation

Introduction

Digital devices create more pollution than we imagine:

In fact, during all its lifespan digital objects pollute, and these devices create 4 times more CO2 than the whole of France.

First because they require rare metals to be manufactured.

Then between elevated levels of electricity consumption caused by datacentres and users’ homes but also by growing internet traffic.

And finally digital objects are hard to recycle and most of the time they end up polluting less developed countries.

So now you understand that nothing is genuinely immaterial, and internet traffic is in constant growth, that is unless we restrict it. Hence, we took it upon ourselves to develop a tool to limit users’ data usage.

On this graph, we can observe a dramatically increase of the data traffic since 2016.

As mentioned above, we chose as a group to develop an internet extension to educate and limit our data traffic. We named it Blossom Addon, after the tree that characterises it. “How does it work?” you are wondering. To give a short answer, it measures the data flow generated by loaded web pages and gives a conversion into rejected CO2. We will delve into more detail shortly. As a bonus, it is personalised to each user, and as a result it accompanies you on your journey to being Eco responsible and conscious on the web.

alt text

A brief review of what we know now

Nowadays, the consequences of digital pollution are increasingly significant. Because of this, some solutions exist to limit its impact.

First, from a user’s point of view, we must buy sensibly and moderately. Besides, second-hand resale is becoming increasingly popular. Also, some companies recycle electronic items, enabling a decrease in pollution, which often accumulates in natural places. In addition, while using our electronics items such as laptops or phones, we can significantly reduce our energetic consumption daily through simple actions. It is a common misconception that using phones or laptops rather than paper means that we are not polluting. Nevertheless, the electronic industry needs a vast number of servers to stock all our data that consume tremendous amounts of power to cool theses centres down.

Unfortunately, all these solutions are limited one way or another. We cannot force people to cut back on their habits neither in personal nor professional settings. In this modern era, people are accustomed to high quality data, and it is exceedingly difficult to return to a more restricted or measured consumption. Additionally, despite the huge amount of time spent on the internet by the general population, people are uninformed of their actions, especially of the effects of said actions. Finally, it is important to warn people of this problem. We think that many people could adopt better practices if they knew how to.

Our principal aim while developing Blossom Addon was to cut data consumption in a more user-friendly way.

We had two main objectives:

Make it easier for users to curb their data consumption

inspired us is the site/app CleanFox. We all receive unwanted spam in our inboxes. What this app does is allow you to delete unwanted emails and cancel subscriptions to newsletters that easily invade our mailboxes, thus cutting emissions caused by sending these emails.

The second one is to educate users about good habits to take

We had to find a way to motivate people to act better, and we found that applications that allow you to focus on your current task like Focus-to-do or Focus Plant were the best instigators. In our case, every week if the user doesn’t exceed a certain amount of data traffic, he will earn points and his tree will grow.

Technical details

A – First use quiz and option page

When our users first open the app, they will be greeted with an entry quiz to find out their preferences. We have not added this feature to the extension yet, by lack of time. Therefore, we have only coded an options page, which will resemble it a lot. This page is made up of checkboxes to change the choices made at the beginning. This customisation allows you to choose between different parameters, such as the number of limitations the app will impose on you: you can ask it to reduce streaming quality, to receive notifications… The page is up and running, and the options can be saved, but for now they don’t do anything functional.

B-JavaScript programming to obtain the amount of loaded data

In the background, a lot is happening within this app. We created a database with JavaScript to save the amount of data consumed by communicating with the site visited; when a page is loaded, it is sent as a package or a whole; and by reading the size of this package we could determine the amount of data received. This doesn’t create lot of data because it is saved within the users’ pc, and not in cloud. As a matter of fact, the data counter resets itself every Sunday, to make the weekly report easier to code.

Most of the functions of our programs have been created from scratch, such as the getWeek() function, which allows us to retrieve the number of the current week to associate it with the user’s data consumption.

To display our graphs, the use of asynchronous functions was also necessary to optimize the response time and reduce the waiting time. For example, when we load the weekly report, the advice section is displayed first because it’s faster to load, then the graphs when all the calculations are done.

C- Creation of a database to categorise sites

A second database was needed to categorise the different websites for the weekly report. To do this, we created a short questionnaire that we all shared on our social media accounts. It included questions such as “what sites do you use the most?”, “what email services do you use?”, to help us build a database full of websites that the public uses but that we didn’t necessarily think of. In total, we got just under 200 responses, that helped us categorise around 150 websites. To resume, two databases were coded, a first for storing what is happening on the extension and a second including all the sites that we have listed associated with the category to which they belong.

D- System for evaluating data consumption

To define what tree corresponds with which score, a rating system was needed.

We did some research about average consumption per hour by category and average time spent by the population in these categories. This helped us to determine the users’ “virtuosity” limit in each category (mails, streaming, searches, social medias, downloads, and others).

In the case of emails, we considered that we send 5 emails per day on average, and we had to consider the fact that an email will generate 33% more data traffic than the weight displayed. Thus, it gives us an average of 81 KB per email, but we also needed to take into consideration the Email page loading data consumption. To calculate that we used our own extension, by scrolled and checked our mail box during 1 minutes, to have a data consumption by minutes and we added it. At the end, the virtuosity limit per week in the “email” category is around 500 MB.

The scoring system is based on a score out of 100 and the user starts with 100 points. If the user exceeds the defined consumption limit, he will lose one point for every 10% over the limit of the category. For example, in the Email category the limit of virtuosity is around 500 MB, and 10% of that is 50 MB, and if the users go passed the limit, every 10% he lose one point.

In addition, the calculation of points is updated each gliding week, which means it considers the 7 previous days, and not Monday to Sunday like a conventional week. Ex: if it is Wednesday, we will consider the points accumulated since last Wednesday. Also, the first week of usage will be an observational phase for our extension, as our extension doesn’t have enough days to calculate and attribute a tree.

In the future, we would like to attribute badges to users. The purpose is to reward people who already have the maximal score to continue their efforts and to encourage people who have a very bad score. An example of badge is “you reduced your consumption since two consecutive weeks”.

E – Evolution of the tree

To encourage users to improve their habits on the internet, and as a reward system, we attributed a different state to the tree, according to his or her ecoscore. As the points system is out of 100, we decided to give the tree 10 different appearances, from almost dying to a blooming tree. So, if our user has a score of say 81, then they will be shown this tree (show on the board), the one corresponding to a score between 81 and 90, and so forth.

F – Weekly Report

As We explained to you, every user will have a weekly report, and now I am going to give you more technical details about it. To make this we used HTML to display everything at its own place on the page. Then obviously we knew we needed graphs to have an understandable visual for the user. For that we used morris.js, which is a library, in other words, it gives us the structure already coded, so we just needed to understand how to use it and implement our data.

Of course, we also created a function to convert bytes into CO2, this conversion was made thanks to the 1-byte model created by the shift project, which works towards creating an economy free of carbon emissions. These calculations take into consideration the energy consumption made by servers and networks, and how many grams of CO2 are emitted per country to create this energy.

Finally, to make it more recognizable, the page required personalization, we did it thanks to a CSS page that allowed us to define the background, the font, and the font colour.

Conclusion

Overall, we reached the main objectives that we set ourselves during these last few months. Nevertheless, we would like to continue to work on this project during our free time to enhance the add-on.

First, we intend to adapt the score mode thanks to the recommendations of our beta-testers.

We also want to add an entry quiz to personalize the user’s experience.

Another idea is to propose one article per week about digital pollution, that enables to inform the users more about this type of pollution.

Finally, after some weeks of usage by different users, we will have some unknown websites in the “other” category, and we will add these into the adequate category and certainly add extra categories.

To conclude, digital pollution should be more communicated to people because as traffic data keep increasing, pollution does too. To fight this, the first step is to inform populations, everybody must be aware of how much pollution is created through the digital industry. Thanks to Blossom AddOn, people will be aware of their own consumption every day and every week. In addition to that they will be able to reduce it thank to our advice and our motivational tree.

Blossom AddOn is now available on the Firfox addon store thus help up to save the planet and download our extension!

alt text

GitHub

View Github