Fifty-four years ago today, the first Earth Day was celebrated, signaling the start of a global environmental movement. Since then weβve come a long way in environmental sustainability and technology. Of course, with significant concerns like climate change, deforestation, plastic pollution, etc. we also still have a long way to go.
As developers, we can play our part in supporting environmental causes. Whether itβs creating new tech products that support scientists with research, helping companies to become more sustainable, developing citizen science projects, or creating a webpage that brings attention to a certain issue, we have skills that can be used for Earthβs benefit.
So to celebrate Earth, our only home, Iβm sharing five ways that developers can celebrate Earth Day:
1. Participate in DEVβs Earth Day Frontend Challenge
As the inspiration for this post and likely one of the first things youβll see when logging into DEV, this needed to be mentioned first. In honor of Earth Day, DEV is hosting a Frontend Challenge this week. There are two projects that you can submit. One is creating a piece of CSS art inspired by Earth Day and the other is an Earth Day landing page with JavaScript and CSS. Make sure to submit by April 28th. Have fun! Thanks, DEV Team! @thepracticaldev
2. Contribute to Sustainable Open Source Projects
With the explosion of ClimateTech over the last several years and tech being broadly applied to create a more sustainable world, there are many open-source projects developers can contribute to.
GitHub has a list called For Good First Issue which features repositories that help to contribute to the Sustainable Development Goals(SDG). The SDGs are a set of goals mutually decided on by UN member nations, that aim to make our world more sustainable - environmentally, socially, and economically. To contribute to one of these open source projects you can filter the list by language base or even the SDG the repo is trying to achieve. Once in a repo, check out its README to learn how to contribute and a list of βGood First Issuesβ that you can get started on.
ClimateTriage provides another long list of open-source projects that are all environmentally focused. You can contribute to a wide range of projects that are helping to address climate change through sustainable development, energy efficiency, natural resource conservation, and more. You can filter the list by language and sort it by recent issues, the age of the project, or how many downloads or stars it has. Generally, when it comes to open-source code, the more active and the better-rated the repo the more reliable it will be.
3. Use Open Data to Create Climate Data Visualizations
Similar to open source projects there is a wide range of open data available on climate metrics. As a developer, you can use the APIs from these open data sources to create visualizations using your favorite languages and libraries. For example, you may want to use Pythonβs MatPlotLib library to create a bubble chart of CO2 emissions by country. You can host these visualizations anywhere you publish your code.
A couple of sources for climate-related open data is OpenClimateData.net which is a curated list of sources for open emissions and climate agreements data that are made public by various NGOs and the UN. Another great source for open data is this GitHub repo by Dr. Kasia Kulma, as per her bio a data scientist focused on using data for good. The repo is extensive and not only does it offer open data, but many APIs and open source projects as well. Check out the repoβs README to see the long list of links.
4. Check Your Site's Carbon Emissions
Using the Website Carbon Calculator you can learn how much CO2 emissions your website is responsible for. The API behind this calculator calculates emissions your site and your host site are responsible for. You can even display a badge on your site that shows your siteβs emissions through an embed code block. On the site, you can learn more about green hosting and sites that you can host your next site on or switch your current domain to.
5. Utilize Sustainable Web Development Practices
Expanding on the previous number in this list, our websites and apps do have an environmental impact. This is most notable in the energy consumption that impacts both our local grids where we are coding and the grids where our data is stored and our apps are being run. Every time someone makes a request to run an app or site, energy is used to fetch that data from the host server and send it to a local browser or app.
There are methods that we as developers can use when working on projects to limit this run time so that our sites and apps are energy efficient (and have a better UX). Similarly, there are design choices that can achieve the same effect. Some examples are: having clean, easy-to-read code, where each code block serves a purpose; limiting the number of times your site or app has to fetch external data; and making sure to close any asynchronous processes that arenβt needed at every moment your site or app is being used. The list is long and could easily be another post but to learn more you can check out Sustainable Web Designβs guidelines. It offers methods for designers and developers and includes other considerations like hosting and product strategy.
In summary, as developers, we have many options for using our skills to protect and restore our home - Earth. I hope this list provides some inspiration to contribute to open-source projects, build an app of your own, or be mindful of your development decisions. If you know of other great resources feel free to share them in the comments below.
Happy Earth Day!
ππ±ππ§π