In our latest Digital Lighthouse episode, Zoe Cunningham is joined by Anne Currie, Community co-Chair of the Green Software Foundation. She is a veteran software engineer and start-up founder, currently working as a community specialist at FlatPeak, with past career positions of Head of IT, Head of Technology and Chief Strategist, across several technology companies.
Anne shares her experience and talks about the key pressing climate issues for the tech industry right now, the best things that tech teams can do to reduce their impact on the planet, and what research is saying about how the digital age has changed. Learn more by listening to the podcast or reading the full transcript below.
Digital Lighthouse is a mini-series of Techtalks brings you industry insights, opinions, features and interviews impacting the tech industry. Follow us to never miss an episode on SoundCloud now: See all the Digital Lighthouse interviews online for free on SoundCloud
***
Transcript
Zoe Cunningham: Hello and welcome to the Digital Lighthouse. I’m Zoe Cunningham. On the Digital Lighthouse, we get inspiration from tech leaders to help us to shine a light through turbulent times. We believe that if you have a lighthouse, you can harness the power of the storm.
Today I’m super excited to welcome Anne Currie, who is, I would say an ambassador for green tech. Can I call you that, Anne?
Anne Currie: That’s a very nice thing to say. I think that’s probably accurate, hopefully anyway.
Zoe: Well, welcome to the Digital Lighthouse. Can you tell me a bit about what you do now and how your career developed, I guess, to bring you to where you are?
Anne: At the moment I am on the leadership team. I’m the Community co-Chair of the Green Software Foundation, which is a new Linux Foundation there, to educate and support companies in moving over towards sustainable design, and sustainable architecture, and sustainable hosting for their tech products.
I’m also part of a start-up, even though I swore I would never, ever, ever join a start-up again. I’m part of a start-up around the Greening Grid. Providing data to devices so that they can actually make better, smarter, and more green choices.
My path to getting to this point was, I was a very hardcore software engineer in the ’90s when everything had to be incredibly efficient and low electricity, low carbon usage because the computers were really terrible. I started there and they were all C servers, so all very efficient stuff. Kept doing that for quite a few years, then ended up doing various start-ups. Then, 10 years ago, moved into how hosting can be more efficient. Then, I realized that really we had to make it more efficient for it to be greener. That is how I got to where I am today.
C got me to where I am today, but what got you here won’t get you there. C is not really the scalable answer to how we get to the next stage.
Zoe: That’s really interesting because it slightly pre-empts my next question that, I think we’re in an industry that is highly dominated, I would say, by young people and very open to the ideas of young people and very welcoming. However, sometimes that can mean that we lose the lessons of the past. I think this reference back to how in the olden days we had to be super-efficient with our coding because the capacity was just not there in the hardware. It’s almost as if as resources have expanded, we can almost get a bit lazy in terms of how we think about using them. Is that fair?
Anne: Oh, that’s more than fair. That’s entirely true. In fact, it’s certainly been the case that over the past 30 years that I’ve been in technology, we have consistently prioritized developer productivity over machine productivity. Hardware engineers have done an amazingly good job. Physicists have done an amazingly good job at upgrading the hardware that we’re running on from servers to laptops and to phones. In most aspects, we’ve got at least 1,000 times better resources now than we did the equivalent of 25 years ago, say, but we don’t use it to be 1,000 times more efficient, we use all of those resources to make developers develop faster.
As I said, I mentioned C. C was very efficient in language but it’s very slow to developing. We didn’t really want slow progress, we wanted faster progress, so we moved to languages that were much more abstract, much less efficient as a result. Now, I’m not necessarily saying we should go back to C, I don’t think we should, but there are lessons that we can learn from then, that are not always all about developer productivity, but sometimes they are. Sometimes you can align developer productivity and greenness. If we can manage that, then we really have hit the jackpot. That’s exactly what we want to achieve.
Zoe: I think it’s something that comes up a lot in programming that you have to choose what you’re going to be efficient in. Actually, being efficient in one thing is not helping you be efficient in terms of something else. What you need to prioritize depends on what your scarce resources are. Obviously, we do still have this scarcity of software developers. If we had loads of software developers we could throw at problems, maybe we wouldn’t need to worry so much about making them productive, we’d need to worry about whatever we were relatively scarce in. Obviously, in the case of machine efficiency in particular, or energy efficiency, we’re now starting to find that the market isn’t telling us what to do. We want to be more efficient than we would strictly need to be for cost reasons.
Anne: Yes, I think that’s true. We’ve moved away from hardware efficiency being useful to our bottom line really because the big cost is always your head counts, it’s always your engineers if you could even get your hands on them. I was thinking the other day, “Is Elon making all these Twitter folk redundant and all the other people making their folk redundant results in more engineers to actually produce more efficient code?” I suspect it won’t.
[laughter]
Zoe: Well, perhaps got a bit less efficient in how we code and I suppose how our programming languages are using resources as well. It’s not just about what the engineers are choosing to do. However, I think that the drive to do something about it and to care about our impact on the environment has also changed since the ’90s. Would you agree with that?
Anne: Completely. That’s something that’s happened very suddenly and very recently. In 2020, AWS came out and said that they were going to be carbon zero by 2030 joining Google and Azure who’d already made the statement but in the cloud market not necessarily such movers and shakers. Amazon came out with that and then a year later they moved ahead of Google and Azure, at least in their communications, by saying that they were adding sustainability to their well-architected pillars for AWS. They really did start saying to people, “This is not negotiable. You actually need to start designing and architecting for sustainability because if you don’t, your hosting is going to become unbelievably expensive.” That was quite a shock statement and I was very pleased to see it.
Zoe: Well, we’ve had that come up on other podcasts actually that talking about, essentially, organizations with a very large tech system at the heart of what they’re doing, you can start off by thinking, “Oh, we’ve got loads of space in the cloud, we can do whatever we want,” but it can add up and you can suddenly find yourself faced with this awful choice of a large bill to re-architect or a large bill to keep it running as it is.
Is this the most pressing climate issue for the tech industry right now? What are the most pressing issues?
Anne: There was a report done by the EU Commission who were actually quite good on this stuff a couple of years back. They said that the tech industry faced two challenges that are about equal in size. Tech industry as a whole, there are two ways that we put all of the carbon into the atmosphere. One is the data centre operations, so the electricity that it powers the machines and runs the air conditioning systems or cooling or whatever. That is something that really needs to be reduced. Also, the other way that we produce it, push a lot of carbon into the atmosphere, is embedded carbon. The carbon that is produced as a by-product of creating consumer tech, like phones and laptops and Fitbits and all that kind of things– In fact, that’s arguably even higher than the energy use in data centers.
In terms of figures that’s who I’m talking to, people who can affect that. There’s actually a bigger problem, which is e-waste because if you throw away a working phone or even a non-working phone, a lot of carbon went into the production of that phone. We really, really need those consumer devices to be lasting a lot longer than they currently do.
Zoe: In fact, what we’re talking about specific incidents of the more general problem of this throwaway society that we now live in. Because we’re now in this amazing luxury position– If you go back just a couple of generations, everyone held onto everything they had because you never knew when you were going to get another one. You didn’t know when you’d get another jumper or whatever it was. Whereas nowadays, we’re in this immensely fortunate position of having so much that we’ve almost stopped valuing it. I’m guessing, when we’re talking about disposable technology, it’s just that producing each of those things is just generating much more carbon than the other things that we throw away.
Anne: Yes. It’s bad enough when you throw away a jumper but a jumper is absolutely nothing compared to a mobile phone. [chuckles] It’s a discussion I constantly have. What is the greatest gram-by-gram density of embedded or embodied carbon? It must be mobile phones. They are probably the most sophisticated thing. There are probably things that are worse than that are not necessarily mass-market consumer products but in terms of mass-market consumer products, I would bet it’s probably mobile phones, but I’m happy to be corrected on that if someone can come back with a worse example.
Zoe: Also, something doesn’t have to be the worst for it to be a bad thing that we don’t want to do. Do you find that the tech industry is quite a well-informed and active community in this area, or do you find the opposite?
Anne: I would say that it’s vastly better informed than it was, less well-informed than it was in the ’90s, just because we didn’t care about greenness in the ’90s. We were just very informed about writing efficient software. Now, we are starting to become more aware of that again, and we are starting to think about it. Where people like Amazon and AWS start to say, “Look, you’ve got to do it or else,” then we do listen.
Zoe: I guess it generates debate, doesn’t it? Obviously, Amazon literally controls a lot of the servers, so they can do something about that. They can also affect the terms that they will agree to with people signing up to use their servers. Finally in a softer way, when they talk, people listen. They have a very wide reach in terms of affecting how other people in the industry feel about things, and how important, I guess, an individual technologist will consider energy use.
Anne: Yes, they do. There’s a great deal in it for them. We were talking about how nobody’s going to rewrite their applications in C, like we did in the ’90s to be much more efficient because who has the time for that? It’s crazily slow. The right concept to think about here is carbon efficiency. Sometimes that’s the same as energy efficiency and sometimes it’s about time shifting. Moving a workload to where there’s more green energy available. Don’t run it overnight, run it at lunchtime or whatever.
The cloud providers like AWS and Azure and Google do have a USP on this. It is to their advantage to press being green. It comes back to what I was talking about earlier. There are two ways that you can make your software greener. You can make it more efficient, or you can time shift when the work is done. That means that workloads have to be time shiftable and you have to be able to time shift them. Now, it happens that when it comes to efficiency, you could rewrite your applications in C or Rust or whatever, but that’s quite a lengthy thing to do. There aren’t that many engineers who know how to do that, and it takes a lot longer than writing more modern, lightweight frameworks and languages.
There isn’t a strong desire to go down that route because it’s prioritizing machine productivity over developer productivity, which as we’ve discussed, companies don’t like doing. There is an overlap between machine productivity and developer productivity, which is to use cloud services that have optimized already. Things like Lambda, or pretty much any of the Azure services, or the Google services, they’re written to be highly efficient. You get efficiency without people having to rewrite their stuff in C. It’s to the advantage of AWS or Google or Azure to be telling people to be efficient because they can do it for them much more simply than they can do it themselves.
The other thing that cloud providers can do is they can offer services that make it easier for your applications to time shift their workloads. The classic for that is Spot instances. Spots on Azure, Spots on AWS, they’re called pre-empt instances on GCP. Things like that, which clouds provide but are hard for you to implement yourself as an enterprise. They shift people towards the cloud. It’s in Amazon, and Google, and Microsoft’s best interests to push sustainability because they can achieve it much more easily than you can by yourself.
Zoe: For anyone who’s listening, who’s maybe running a tech business, what’s the best thing to do if you are an individual tech business in this great big industry that we’re all in, what are the best things that you can do to reduce your impact on the planet?
Anne: That’s an excellent question. The best place to start is probably with your hosting. If you look at your own data centers or you look at the data centers of whoever’s providing your server capacity for you, do they have good green commitments? Do they have a good milestone for when there will be carbon zero? If they don’t, you need to insist that they do because actually, it’s a business risk for you if they don’t have a good story here, because eventually carbon taxes and carbon pricing will come in, and you’ll be hit by it if you have systems that just blow up at that point. You need to make sure that your host is planning for that kind of thing.
The other thing you need to be thinking about is where do you host, what regions. Because all regions are not equal on this. There are some places where there’s loads and loads of green energy and it’ll be much simpler for you and much cheaper for you to build sustainable systems. Places like Canada, where there’s loads of hydro, places like Scandinavia, where there’s a lot of solar and wind.
There are places that are terrible as well. Historically, Virginia, unfortunately… has always been a very dirty grid. It’s a very coal-fired grid. You want to have a look at your host and your regions. Then after that, you want to have a look at your operational practices. Are you using things that minimize unnecessary machines? Have you got auto-scaling in place? Do you have a lot of zombie services? Things that are not doing anything but are still lying around that you should just be turning off? Have a look at the operation side of things.
You then want to have a look at your architecture because some architectures are more greenable than others. As I said before, using Spot instances is very green because you can delay jobs until there’s green power available, that’s excellent. Serverless architectures are very efficient. They are the modern equivalent effectively of writing ordinary applications in C.
Then if you have an app, if you have something that is tied into an end user device like a phone, try to make sure that you don’t effectively kill off a perfectly reasonable device and a working device by stopping doing security patches, for example. You need to be thinking about how do you make those consumer devices last as long as possible. Do not be the final nail in the coffin of a perfectly working device.
Then, finally, you can look at making your own code efficient. You only really have to do this for code that’s running on demand. It might be running at a time when there’s very dirty power available on the grid, but you can’t defer it, you have to run it immediately at that point. Try and make that code as efficient as possible. In the end, that might mean that you end up having to have a look at more modern but highly efficient languages like Rust.
Zoe: I suppose the other thing that I’m always really excited to ask is what are the companies, either in tech or more broadly, that are starting up right now to help the general public reduce their impact?
Anne: Gosh, now that is an interesting one because I can’t immediately think. Most of my focus is on new services that are coming out from the clouds, where they are putting in a lot of new services there, and actually, ironically, they are doing the best work on this.
I did come across a start-up the other day. I really like the idea, I’m not entirely sure how it’s going to work out in the long run, but the idea is the same way that SETI uses machines that are just sitting around not doing anything in your own home that you’ve already paid for and have a lot of embodied carbon in them to obviously crunch data for the search for extra-terrestrial life.
There are start-ups that are looking at building a cloud in a SETI-like way, using all those devices that are all over the place and have a lot of embodied carbon in them. Now, I think that’s actually going to be quite difficult to do. It doesn’t always deliver the value of the cloud, but it’s an interesting idea. Hopefully, we’ll see a lot more along these lines of how do you get more out of devices that are already sitting around out there, that are embodied carbon, loads of work and carbon is released into the atmosphere as a result of producing those devices. How do we make sure that we get maximum utility out of them? That’s something that is very interesting. I’ll be fascinated to see how that progresses.
Zoe: Just finally, I really want to ask because, as well as a long-term tech professional, you’re also an artist and an author. How does that fit in with your tech career?
Anne: Oh, very badly. I’m not very good at multitasking. If I’m painting, don’t do anything else. If I’m writing, I don’t do anything else. I haven’t really painted in years while I’ve been getting the first seven novels of my 10-book science fiction series, The Panopticon series out. Now that I’m working on a new start-up, my progress in my novel writing has really gone down the toilet. I time switch between them on quite a large time frame. I was stuck halfway through Book 8 as I tried to balance a start-up and writing at the same time. I get an awful lot out of the writing. It’s very close to the kind of stuff that I’m doing on the green side and the new technology side as well. It’s nice to do a range of things.
Zoe: Thank you so much, Anne, for coming onto the Digital Lighthouse and helping us to shine a light for others.
Anne: Thank you for having me.