If you like this content consider tipping in ETH, LINK or an ERC20 stablecoin at this address:
Until now, there has been an inherent contradiction in developing decentralized apps on blockchains for environmental good, because there is a huge environmental cost associate with securing the network. A blockchain is a ledger of transactions that exists on many nodes distributed across space, all of which must maintain consensus about that ledger’s contents. Adding blocks of new transactions to that ledger is rewarded with a valuable digital token (e.g. a Bitcoin). Expending energy on arbitrary computational puzzles is used as a proxy for authenticity. This is “proof of work” (PoW) because providing the solution to the arbitrary puzzle is definitive proof that energy has been expended. As the value of the reward tokens has increased, so has the incentive to invest in increasingly powerful and specialized hardware to solve the problems, incurring substantial energy expenditure and carbon emissions.
The dominant decentralized platform that supports applications, rather than only financial transactions in the network’s native token, is Ethereum. Ethereum currently uses a PoW protocol to choose who submits blocks of transactions. However, since its inception, Ethereum has targeted a wholesale replacement of the PoW protocol with an alternative where adding blocks to the blockchain is randomly assigned to validators that have staked assets. Validators are incentivized to behave in an expected manner by earning a passive return on their staked assets, and the potential for those staked assets to be “slashed”. This is “proof of stake” (PoS). Ultimately, both PoW and PoS are just mechanisms to show that the agent submitting blocks of transactions has skin in the game and therefore authenticity. The big difference is that under PoS, authenticity does not require arbitrary energy consumption.
Ethereum has been running a PoS side-chain, known as the “Beacon Chain” since December 2020, and plans to undergo “the merge” by the end of this year. Since PoS circumvents the need for arbitrary computation, the merge will reduce Ethereum’s energy consumption by over 99.5%. At this point, it stops being contradictory or self-defeating to develop decentralized applications (dapps) on Ethereum for climate and conservation.
In 2021 it can certainly be argued that data scarcity is a lesser challenge to climate and conservation than transparency, trust, accountability and information/power asymmetry. Those are precisely the issues that can potentially be addressed using dapps built around smart contracts. Without the weight of emissions pressing down hard on the cost-benefit see-saw, there is great potential for decentralized technology to have positive environmental outcomes. The majority of the dapps that exist today are part of the decentralized finance (“DeFi”) ecosystem, in which over $100B are managed entirely by smart contracts. While DeFi has its own set of drawbacks, it is gradually disrupting centralized finance by cutting human bias and perverse incentives out of the loop, transparently defining contractual agreements in unambiguous computer code (for those who can understand it) and leapfrogging costly middlemen.
To take inspiration from DeFi and start to build dapps for climate and conservation, real-world environmental data must be brought on-chain. This is challenging because this must be done in a permissionless and decentralized way because a centralized data source is a weak point in the system that can be exploited to manipulate the outcome of smart contracts. The solution to this problem is a data oracle. The dominant technology platform for data oracles is Chainlink. At the moment, oracles tend to be used to digest simple data such as aggregating prices of digital assets across multiple exchanges. However, at the same time as this technology is emerging, earth observation technology is becoming mature. There are now accessible platforms for processing huge volumes of remote sensing data rapidly and cheaply, using convenient APIs. Satellite remote sensing data has become the primary tool for understanding the natural environment, especially when combined with physical models, machine/deep learning and computer vision.
There is huge opportunity at the confluence of these two technologies – satellite and drone earth observation for understanding environmental change, oracles for digesting that data and pushing it onto a blockchain, and smart contracts that act on the data in an unambiguous, transparent manner. The emergence of DeFi also offers opportunities to efficiently allocated donated funds to level up their impact for conservation projects. I have gotten very interested in developing environmental dapps, especially during COVID times when I have been seeking ways to pivot exploring geographical frontiers to exploring technological ones – extracting maximum value and impact from data that already exists rather than focusing on adding data to the pile.
With that in mind, I am starting to build some model environmental dapps using Ethereum and Chainlink, starting with very simple model scenarios and demonstrations of key concepts (tokens, API calls…etc) and gradually building up to more realistic, complex dapps later on. The top-level title “EOLink” (Earth observation + Chainlink) will describe this collection of materials. I will be documenting my learning on here as well as publishing code on Github, and other materials developed ad hoc in the hope that some of it is useful to others interested in this technology.
Start with a simple oracle GET request HERE!
Notes: I am doing this because I think Ethereum and Chainlink are amazing technologies, I am building on my own, as a hobby, outside of my day-job. I am not selling anything or building anything commercial. Constructive criticism and technical advice is always very welcome, but I don’t need FUD. I’m also not interested in discussing token prices or general crypto speculation. Although ETH and LINK are real assets, nothing I say anywhere on this site is financial advice.
Right from the outset I will highlight DappUniversity, PatrickAlphaC, the Chainlink docs, Solidity docs and the Brownie docs – all have been incredibly useful resources that have helped me to upskill in smart contract development, please check them out.