Is Low-Code Development Better for the Environment?
No code and low code are part of the greater citizen development movement. Its goal is to have more people, even those without technical training, participating in the creation of technology. If done correctly, these technical building blocks should allow for faster builds that save organizations money. They can also free developers from handling repetitive, mundane tasks.
But, as the United Nations Climate Change Conference (COP27) left an even greater sense of urgency in its wake, we’re reminded of the need to consider environmental impact throughout the software development life cycle — including the impact of the third-party tools we use every day.
IT and telecommunication are the only major industries that are on track to grow their emissions, which are already at about 12 to 14% of total global emissions. Tech companies must do better now, and carbon footprint must influence tech consumer choice.
Is low-code or no-code development or serverless actually greener? Turns out, according to Paul Johnston, a consultant who provides interim chief technology services, “It all depends on what is meant by low code.”
Here’s how to start working out the carbon footprint of your different low-code options — which in turn will help you make faster, more reliable code.
Defining Low Code vs. No Code vs. Serverless
Low-code development comes with fewer choices, which should mean less development and less technical debt — which should logically mean lower carbon emissions. But a lot depends on which tools you’re outsourcing part of that coding to, and where they host. First, we need to clarify what we’re talking about when we compare no code, low code and serverless.
As Jessica Wachtel, a New Stack colleague, wrote in her recent article “Low Code vs. No Code”: “Both low code and no code allow faster application builds and applications builds where they may not have been possible at all. Both processes could include automated and abstract development by way of drag and drop, limited code writing, templating and model making.”
Instead of writing all the lines of code, developers drag-and-drop workflows. No-code development requires less or no coding knowledge, but may also offer users less flexibility and interoperability, Wachtel warned. Both of these trends aim to create a highly visual common language for both technical and non-technical users.
Serverless architecture, on the other hand, is a combination of a Backend as a Service and ephemeral containers running on a Functions as a Service platform, as Mike Roberts, a cloud architecture consultant, described on author Martin Fowler’s website, and event-driven architecture, as TriggerMesh’s co-founder Mark Hinkle wrote for The New Stack, all with a low-latency data layer and a strong emphasis on automation.
Johnston told The New Stack that serverless is basically “doing low-code and no-code development at 100 miles an hour.”
Decoupled event-driven architecture is inherently more scalable and energy efficient because it works in real time, only performing actions when triggered by other actions. Low code and no code aren’t necessarily event driven, though they can be.
Low code/no code allow you to throw things in a container, which doesn’t necessarily increase efficiency, Johnston said. But with serverless, you are entirely reliant on the cloud provider and their functions, data layers, and event system. “And because of all that, what you’re doing is clearly and simply reducing as much as possible your application design to remove complexity,” he said.
Serverless code, in turn, is simpler and more scalable, and thus more efficient.
Can’t Fix What You Can’t Measure
We know a reduction of carbon footprint is a widely held environmental goal, but we often make assumptions on how that should be measured. Of course, these measurements become even more challenging when using a third-party tool.
Zapier has been one of the most recognizable low-code tools for over a decade now. Like its competitors If This Then That and Make, Zapier pushes data from one service to another via an API or interface.
“Something like a Zapier is essentially saying all of these interfaces are known, stable, secure, so we are going to provide you a way of connecting things together,” Johnston said. ”In many ways, that kind of a platform is going to be better in terms of management and maintenance for the developer.” But its carbon efficiency depends on how efficiently it runs and where it’s hosted.
Zapier, which is more transparent than other tools we examined, hosts on Amazon Web Services (AWS) in the U.S., which in turn is notoriously hit or miss depending on where its servers are located— with Virginia’s Data Center Alley being usually the worst. Zapier doesn’t specify where in the U.S. it hosts.
No matter what, the cloud is inherently better than on-premise data centers, as these newer facilities have hardware that’s more efficient at cooling, and higher utilization rates across shared and as-needed servers. This means less downtime for maintenance, which means less electricity is needed to start the servers back up.
AWS research has found across multiple studies “that AWS can lower customers’ workload carbon footprints by nearly 80% compared to surveyed enterprise data centers, and up to 96% once AWS is powered with 100% renewable energy.” As of the end of 2021, Amazon reached 85% renewable energy and today reports it is the world’s largest corporate buyer of renewable energy.
As The New Stack has already reported, cloud cost remains the best proxy for environmental cost — for which, Johnston contended, “Serverless will be cheaper by orders of magnitude.”
Comparing two other low-code platforms, he said, “I know so many people who are running WordPress websites, spending thousands of pounds a month and it’s open source, but you can spend pennies with serverless,” pointing specifically to the serverless functions used in Netlify, a website and application builder.
Indeed, Netlify’s Jamstack architecture is notably sustainable. “In a non-Jamstack architecture, whenever a user wants to go to a URL, the page is built by the server, and the user’s browser. This can be a drain on computing power, depending on how heavy a website is,” Cassidy Williams, adviser for Netlify and CTO at Contenda, a creator of artificial intelligence tools, told The New Stack.
Jamstack-style sites, on the other hand, use static-site generators, which “are built once, in that when they’re deployed by developers, the site is bundled in a way that when the user hits that URL, a server isn’t needed, and the browser just has to display what’s already built,” Williams said.
Netlify compresses dynamic websites into static ones, making the carbon footprint of a website on Netlify smaller than that of a traditional website, which rebuilds each page every time via server-side rendering.
In addition, since Netlify auto-scales infrastructure, there are no extra servers running, which breaks the data center industry’s bad habit of provisioning for double the amount of servers needed. Hosting on both AWS and Google Cloud, Netlify states: “We actively manage the scalability of the sites we host on our providers by only adding resources when spikes in traffic require them and shut them down when they are not in use.”
While low code and no code look to simplify the development process, serverless can make it more complicated, relying on designing more intentionally — and more slowly — upfront, focusing on improving user needs and scalability. “To reduce cost, it becomes a process problem, not a technical problem,” Johnston said.
This isn’t something that can be easily done with low-code/no-code tools like Zapier — which he said is “all about the blocks [when] we should be looking at how well-designed the interface is. How easy to use is the interface. What you’re actually interested in is the API, which is why you look at AWS” for the answers.
“If this is well designed and it just works over time,” Johnston said, “then the likelihood is that it’s the most energy efficient.”
How Green Is Serverless?
Generally speaking, a no-code or low-code third-party application or tool that is pursuing continuous improvement, will be more likely to maintain or increase efficiency over time, while older applications managed in-house will become less efficient.
So, in reality, is low code or serverless greener? “That could be definitely broadly true in some cases,” said Astrid Atkinson, CEO and co-founder of Camus Energy, a grid management platform for utilities. Because, she told The New Stack, “if you manage in serverless or low code, you typically are in a model that only spins out resources when you need them.”
She added, “There’s certainly an argument to be made that serverless increases efficiency of a data center fleet.”
Leveraging third-party tools will always be cheaper and more efficient than building from scratch. But Scope 3 emissions —those that are not directly produced by a company itself but are produced as part of its value chain — make it incredibly hard to figure out that environmental impact.
When companies are considering third-party tools, “they should actively go and seek the sustainability statements and reports of the cloud provider they are using,” Atkinson advised. “Once they’ve understood what choices they are making in terms of the base impact of the energy footprint of their data environment, they can optimize by using resources more efficiently.
“Serverless is great at that,” she noted, as it only uses the compute resources it needs in the moment. Also, “using compute-efficient languages will definitely reduce the overall footprint of any given workload.”
However, Atkinson noted, the vast majority of data center impact is generated by very large users, which, she said, find it “very, very difficult to take advantage of serverless,” as they are bogged down with resource overhead. This, she said, makes it much harder to optimize the usage of compute resources for workloads, to schedule instances, and to allocate resources.
Consider Your Application’s Full Life Cycle
“Faster is better for the environment. There is a direct correlation between speed and energy usage,” Johnston said.
How is that achieved? If you’re just using a huge number of servers, it’s never going to be efficient. But when you have “an incredibly efficient application that does exactly what it’s supposed to do and can scale at any size,” he said, you aren’t just ensuring your current energy usage but your usage across your application’s entire life cycle, from design to retirement or replacement.
Therefore, while it’s simpler to calculate cloud cost, a better proxy for energy efficiency is an application’s total cost of ownership over its entire lifecycle. This includes how much time and effort has gone into designing, developing, managing and maintaining the app, combined with the cost of hosting, network, usage and retirement/replacement — namely, is it maintainable? The Institute of Electrical and Electronics Engineers (IEEE) has long tied software sustainability to software maintainability.
Then, “usually, relying on economies of scale from a cloud or SaaS provider can give you improved energy efficiencies, limiting the amount of effort to put in,” Johnston said.
He added, “you can still get things wrong, but the point is you generally have to fix less,” as you have a smaller codebase and everything is more about interfaces and optimizing for flow.
Overall, as tech ethicist Anne Currie once told The New Stack, machines managed via cloud providers are simply more efficient than human-managed storage and hosting. So while there are better clouds and especially better hosting regions than others, the managed cloud will always be better for the Earth.
Of course, with more abstraction when you use a third-party provider, “you have to trust the providers are going to do what they say they are going to do,” Johnston said. “We are talking about reliance. And we are talking about putting that trust in the provider, such that we can focus on the elements in the application that are actually important, rather than building all the code.”
Then comes continuous monitoring and observability to maintain or increase that efficiency. For example, if you see a 5% increase in latency, you start to look at why, which Johnston said “you can’t do in a low-code, no-code [tool] like Zapier because you’re not really in control. But in a serverless environment, you have that control … and it’s more efficient and you are maintaining less, reducing maintenance, and the system should be more efficient over time.”
Can You Abstract the Carbon from Low-Code Sites?
Just because it is hard to build greener low-code tooling, doesn’t mean engineers aren’t trying to.
Fershad Irani, a website sustainability and performance consultant, told The New Stack about building Flowty to help people build and host greener no-code sites through the low-code, drag-and-drop website builder Webflow.
Flowty, Irani said, came about after conversations among members of the ClimateAction.Tech community who built websites for clients using Webflow, “but wanted to do so in a way that was more sustainable than Webflow offers.”
This demand arose because Webflow uses AWS for hosting. “Amazon’s a sustainability laggard among major hosting providers,” Irani said. “The people I spoke to were looking for a way to have sites hosted on greener services, while still being able to edit and maintain their sites on Webflow.”
Webflow says it’s carbon neutral via carbon offset donations to Pachama, which looks to leverage technology to restore nature. However, those community members wanted to better address Scope 3 emissions. These are often the largest emissions for software companies, as these include any data centers they use, even those managed by an external cloud provider like AWS.
The Flowty project also aimed to reduce the weight of the Webflow pages in order to decrease load time and increase speed. “Some content optimizations are available on paid Webflow plans, but others, like optimizing images or embedded videos, are lacking,” Irani said.
In the end, Webflow brought a cease-and-desist order against very similar tools, deeming them in breach of Webflow’s terms of service. In response, Irani open sourced Flowty on GitHub and sunsetted the project.
No matter what a no-code or low-code tool is trying to achieve, a lot of it comes back to where the tool user hosts. “I don’t have much experience with other no-code tools, but I’d assume using AWS is a key part of how they are built. I’d love to know that others are being more active in their efforts to use cleaner sourced services,” Irani said.
While the Big Three account for two-thirds of global cloud computing, and “all have pledged to fully decarbonize their data centers, none have completely divested from fossil fuels,” according to Maryam Arbabzadeh, director of science at Climatiq.
Based on Climatiq’s data, generated by the open source tool Cloud Carbon Footprint, all three companies potentially greenwash via offsets, depending on the region in which they operate because they still have sites, especially in the Asia-Pacific region, which heavily rely on fossil fuels. Therefore the greatest criticism of AWS lies in its poor transparency and carbon footprint reporting, which still don’t reflect Scope 3 emissions.
Vetting Vendors for Sustainability
There are two ways to look at any vendor’s energy footprint, Atkinson said:
- Physical carbon footprint: carbon intensity on the wire
- Economic carbon footprint: financial or market arrangements, trade-off incentives, carbon offsets and power purchase agreements, which help contribute to energy transition
If a company really cares about their impact, it should be pretty apparent on their website, Atkinson said. Look for “any stated net-zero carbon goals and do they report progress against them.” She added, “Whereas if they aren’t making any statement whatsoever, then they probably don’t care very much.”
Reflecting on some big names, Atkinson said, “Meta focuses a lot on using their data center resources to push decarbonization on the broader energy supply. Microsoft and Google provide data center details.”
By contrast, she said, “Amazon doesn’t have any specific policies around decarbonizing their data center supply mix.”
She noted that Microsoft also invests in a lot of innovative programs, including proving the effectiveness of underwater data centers. “Amazon is a bit of an outlier,” Atkinson said, echoing Irani.
Appian, which makes a low-code development tool, is doing interesting things around embedding environmental, social and governance (ESG) goals into operational processes. Its website states that Appian integrates pre-existing data systems and “virtually any third-party data source, including ratings, benchmarks, and analytics providers,” which should make it easier to report.
Now what remains to be seen is if companies actually set such goals and publicly share the progress against them. “If they have broader ESG goals, the behavior or targets set by their providers are often provided in ESG-type reporting and it’s worth considering what the goals of your carbon policy is,” Atkinson said.
Atkinson suggested this should include:
- Minimize carbon impact.
- Optimize for overall ESG impact.
- Include formal reporting in your goals.
You can spot red flags too, she said. For instance, “if they are involved in crypto[currency] or any form of blockchain that’s intentionally, wildly inefficient.”
And don’t forget, she reminded, to “understand the landscape within your own company environment and how much you are considering these when you are making technical deployment choices.”
For more on green software development, check out this episode of The New Stack Makers podcast: