 Good morning everybody. I guess that you can hear me. It's half past and I'm a fin, so let's start this punctually. So my name is Janne Kalliola and I'm here to talk about how ICT greenhouse gas emissions are exploding in the ICT sector and what the Drupal community should do about it. I'll talk briefly about myself and the book that I've wrote. Then I'll talk why the green coding is important, how energy is consumed in modern software, how to measure, how to reduce waste and how to minimize software, and then how to approach these in technical matters from practical solutions, some Drupal specific matters and then final words and then you ask anything and I'll answer anything. So as said, my name is Janne Kalliola. I'm the chief growth officer and founder of ExoWe. I have been coding from 83 onwards when I got my week 20 with number of different languages. I've used open source from the 90s onwards, first with Java, Java world and then later with content management systems and the others. I'm focusing on growth of ExoWe, I think that we are an excellent company and I want to power influence to be as big as possible and then I've been working with green coding and carbon neutral for a few years. I'm the chairman of Code from Finland Association that has created the world's first carbon neutrality label for software companies so if you happen to be a Finnish company then you might be able to get that label and if there would be anybody interested to hear about more that label to export it to other countries then I'm more than happy to be at your service. My company is a designer software company in Finland Estonia. We have around 100 people and we fight against digital frustration. That is what we do, that a lot of the digital systems are extremely hard to use, believe me or not and we try to make them simpler. Then the book, so I have written a book around 130 pages available in Finnish and English free of charge or you need to give your email address, we might send your email about the feedback and so forth. If you want to have a crash course in Finnish then the left-most book is your choice and then for those that are language restricted in this matter then the English version on the right side is good. Then I made a second edition of the book a month ago so there is now AI, cryptos, IoT data and some other things like testing covered more and that's available there too. Those that were born in the 60s, 70s or 80s and used ASCII text verses there's also ASCII version of it with ASCII graphics that I had the tremendous pleasure drawing them. If you don't know what I'm talking then that is actually your problem more than mine but it was truly good exercise and brought me back to the rules and it's one tenth of the size of the PDF so if you want to save on the transmission cost, save energy then you should choose the text version. But enough of me and the book, so let's get to the point, so why is this important? I'm here, hopefully why you are here. So the Finland's Ministry of Transport and Communications made the world's first climate and environmental strategy for the ITC sector a few years ago and in that strategy there was of course a lot of research and studies made and they found out from different sources that the ICT sector as a whole consumes everything from four to ten percent of world's energy and then the Lancaster University made a study, this is from 22 if I'm not mistaken so it's pretty current numbers that the greenhouse emissions that we cause are something between two to four percent and these numbers are growing and they are growing extremely rapidly. So if we take the average of the emissions that is the let's say three percent and then we take the global emissions from the UN cap report from 2022 that is 58 gigatons. Gigaton is nine zeroes and then tons so if you would put that in kilograms then it has twelve zeroes so it's a very big number and then our share of that is 1.6 billion US billion tons every single year. For the sake of perspective this annual amount is almost the same as the weight of people and land mammals so and this happens every single year and this is growing so we need actually we need to do something about it. So let's talk that where the energy goes because it just doesn't go to thin air or it sort of goes to thin air because it's about electricity that becomes heat but almost all software in the world and Drupal included follows the same simple model that there are end user devices that the end users are using to access the service. There is mobile phones, there is laptops, there might be game consoles, there might be fridges that are actually blackmailing the toaster because they have some pictures of it. This is the IoT world guys and wants to have the payment in bitcoins. Then there's the network that connects the end user devices to the back end. There are two kinds of networks, there's wired and wireless networks and then the last mile connection from the first mile if you start from the end user perspective but anyhow that connection that connects the end user device to the trunk network is the cause of most of the emissions. And then there's the cloud or data center where all the stuff, the magic happens and then let's go through all of these in some detail. I don't go to detail here because I could talk these about for a few hours and we don't have time for that. So the devices that I use, there might be two kinds of devices. There's the battery powered devices that I'm using here right now and then there are devices like the projector that is not a battery powered. If this system is battery powered then it's typically optimized because nobody wants to have a huge battery back with them or enjoy one hour of usage time. But then if it's wall powered and plugged into wall then most people don't really care that how much electricity is consumed because electricity is cheap and the one single device does not. Typically consume that much. Let's have a short poll that how many of you know that how much your television consumes energy when you're watching it. Nobody. How many of you know that how much this consumes energy when it's sleeping? So we have three hands because this is how they sell it. My television consumes, I think that this was less than one watt and they say excellent but I have no clue that how much this consumes when it's watching YouTube on it. The energy consumption in the end user devices should be split between the various applications running on the device. So if you want to understand that how much yours of the uses energy it's pretty darn hard unfortunately. Then the network. Network is the easiest part to measure because you can measure the data flows quite reliably and then the different connection methods have surprisingly good data about the energy efficiency. Typically measured as energy usage per gigabyte transferred. When thinking of this you need to understand that the client device might connect the number of back ends. So they might use different networks. The back ends might be in different continents. And then we have the back end that is composed of all the systems that are needed to provide the service. There might be a web server that is running Drupal. There might be a database server that is running MySQL or MariaDB. There is some storage. There's firewalls, the VPN endpoint, the log system backup system, restore system that might or might not be tested. There's the internal connectivity. There's a lot of other things. And if you're working with any multinational cooperation there's probably virus scanners and all these kind of things that they require in the requirements. And then you need to understand that how the energy is consumed by the system that are dedicated to you and the system that you share with others. And probably in cloud environment you have no clue of those. So the energy consumed in the end user device. It consumes the energy, not the software. Of course the software causes the consumption because you would not use the device without the software. This could be, for example, a mobile phone could be an excellent paperweight if it could be not used. As said, very optimized hardware when battery powered and not so when plugged to wall. The biggest hog is the screen. So if your software can be used without the end user device it's very good if it can be used without the screen and on the end user device it's not so good but better. And if it requires you to watch the screen all the time like watching the latest development in the kitten world with the videos then most probably you are getting a lot of energy. Of course using GPS and these other sensors might also cause some. Or if your end user device is calculating bitcoins for you. That has happened too. So the networks, it's the, as said, the energy used per gigabyte and there's 10,000 time difference between networks. 4G is the worst one. Optical fiber is the best one. So if you have your home connection in 4G and there's optical fiber available on your screen then switch. If you need to bring an excavator on this site then don't switch because that doesn't probably help. And most probably the operators don't allow you to make the ditch wire show well even if that would be a good exercise. And then the electricity consumption of the server stories, internet work and everything else. This is optimized hardware as we, as we, that should be run on full throttle. That was discussed on Tuesday on a platform age and Nestless excellent session about saving energy. So in a nutshell, I hope that everybody here knows that the software actually needs hardware to run. It still needs, it has, it has not changed. If you think cloud, then the cloud is such a fancy name for somebody else's computer somewhere else. It still cause emissions. Hardware causes emission during this life cycle. End user device, typically 80 to 90 percent of the emissions have been already sort of spewed into air when you got the device. So if you can extend the time lifespan of your device then you will save a lot of emissions. With the server side, it goes other way around that the then the 20 percent of the server emissions are caused by the manufacturing logistics and the 80 percent with the usage. Hardware needs electricity and the emissions depend on type of energy. There is no clean energy per se because the windmills doesn't sprout up, sprout from the ground and the solar panels just don't grow to the roofs but somebody installed and need to be manufactured and so forth. So there's always some coefficient. But if you burn gas, oil or coal or oil shell, tar sand then the emissions are way greater. So whatever you do, it's very, very paramount that you save energy because there's always emissions. So let's talk about how to do it. It is fancy lofty goal that yes everybody let's save energy and off we go that most probably won't help that much. So we can save electricity by measuring and then making changes and measuring again. This has a problem that this is extremely hard. There is no good way, no straightforward way to measure anything because it's very hard to draw lines that how much your software is consuming energy. Let's take a laptop. You might get the energy consumption of the browser for downloading and rendering your page but how much of the energy consumed by the window manager is caused the browser rendering something on the screen. Nobody knows. I do care but unfortunately I'm not in a position that I could find out. And same with every single thing. So if you can measure, do it but be warned that this won't be easy and most probably most of you will fail to measure. Then if you can measure, then share the results if you are allowed because there's lack of results and most of the results are watered down or greenwashed because the truth is so ugly that people don't want to face it. On the other hand, there was a study made by University of Beta Interior in Portugal that found that there is a strong or very strong correlation between the execution time and the energy consumption in all languages that they checked out. The study has its own flaws and it has been disputed for certain areas but it still stands that the less seconds your system uses, the less energy it uses. It's very, very simple. So everybody has a stopwatch somewhere that you can see that how long does it take. Of course with the modern computers you need to be pretty quick so maybe you need to create a test set that downloads the page like a thousand times or whatnot. This correlation might sound that yes of course there's layman stuff but now there's two things first that it's scientifically proven that it's actually the case because all layman things are not actually true and there were no correlation for example between the usage of memory and usage of energy. The other way that if you can't measure is to reduce waste. I borrowed this concept of waste to the green coding from lean manufacturing. I guess that somebody knows lean stuff here but it's commonly defined as any action that does not add any value to the client. Of course that what is the value to the client depends on the client and depends on the situation but in the energy field, IT field you could use the same metaphor that any action in the software that consumes energy but doesn't bring value to the client is waste and should be removed. I've recognized different kinds of wastes. There's a chapter in the book, 20 pages or so, so I don't go through all of these but there's for example redundant software that the software is not needed and it's still running. There might be a probe that is checking the existence of some other software that has been stopped down for many years ago and it alerts every minute that there's something wrong and nobody sees the alerts and it still consumes energy, so get rid of those. User errors is other favorite that the users are very, very stubborn creatures that if they fail, they try again they fail, they try again and so forth, so forth and every single failure is waste because nobody got any value. My advice, never ask anything from the user. That's the easiest. If you have to ask, remember that computers are excellent in memorizing things, remembering things and people are excellent at connecting things, so provide them as much information that you have in palatable format and let them make the connection and provide the input. Then there's a wrong architecture, wrong data model, too much data, unoptimized data, that are a bit two different things, transferring data for the sake of certainty that you are doing synchronization and then you see okay, I'm not sure what's going on so let's scrap everything and start from scratch and then transfer everything. The typical developer answer is the algorithm in efficiency. These are some what in order of priority. It's down there because if you select your software wisely then you actually don't end up in these that much. This even user, one of my favorites that it might be sometimes very hard to cancel a contract and you find it first, you do a lot of user errors, then you Google stuff, then you read something, then you watch a couple of YouTube videos on how to get rid of this streaming service or what not and then finally you do it and a lot has been wasted. Wrong programming language, I have bad news, PHP is extremely inefficient language so if you could do something else than do TypeScript it is not that good either. If this would be mostly energy related we would be coding in C and Rust. I have been coding C a lot, I don't recommend that to anybody. But I have not yet tried Rust and there are young people that like Rust so there might be something because no young people like C. Don't use assembler because nowadays the compilers are better writing assembler than you are because they take the multi pipeline processor better in the... they take the multi pipeline processors better compared to humans because they can do the optimizations, the parallelism and everything else. Then waste initialization, this is a PHP related problem that you initialize everything and then you run this software once and then it does only like fraction of the initialization is actually needed. So if you could make the initialization stepwise process that is good but it's harder in architecture manner. And then extra stuff that there's videos, there's a CEO saying hello to everybody coming to the website and nobody really cares because they are looking for the contact details and the address of the office that are typically hidden at the bottom of the page where you need to scroll and download all the images and videos on the way. Third angle is minimization and this is not that easy to do with Drupal unfortunately because Drupal is not a minimal software. So if you have a task, a challenge and then you make a system that actually solves the challenge extremely elegantly and only that and nothing else then you could call that the minimal solution for it. Like the, it's like me going to shopping sometimes. I go to shop five months and I'm looking for this one. Okay, I'll take it, go to the register and then cash out and I'm off. Extremely efficient, I'm happy. The shop is happy, we didn't waste anything. But the problem is that this might be against the KPIs for example marketing that they say that the people should visit our website at least for five minutes. Why? If they got the transaction done then throw them out, get next people in like in restaurant business. But this is more a design problem than a development problem. So it needs the help for the designers. Those two others are more for developer matters. So less execution time is spent less energy is consumed the less data is transferred the less energy network uses the less hardware is used the less emissions are caused. Very, very simple in principle. In practice it varies. But if you start to think about these things that what is extra, what is something that I could get rid of that or we don't actually need that script or this library could go you are always shrinking the software and it is more energy efficient. Unless you write everything by yourself and add a lot of bugs and some of those bugs are performance bugs I don't recommend that to anybody. So how do we approach the problem? You need to think about the impact. Impact above all. So the more popular your software is is it the Drupal module is it some other system the more impact your changes have. The more popular your software is the more responsibility you have to the planet, to the climate. So if you are a software owner initiate this now get people to help you and if you are a contributor then look for the energy hogs and fix them. Don't waste your efforts in small scale projects if your module that is the fanciest and nicest and so forth but it's used only you and your mother then optimizing it is complete waste and you should go somewhere else to optimize something else because there's a bigger impact. There are a couple of good examples of the impact for example when when WhatsApp was sold to Facebook they had 1 billion end users with team of 8 people developing the software so they actually know the shit they actually know how to make the software and it has to be very efficient and error free that you can actually serve that amount of people because you can imagine the amount of problems 1 billion people would start to send them if the system would not work. Or the SQLite everybody of you is carrying at least one instance of SQLite SQLite has 1 trillion installations so think of that if somebody is saying okay this slows it 1 millisecond and consumes energy then if you put 1 trillion milliseconds in a row then it's still pretty big amount of seconds that energy is consumed maybe for nothing, maybe for something good who knows that is the question but when you make those changes you need to think about these things if you don't you are not carrying your weight you are not doing the impact so practical solution how to actually do it so in Drupal and in web in general using proper formats is good so changing the images to webp changes 10-15% without any visual degradation of the quality of the images of course it renders certain browsers obsolete that they can't use the service maybe cache everything when you can when you have a good cache strategy and you actually know how it works if you don't understand anything about caching then let somebody else do it for you because the caching is easiest way to consume a lot of energy compress everything that is possible compress them in a build phase compress them once and decompress them many multiple times if possible for errors reduce amount of videos replace them with animations that pack better or static images reduce data transfer that if your system calls home every 5 seconds maybe it could do it every minute and then you have saved 11 of 12 requests every minute strip unneeded typefaces there might be fonts that have like 12 typefaces and you are using two be a bit cautious with glues that if you reduce the amount of glues and then your client is both by let's say a turkish company that has the i without the dot that is called tittle by the way then you might be screwed because it's you strip that glues that nobody actually uses anywhere reduce amount of code remove dead code remove everything that you comment out because you have absolutely you have a version control if you don't then start using it be mindful when adding new libraries there was a study made by Lapparanta University of Technology that around 5% of the surface area of libraries used and that stacks when you have a library that is using a library that is using a library that is using a library and so forth but don't write everything by yourself you are bound to make mistakes as Linus said many eyes make buck shallow so the ready made libraries are way better tested than your code and most probably they are way better coded than your code too limit the amount of code that is sent over the network try to get it shared if possible that it will be already there but then of course the because of the attacks and the other the browsers limit that how much you can have impact there improve code efficiency there is always one hotspot or one bottleneck in the software that you should fix when you fix that then the bottlenecks go somewhere else there is never a software that has no bottlenecks there is always one bottleneck if you can't fix the biggest one then of course you say okay this is like law of the nature we can't do anything about it anymore then move forward you gains will be smaller but they will be still gains when the amount of data is large big then you need to use the right algorithm for the task and if you were born in 60s or 70s then the algorithm that you used when you were young coder might not be the best anymore because they don't take the parallelism into account so the new ones might be better consider implementing part of the software in different language this is how they do in python that the python is also very inefficient language and they are using it with data manipulation and data all kind of data stuff and AI stuff but they do it so that they have a C bindings and they try to do most of the stuff within C libraries that are just controlled by the python so the data comes in C code it's manipulated in C code it's written in C code and the python just controls what C code is executed and that makes way more sense don't ever write data manipulation in PHP there is way better languages for that some Drupal specific matters so in general Drupal is popular enough that it's impact to the energy consumption is notable system is not that efficient and the quality of modules and themes have wild variation there is excellent code and there is not so excellent code both the core and the ecosystem should step up and focus on saving energy the sustainability efforts that we have on the Drupal.org are not focused on the platform there is now team being formed might give out here in the audience is helping in that and if you are interested in this then join the team sustainability channel in Drupal.org Slack hosting Drupal sites in carbon officer data center moves the problem somewhere else because there is the principle of the last power plant of course the electricity network is not complete so it might be that it actually makes a lot of sense to move the data manipulation and the hosting to area where the electricity is cheaper or not so cheaper but of course that makes sense too but it's cleaner than hosted somewhere where it's not that clean and there is huge differences between countries Finland when I checked when I wrote the book the six months average was around 30 34 grams of CO2 per kilowatt hour Germany was 385 if I'm not mistaken for 2022 so there is 11 cold difference Bosnia was more than one kilogram because they use more cold and so forth so they take this into account but it's not just enough that you said okay I'm moving it somewhere else and then it's I'm done but you need to also reduce the energy consumption of the system the global energy usage is growing faster than the production of renewable energy so this is something that we need to act so the question is that the maybe there's a module that would solve all the problems that we install and then fire and forget goodbye that won't work you can't solve complex problems with simple solutions and adding yet under the module might make some changes but in practice it always adds the complexity of the system because it's more energy to be consumed because it needs to be initialized it needs to be configured and so forth it's a systemic matter that you need to take into account in every single level you are working on the software there is no escaping that we are doing pretty bad job in the software industry because the past 20 years we have been focusing on things that make the software developer faster and not the software more efficient and we need to turn that tide of course reducing amount of transfer data doing proper caching and this help and there might be modules that are beneficial for certain sites somewhere but there is no probably no module that would solve it all and modules will help you to move forward but they don't solve the problem completely once again impact versus impact and popularity so if you are doing site development then the amount of visitors that how many times site is loaded define the popularity and then if you have a small site with small number of users and you have a big site with big number of user of course you should optimize the big one first and then maybe use the same code to optimize the small one sometimes it might be easier to start with small one than use it on the big one but it is about the impact you need to select the modules on themes carefully you should read the code sometimes I have done that for example with wordpress and they say code is poetry and either it is so modern poetry that I didn't understand or then it was very very badly coded the jury is still out there measure the site frequently and keep the records this is crucial and then compare I make some changes did I actually improve or make the situation worse and then if you are in a module and theme development business or core development business the amount of installations and uses pattern define the popularity and then you should focus on the biggest impact when something is truly truly popular that is installed almost every single Drupal installation it is used heavily there then you need to measure the energy use is possible and I guarantee you that if you take any module there is always places to improve but the problem is that writing energy efficient code is not straightforward with modern systems and you are not able to think from that perspective that easy because you have not been thinking about the energy I guess that after 90s the computers have been always fast enough if you build something then focus on the core matters of the module or theme don't stuff everything and kitchen sink there this is especially bad in wordpress where there is a commercial aspects that the modules have all kind of features that there is feature list are one kilometer long and most of them are completely useless for those people that actually understand what module does or the plugin does in that world Drupal is better in that sense because the modules are developed by the developers for the developers and then limit amount of updates this doesn't mean that there is a security that there is a security hole in your module that okay I will sit on that for six months to save energy that is not a good way but if there are features then maybe put them together and not release a module version every single month so it might be updated in the future and the update cause its energy and it might be completely needless for the performance of the site where the module is used final words this is a journey so do not expect that all changes can be done at once we need to keep the client internal or in agency case most cases external one happily because if you have happy clients they are happy to make change if you come to the happy client and say that dear mrs. client we would like to make these kind of energy saving changes and it would cost you this much money they said ah interesting let's talk about it but if you have unhappy client and you go to the mr. client we would like to make these changes and they said yes fancy and stuff big list of bugs that you should fix first and then we might discuss about that and now off you go satisfied clients allows make more changes to the systems but don't set two ambitious goals in any of these because if you try to eat elephant once then most probably you will choke and you will be replaced by somebody else that doesn't care that much about the energy consumption the world is worse place because you are recovering from burnout and then some some idiot is replacing you so keep good care of yourself and remember that with all journeys the most important thing in starting a journey is to take the first step and I have really really good news for you by attending this session you have already taken the first step you are already on the journey and now I ask you to continue walking for the best of the planet thank you so thank you so much for the talk I think it was really amazing I have one question here it asks how much does removing commented out code help prevent emissions and what is the reason for it? it depends every single answer from the seniors of the developer always starts it depends so it depends on the case but the commented code takes as much space as non commented code so if you have half of your code commented out then half of your data transfer for that specific code is waste it doesn't compress any better if it's inside the comments if your code is not transferred that it sits on the like in Drupal Drupal sits in the server side and it's installed there once it doesn't really matter that much PHP and the others are pretty quick to optimize the files they have the jit compilers and the others that get rid of the code it doesn't matter and then with all mobile apps and the others the stores cut extra code they have a static analyzers that will then remove stuff that is not actually used by your software but if you transfer code hdml css JavaScript to the end user device then it actually matters and it matters with the percentage of how much you have commented code in the JavaScript file, CSS file and so forth the amount of energy depends of the selected network and its energy efficiency because this is mostly network issue of course it takes some time to pass the comments but not that much so you need to think from the network perspective there was a question in the back hi so I'm at Octofin we're an agency specializing in the wildlife conservation environment sector so this is amazing to hear and I love the fact that it's also making everyone's websites better because performance just makes everything amazing but I'd like to ask whether so it is still a massive impact like 2-3% loads of emissions but I think the main focus of the tech sector on environmental matters should probably be which clients we work with whether we support environmental organizations and whether we help sort of overthrow governments that are just causing the main pain I think it's great to focus on an efficient code but actually a lot of the people who say oh look we've got a green sustainability stamp also work with really awful organizations and we need to focus on that and say no to business sometimes yeah but on the other hand this the I don't agree with you let's start with this one because these are not either or there was a discussion about it when I started talking about green code and a lot of coders said it's really negligible that what they do then it would be better than they would instead of driving to work they would bike to work bike to work and then start writing green code because they don't really sort of shut each other out so when you code you should code green code all the time but then of course donating to the course working with the proper clients and then one thing that was not directly mentioned is the carbon footprint and carbon handprint so the carbon handprint is the reduction of somebody else's footprint but we can do as IT so we should maximize that while minimizing the carbon footprint of our software typically in most cases our carbon footprint is very very small compared to the carbon handprint what the software can do that if you have let's say steel mill and you can improve its performance with two percent and it doesn't really matter what kind of code you run but if you like me watch Netflix instead of aerial television then it actually matters a lot because all the energy consumption happens because we have selected use an IT system that has replaced the less convenient way of watching television that everything is not available at the fingertips and it's because then it's unicast against multicast and multicast would be way better but it would be inconvenient but you are right we need to approach this from every single possible angle and we need to understand where the impact lies because we can't have everything at once but it doesn't mean that none of those should be none of them should not be done but they need to be done in certain order that maximizes the impact as a function of time any other questions? let's wait for the microphone that we get in the video do you have any thoughts on the web sustainability guidelines that the WC3 put out as a draft the community group put out as a draft in September I haven't read them I've had a busy time but I think that in general those guidelines are good but again their effectiveness depends on your case so you need to be senior enough to understand that what actually makes sense and what is what is more of brings good sort of wipes to everybody that we are following something that actually doesn't have impact so the impact analysis should be done always and that kind of materiality analyzes that whether this makes sense to make to say that we can save now one kilowatt per year globally after working hard for two weeks it doesn't make sense you should use the two weeks somewhere else but if you would save a gigawatt then the story might be different thanks Janna for the talk getting back to your point about the largest impact and also thinking about the larger picture I'm just curious Drupalcon has Drupal done a full carbon audit scope one, two and three in order to know where to act to have the biggest impact if it's in the code or if it's somewhere else no what I know that nothing like that has been done yeah there's other people also confirming that so again we are in a situation that there are no sort of good measurement data so until that's done then optimizing your own code the old style optimizations that are valid from the like the era of computing are still valid and they are good and they should be followed but then the where the impact lies before we have that kind of I need to talk to the board about that but before we have any of that then I would use the popularity as the next best thing as impact assessment there was the question here yeah my question is around I mean you wrote the book it's available on the front page of your website and my question is how is the reaction of your clients to that is that important, did you get new clients based on that I'm wondering and I'm smiling not friendly smile yet but yeah let's start with the ideological answer first so we believe, we truly believe that going green is the right and the only choice because there's no business on the dead planet as they say and we think that as a company we will get benefit out of it we have not seen that much benefit yet the funny thing is that I have a 17 years so far now and I have probably seen hundreds or thousands of RFQs public and private three of them three of them have mentioned this one in sort of generic terms that we need to have environmental program and so forth one specifically that this needs to be coded in green we want that case and then one was an analysis green code criteria written by Finnish Finnish IT society we want that with the big margin so yes we see that our expertise is showing the bad thing is that in total that was like probably 70 to 80k so it still drop in a bucket unfortunately but now the Finnish Finnish state owned procurement company Hansel that is channeling everything most of the money from the government and the universities and big cities and so forth they made the new IT consultancy 23 to 28 program that has it's more than 1 billion euro program there was one specific line about green coding that this is that you can buy green coding through that program and not yet it's seen but the program has been running for two or three months but it's a good sign that somebody is actually putting money on it because at the end what I forgot to mention here is that there's the golden rule that who has the gold makes rules and that's why the clients are key people to make this change because if they say that we will select somebody that actually knows about these things then the world changes rapidly if not if it's a grassroots movement then the world will change very slowly unfortunately so that is one way to also try to change the procurement criteria of your clients could it possibly be like the changes in WCAG and stuff like more accessible websites that it was also like not think about first and then now more and more people are going to companies that also take this into account when coding and stuff hopefully yes I think that the European Union has one superpower and that's regulation we have 500 million people that are pretty affluent in the world sense and every single regulation we create and everybody starts to follow worldwide because they want to sell to Europe and CSRD regulation that requires everybody to disclose the scope one, two and three emissions starts in force I think for the big companies early next year we are now part of bigger public listed companies as our company and we are preparing for that that we can do that every month and the auditor, the financial auditor like Ernst & Young's and these companies will actually audit the results so I think that a lot of bigger companies will need to straighten their ties and do something about it and then gradually will roll down because they require the same calculation and they need to from their vendors and so forth to the where the actual code is there somewhere that okay that yes I need to figure out what I am producing as emissions or what the system is producing as emissions so yes I think that this kind of regulative approach is way better because when I talk with people from states they say that yeah this is fine and handy but because there is no mass of a business pros and cons there are more constant pros than they might not do it because nobody forces them to do it customers, consumers are the other part but unfortunately I was in a seminar 18 months ago in Lapland Finland and there was one of the biggest grocery chains in Finland saying that was it like two of the six or seven consumer groups care about these things and others don't so I would not have too many high hopes with the consumers we think that the consumers are there and everybody would like to do it but we are probably inside a bubble with the other people that are like us unfortunately so that was around 80 to 25% of the consumers that care about these things and then there was a couple of group of consumers that one was affluent males that actually are against this whole thing because it's somehow somehow goes inside their skin or whatnot and feels that they are making wrong choices and that's why this is something that needs to be opposed by any cost that they sleep while the beds are burning unfortunately any other questions there's one there it seems like the solution from the code side is to be minimal as much as possible but being minimal means less functionalities so less budget and how how can you deal with this in the context of web agency where you have to sell services to earn money that is an excellent question by the way that means that I don't have any answer should you sell more website, more minimal website but it's always more yeah very very excellent question I still don't have any good answers what I would do if I would do the and we try to do the minimal website there's so much legacy that you could work probably at least I'm 50 around so I could work with legacy probably until I'm in pension hopefully but and I think that the IT industry will sooner or later shift in a position that there's more legacy to be kept up than new code to be written so you should prepare for that too so that would be one angle that okay gradually make it better there are new needs that are needed writing minimal software is not fast writing energy efficient software is extremely slow and tedious process I wrote when the electricity price was high and we have two electric cars in the family I wrote a module for a magic mirror that I have a magic mirror display that shows where my kids should be at which given date when they have the sports then I added a graph that shows the electric price if you don't know it's once a day at three o'clock Norwegian time it's from Norway the whole thing it's updated for the next 24 hours in JavaScript it's extremely hard to tell that okay one passed for Finnish time that is one hour ahead of Norwegian time the system should pull the new results no earlier one minute passed and then update the graph it's extremely hard to make that kind of because there is no that you can say that okay certain amount of seconds in the future I could download a big big big library to calculate those things moment.js or something else and there would be a lot of extra code that would be complete waste so I wrote the algorithm myself took half a day and I'm not a bad coder mind you and then I need to make the system so that it fails because it sometimes fails it's not fail safe that it tries again every half an hour and it stops trying when it got the data and then it also only once an hour because then it changes that you need to update the bar chart it doesn't update every minute every five seconds but once an hour but you need to know when the hour has struck that you update after it, not before but after it's really hard to calculate in JavaScript so I spent two days getting this right so the minimal is hard and green software is hard if you can convince the client there will be work but there will be way less end results and that is the problem that I haven't cracked yet maybe next year let's see I'll think about it but it seems that we are out of questions so thank you everybody