Vihreä koodi, vastuullisuus, Green ICT ja kestävä kehitys ovat nyt alkuvuoden aikana nousseet esille yhä useammin ja useammassa kontekstissa ohjelmistokehitykseen liittyen. Viime vuoden keväällä kirjoitin Vihreää koodia -webinaarista ja sen esittämistä hyvistä ohjelmistokäytännöistä kohti vihreämpää koodia ja nyt on vuorossa kohti vihreämpää tulevaisuutta sovelluskehityksessä on Linux Foundationin Green Software for Practioners LFC131 -sertifikaatti.
Green Software for Practioners LFC131 -kurssi ja sertifikaatti
Linux Foundationin ilmainen Green Software for Practioners LFC131 -kurssi kertoo miten määritellään, rakennetaan ja ajetaan vihreitä sovellusohjelmistoja. Kurssi kertoo suuntaviivat, jotka auttavat luomaan ymmärrystä mitä tarkoittaa vihreiden sovellusten harjoittaja riippumatta sovellusalueesta, organisaation koosta, ajoympäristöstä tai ohjelmistokielestä ja -kehyksestä. Eli tarjoaa korkean tason käsitteet ja ajatusmallit vihreämpään sovelluskehitykseen.
Vihreä ohjelmisto tarkoittaa kurssin määrityksen mukaan hiilitehokasta ohjelmistoa, joka tuottaa mahdollisimman vähän hiiltä. Vain kolme toimea vähentää ohjelmiston hiilipäästöjä: energiatehokkuus, hiilitietoisuus ja laitteistotehokkuus.
![](https://verteksi.net/files/2024/03/8evogfe9kw11-01a_carbonefficiency.png)
Kurssi on jaettu kuuteen osaan:
- Hiilitehokkuus: Tuota mahdollisimman vähän hiilipäästöjä.
- Energiatehokkuus: Käytä mahdollisimman vähän energiaa.
- Hiilitietoisuus: Tee enemmän kun sähkö on puhtaampaa, tee vähemmän kun sähkö on likaisempaa.
- Laitteistotehokkuus: Käytä mahdollisimman vähän (laitteistoon) sitoutunutta hiiltä.
- Mittaus: Mitä et voi mitata, et voi parantaa.
- Ilmastositoumukset: Ymmärrä hiilipäästöjen vähentämisen mekanismit.
Jokaisen osion päätteeksi on lyhyt monivalintakysely, jota ei pisteytetä. Kurssin päätteeksi on lopputentti, josta pitää saada 85% oikein. Testin voi suorittaa niin monta kertaa kuin tarvitsee. Tentin läpäistyä saa sertifikaatin todisteeksi.
Yksi mielenkiintoinen asia sovelluskehittäjälle on esitelty Software Carbon Intensity (SCI), joka sisältää toiminnalliset päästöt (hiilipäästöt sovellusta ajettaessa) ja laitteistopäästöt (hiilipäästöt fyysisistä resursseista, joita tarvitaan sovelluksen ajoon). Kun teet sovelluksestasi energiatehokkaamman, laitteistotehokkaamman tai hiilitietoisen, SCI tuloksesi pienenee. SCI jäi hieman korkealle tasolle, kun esimerkkejä, lukuja tai konkreatiaa ei sinänsä esitelty.
![](https://verteksi.net/files/2024/03/ss7gnfipybh4-23_SCI.png)
Toinen hyvä osio oli hiilitietoisuus, jossa esitettiin muutamia konkreettisia menetelmiä vihreämpään sovellukseen muun muassa siirtämällä laskentaa sellaiseen ajankohtaan tai toiselle mantereelle, jossa on vihreää sähköä (hiili-intensiivisyys alhaisempi) saatavilla.
Kurssia ja sertifikaattia on käsitelty myös Koodihuoneilmiö podcastin jaksossa, joka käy hyvin läpi aihetta ja kurssin sisältöä.
Yhteenveto
Green Software for Practioners LFC131 -kurssi tarjoaa korkean tason käsityksen vihreydestä energian kulutuksen ja tuotannon osalta ja miten sitä voi pohtia sovelluskehityksen näkökulmasta. Kurssi lupaa opettaa miten soveltaa vihreän ohjelmistokehityksen periaatteita softan suunnittelussa ja kehittämisessä. Korkealla tasolla tavoite täyttyy ja sekä aihepiiristä että vihreästä ohjelmistokehityksestä saa käsityksen pääpiirteittäin. Konkretiaa ei tarjota, eikä kovin uusia ajatuksia, jos vihreät asiat ovat jo tuttuja. Osa asioista oli myös kurssin aihepiirin (sovelluskehitus) näkökulmasta epäolennaisia, keskittyen yleiseen ilmastosopimuksiin ynnä muihin. Teknologistanäkökulmaa olisi toivonut olla enemmän, sekä menemistä sovellustasolle (esimerkiksi vihreä koodi).
Kurssi on lyhyt, kuvaus taisi kertoa parin tunnin kestosta ja itsellä taisi mennä varmaan tunnin luokkaa. Kurssin pystyi käymään hyvin läpi kännykällä lukemalla, joka helpotti kurssin läpikäymistä pienissä paloissa.