Hei ohjelmiston ostaja, vaadi vihreää koodia!

Vuonna 1969 Kuuhun päästiin 72 kilotavun voimin1, kun taas vuonna 2022 keskimääräisen suomalaisen TOP 1000 -nettisivun koko oli 2,7 megatavua työpöytänäkymässä2 – ero on 37-kertainen. Tietenkään nämä kaksi asiaa eivät ole suoraan vertailukelpoisia, olihan edellinen Assemblerilla koodattu huikea teknologinen taidonnäyte ja jälkimmäinen pääasiassa tekstiä ja kuvia selaimen välilehdellä. Pointti onkin ehkä enemmän siinä, kuinka huolettomasti ja tuhlailevasti me tänä päivänä käytämmekään resursseja kun vähempikin riittäisi. Vihreän koodin periaatteilla tilanteeseen voi puuttua.

North Patrol on suunnitteluun erikoistunut konsulttitoimisto. Suunnittelemme, autamme teknologiavalinnoissa, kilpailutamme. Emme myy toteutusprojekteja, emmekä lisenssejä, olemme aidosti asiakkaan puolella.

23.4.2024

Tuija Latva

Vihreällä koodilla tarkoitetaan energiatehokasta ohjelmakoodia, joka on hyvin optimoitua sekä toteutettu fiksusti ja kaukonäköisesti. Koodin vihertämisestä on pääasiallisesti vastuussa toteuttajapuoli, mutta myös ohjelmistojen ostajan on hyvä olla tietoinen aiheesta, koska vihreää koodia on osattava vaatia. Ohjelmistokoodin tekeminen energiatehokkaaksi kuitenkin vaatii oman tietotaitonsa samalla tavalla kuin vaikkapa saavutettavuuden huomioiminen.

Nykysivustojen koko työpöytänäkymässä on yli kolminkertaistunut viimeisen kymmenen vuoden aikana. Mobiilissa koko on peräti seitsenkertaistunut. Laitteiden tehokkuus ja verkon siirtokyky eivät tänä päivänä aseta samanlaisia rajoituksia kuin ohjelmistokehityksen alkuaikoina, joten niitä ei välttämättä tule koodatessa mietittyä ollenkaan. Monesti on helpompaa ja nopeampaa vain lisätä palvelinkapasiteettia kuin optimoida koodia, vaikka optimointi olisikin pitkällä aikavälillä järkevämpää sekä taloudellisesti että koodin ylläpidon kannalta.

Ohjelmistojen energiatehokkuutta saadaan parannettua heti, kun energiatehokkuudesta tulee ohjelmistoille välttämätön tarve.

professori Jari Porras, Vihreä koodi -kirjan esipuheessa

Ohjelmiston energiatehokkuus näkyy suoraan ylläpitokuluissa, ja lopulta myös loppukäyttäjän sähkölaskussa. Kukapa haluaisi maksaa yhtään ylimääräistä yli kahden euron kWh -hinnoilla.

Vihreän koodin huomioiminen uutta ohjelmistoa hankittaessa

Kirjoitin jo aiemmin digipalveluiden hankinnan vihreistä vaatimuksista, joita sinä palvelun omistajana voit itse tehdä:

  1. Vaadi uusiutuvan energian käyttöä palvelimissa
  2. Optimoi kaikki käyttämäsi kuvat ja videot
  3. Harkitse, ovatko kaikki kolmansien osapuolien tarjoamat palvelut oikeasti tarpeellisia omassa palvelussasi

Näiden lisäksi voimme tehdä enemmänkin yhteistyössä toimittajatahon kanssa:

  1. Tue myös vanhoja päätelaitteita
  2. Kerää vain välttämätöntä tietoa
  3. Ota vihreä koodi osaksi kaikkea tekemistä

Vanhojen päätelaitteiden tukeminen on ensiarvoisen tärkeää

Lähtökohtaisesti koodin on oltava nopeaa ja kevyttä, ja sitä myöten myös energiatehokasta, jotta se toimisi vanhoissakin päätelaitteissa. Vihreän koodin käyttö siis pidentää palvelusi käyttöikää, kun se ei happane heti uuden käyttöjärjestelmä- tai selainversion tullessa markkinoille. Tässä on myös yhteiskunnallinen ja yleisempikin kestävän kehityksen näkökulma: kaikki eivät tänä päivänä syystä tai toisesta halua tai voi ostaa jatkuvasti uudempia ja tehokkaampia päätelaitteita, jolloin moni käyttää edelleen useita vuosia vanhoja puhelimia ja kannettavia. Onko sinulla oikeasti varaa jättää tämä osa potentiaalisesta asiakaskunnastasi palvelun ulkopuolelle?

Verkkopalvelulle tai sovellukselle kannattaa asettaa tavoiterajoja nopeuden ja sivukoon suhteen. Samoin välimuistin ja evästeiden tehokas hyödyntäminen pitäisi huomioida projektin alusta saakka. Näitä tulisi ehdottomasti kirjata mukaan jo vaatimusmäärittelyyn. Vihreän koodin filosofia kulkee käsi kädessä progressive enhancement -periaatteen kanssa, jossa sovellus toimii minimivaatimuksilla sisällön ollessa pääosassa – animaatioita ja muuta silmäkarkkia voi kyllä olla, mutta ne ovat toissijaisia.

Tärkeää on, että optimoidaan oikeita asioita sen sijaan, että vain siirretään ongelma toisaalle (esim. laskentatehoa vaativat toiminnot siirretään palvelimelta käyttäjän päätelaitteen suoritettavaksi vain, jotta voitaisiin kehua kuinka nopeaa toiminta on palvelinpäässä). Tottakai sillä, mikä on järkevää optimointia ja mikä ei, on rajansa eli loputtomiin koodia ei kannata viilata. Pääasia kuitenkin on, että tehdään tietoisia ratkaisuja mutuilun sijaan.

Kaikkea tietoa ei tarvitse kerätä

Mieti kaiken palvelussasi kerättävän tiedon tarpeellisuutta. Onko sille käyttöä juuri nyt vai kerätäänkö sitä vain varmuuden vuoksi? Toki jo Euroopan Unionin tietosuoja-asetus, GDPR, asettaa rajoituksia sille, millaista tietoa käyttäjistään ylipäätään saa haalia. Mitä enemmän tietoa kerätään, sen enemmän dataa liikkuu verkossa ja tallennetaan tietokantoihin tai levynkulmalle, ja sitä enemmän kuluu energiaa. Myös turhan ja vanhentuneen tiedon säilyttäminen syö resursseja. On siis parempi miettiä etukäteen, mikä on se minimimäärä dataa, jolla tullaan toimeen, kuin kerätä kaikki mahdollinen talteen varuiksi.

Ota vihreän koodin periaatteet mukaan päivittäiseen tekemiseen

Jos yrityksesi arvoihin kuuluu jo kestävä kehitys ja ekologisuus, vihreän koodin vaatiminen myös kehitysprojekteissa on luonnollinen jatkumo tähän. Vihreän koodin vaatimus voidaan perustella suoraan taloudellisellakin näkökulmalla: Se tulee lopulta halvemmaksi.

Tehokkaammaksi tehty ohjelmisto kuluttaa vähemmän resursseja, energiaa, palvelimia, siirtoyhteyksiä ja niin edelleen, mikä on suoraa säästöä ostajalle.

Janne Kalliola, Vihreä koodi -kirja

LUT-yliopiston professori Jari Porras toteaa Vihreä koodi -kirjan esipuheessa ”ohjelmistojen energiatehokkuutta saadaan parannettua heti, kun energiatehokkuudesta tulee ohjelmistoille välttämätön tarve”. Ja tämä tarve syntyy joko tulevaisuuden lainsäädännön kautta tai siitä, kun ostajapuoli alkaa sitä vaatimaan – mieluummin ennen kuin laki niin käskee. Vihreän koodin puolestapuhujia ei ole koskaan liikaa.

Jotta saisit vihreän koodin periaatteet osaksi omaa ja yrityksesi arkea, voi sitä ajatella vaikkapa uuden rutiinin muodostamisen kautta: Alkuun on mietittävä, mitä rutiinilla haluat saavuttaa ja sen seuraamiseen pitää keskittyä hieman tarkemmin ja säännöllisemmin. Mutta ajan mittaan siitä tulee luonnollinen osa ajatteluasi eikä se vaadi juurikaan ylimääräistä ponnistelua.

Lopuksi

Ohjelmistojen absoluuttista energiankulutusta on käytännössä mahdotonta mitata, mutta se ei tarkoita sitä, etteikö sen vähentämiseen tähtääviä toimenpiteitä olisi syytä tehdä ja vaatia. Meillä on kuitenkin jo käytössämme valikoima keinoja, joilla tiedämme olevan pienentävää vaikutusta energiankulutukseen. Koodin optimointia voi tehdä paljonkin, kerättävän datan määrän voi minimoida ja ottaa vihreän koodin periaatteet osaksi omaa ja yrityksen toimintaa laajemminkin. Miksi emme siis käyttäisi niitä?

Me North Patrolissa kannustamme asiakkaitamme vaatimaan hosting-palveluiltaan uusiutuvan energian käyttöä. Usein ehdotamme myös kilpailutuksen laadullisiin kysymyksiin kohtaa, jossa pyydetään toimittajaa kertomaan, miten ratkaisussa varmistetaan energiatehokkuus, nopeus käyttäjän kannalta ja palvelun toimivuus myös vanhemmilla päätelaitteilla. Lisäksi vaatimusmäärittelyvaiheessa pyrimme tunnistamaan toiminnallisuudet, jotka voivat olla potentiaalisesti raskaita päätelaitteille tai vaativat kohtuuttomasti tiedonsiirtoa. Kannustamme asiakkaitamme myös miettimään välttämättömien mittaus- ja mainontajäljittimien määrää, ja esimerkiksi julkishallinnon asiakkaille suosittelemme usein kokonaan raskaasta evästepohjaisesta mittaamisesta luopumista.


1: ”The astronauts had access to only 72 kilobytes of computer memory”. The Smithsonianin artikkeli Margaret Hamiltonista.

2: ”Suomen 1000:n suosituimman sivun keskimääräinen koko oli noin 2,7 Mt tietokoneella, 3,4 Mt vieritetyllä tietokoneella, 2,4 Mt mobiililla ja 3,1 Mt vieritetyllä mobiililla.” Aalto-yliopiston vuonna 2022 tekemä Analyysi suosituista Suomessa käytetyistä verkkosivuista (s. 5).

Lisälukemista

PS. Sinua voisi kiinnostaa tulossa oleva ilmainen webinaarimme: Parhaat muotoiluratkaisut tuote- ja palvelusivuille (15.5.2024 klo 10:00). Ilmoittaudu webinaariin

Lue palveluistamme Pyydä tarjous

Tuija Latva

IT-tradenomi Tuija Latva on käytettävyyden, saavutettavuuden ja digipalvelujen toteutuksen asiantuntija. Tuija konsultoi asiakkaita hankkeiden valmistelussa, käyttökokemuksen muotoilussa ja tarkoituksenmukaisten toteutusratkaisujen määrittelyssä.

Tuijan osaaminen kattaa käyttökokemuksen kaikki ulottuvuudet asiakasymmärryksestä käyttöliittymien esitystapoihin, toiminnallisuuksiin, visuaaliseen ulkoasuun ja tekniseen toteutukseen. Tuija on kokenut käyttöliittymien, design systeemien, mallinnusten, saavutettavuusratkaisujen ja käyttäjätestausten suunnittelija.

Tuija on ollut IT-alalla yli 20 vuotta ja taustanaan hänellä on koodarin kokemus niin verkkopalveluista kuin taustajärjestelmistäkin. Vuodesta 2016 lähtien hän on keskittynyt käyttöliittymien suunnitteluun, visualisointiin ja toteutukseen. Uransa aikana hän on toiminut sekä konsultin roolissa että myös osana toteutustiimejä.

Tietosivustot

Autamme laajojen tietosivustojen suunnittelussa, määrittelyssä ja kilpailuttamisessa. Muotoilemme konseptin, tietorakenteet, käyttökokemuksen ja toiminnot hyötypalveluksi, jota on miellyttävä käyttää, helppoa ylläpitää ja kustannustehokasta kehittää koko elinkaarensa ajan.

Lue palveluistamme

Pyydä tarjous

North Patrol auttaa onnistumaan

Meitä on kymmenen konsulttia, kaikki kokeneita suunnittelijoita tai teknologia-asiantuntijoita. Joka vuosi viemme läpi yli 50 projektia, joissa autamme hankkeensa eri vaiheissa olevia asiakkaitamme luomaan uusia digipalveluja ja tietojärjestelmiä. Asiakkaamme ovat olleet erittäin tyytyväisiä työhömme (arvosana 9,5/10), ja monet heistä palaavat asiakkaiksi yhä uudestaan.

Olemme apunasi, kun kaipaat puolueetonta näkemystä teknologiavalintoihin, kirkastusta palvelukonseptin ideaan, tarkennusta vaatimusten määrittelyyn, konkreettista tukea tarjouskilpailuun tai ohjausta toteutusprojektin läpivientiin.

Ota selvää firmastamme

Miten erotumme kilpailijoistamme?

  • Digipalveluiden suunnitteluun erikoistuminen

    Olemme erikoistuneet digipalveluiden laadukkaaseen suunnittelutyöhön ja vaatimusmäärittelyyn. Missiomme on auttaa asiakkaita onnistumaan hankkeissaan luomalla mahdollisimman hyvät lähtökohdat toteutusvaiheelle – oli sitten kyse ketterästä toteutuksesta omalla tiimillä tai kumppanin kanssa tehtävästä hankkeesta tai julkisesti kilpailutettavasta urakasta.

  • Emme myy koodausta emmekä lisenssejä

    Moni teknologiakonsultti suosittelee asiakkailleen teknisiä ratkaisuja, joita sama talo myös toteuttaa. Meillä tätä vinoumaa ei ole, koska meiltä ei voi ostaa koodausta tai lisenssejä eikä meillä ole riippuvuuksia teknologiatoimittajiin. Näkökulmamme ohjelmistomarkkinaan on laaja-alainen. Tavoitteena on aina löytää asiakkaalle parhaiten soveltuva ohjelmistoratkaisu, oli se sitten räätälöity ratkaisu, saas-palvelu, avoimen lähdekoodin alusta tai näiden yhdistelmä.

  • Tehokkuus, tavoitteellisuus ja tuloksellisuus

    Toimeksiannoillemme sovitaan aina konkreettinen lopputuotos, jonka avulla asiakas pääsee hankkeessaan eteenpäin. Hioutuneiden menetelmiemme ja kokeneiden konsulttiemme ansiosta pystymme tuottamaan sen tehokkaasti, yllättävän vähäisillä työmäärillä, ja rahallesi syntyy vastinetta.

Siirry takaisin sivun alkuun