Exista cateva instrumente care ii pot ajuta pe dezvoltatori sa conceapa softuri sustenabile, insa ele nu vor conta pentru emisiile de carbon fara sprijin organizational si fara instrumente mai bune de monitorizare.
Software-ul sustenabil limiteaza consumul de energie al hardului si minimizeaza impactul asupra mediului, reducand emisiile de carbon ale centrului de date. Insa e putin probabil ca dezvoltatorii individuali care adopta practici de codare mai ecologice sa aiba un efect asupra emisiilor de carbon ale softurilor, fara sprijin organizational si din partea furnizorilor.
In teorie, dezvoltatorii pot crea software-uri sustenabile implementand cele mai bune practici de software ecologic. Insa, in practica, mainile dezvoltatorilor sunt legate adesea de alte exigente organizationale, asa cum sunt livrarea rapida si blocarea furnizorului.
Pentru ca sustenabilitatea sa prinda radacini, dezvoltatorii au nevoie de politici organizationale ample, dedicate reducerii emisiilor de carbon, practicilor mai bune de sustenabilitate ale furnizorilor si de mai multe instrumente prin care dezvoltatorii sa poata evalua efectele software-ului asupra mediului, potrivit expertilor din industrie.
Optimizarea pentru sustenabilitate este adesea cea mai mica prioritate pentru organizatii, in special in cazul aplicatiilor generatoare de venituri, a spus Vladimir Mukhin, inginer principal de sisteme la o companie de servicii IT din Newtown, Pennsylvania. „Intotdeauna exista prioritati mai mari, asa cum sunt securitatea, scalabilitatea si disponibilitatea aplicatiei sau adaugarea unor functii noi”, a spus el.
Chris Pratt, fondatorul companiei de videoconferinte Vocal Software, este de acord ca mediul poate fi o prioritate redusa pentru unele companii. Ori de cate ori este posibil, Vocal genereaza software cu emisii de carbon negative – de pilda rularea de software pe hardware cu emisii de carbon negative – insa Pratt nu crede ca aceasta este norma pentru toate companiile.
„Daca un dezvoltator lucreaza pentru o companie, prima mea presupunere este ca CEO-ul va fi preocupat sa scoata codul la timp”, a spus el. „Pentru ei nu conteaza daca acest cod este complicat si foloseste o tona de energie – ei isi doresc un cod care sa functioneze si sa rezolve o problema de afaceri”, a mai adaugat Pratt.
Hardware-ul ecologic poate fi secretul software-ului sustenabil
Capacitatea unui dezvoltator de a produce software sustenabil depinde in mare masura de hardware-ul pe care ruleaza softul, sau de modul in care un furnizor alimenteaza un centru de date, a spus Pratt.
Multi ingineri de software lucreaza pentru companii cu hardware existent la sediu, iar aceste companii ar putea alege sa adopte o politica de emisii negative de carbon pentru centrele lor de date, a spus el. Centrele de date cu emisii negative de carbon elimina din aer mai mult carbon decat emit, fie prin surse de energie mai curata, fie prin compensarea emisiilor de carbon – credite pe care organizatiile le pot cumpara pentru a-si reduce amprenta de carbon.
„Dar, cu siguranta, [sustenabilitatea] nu este o problema care sa poata fi rezolvata de un singur inginer de software. Depinde de compania in care lucreaza sau de companiile furnizorului lor sa solutioneze aceasta problema”, a atras atentia Pratt.
Dezvoltatorii care lucreaza in companii si organizatii nu pot avea prea multe de spus cu privire la locul in care isi ruleaza aplicatiile, insa unii dezvoltatori freelanceri sau care lucreaza pentru organizatii mai mici ar putea avea libertatea de a analiza mai atent optiunile hardware mai sustenabile pentru rularea de software.
Principalii trei giganti – Amazon Web Services (AWS), Google si Microsoft – s-au angajat sa-si reduca emisiile de carbon.
Amazon, de pilda, sustine ca este pe cale sa isi alimenteze toate operatiunile, inclusiv AWS, cu energie 100% regenerabila pana in 2025.
Microsoft sustine ca este neutra din punct de vedere al emisiilor de carbon incepand din 2012 – ceea ce inseamna ca elimina anual tot atat de mult carbon pe cat emite – si ca intentioneaza ca pana in 2030 sa aiba emisii negative de carbon.
Google spune ca procesele de lucru din Google Cloud sunt la un nivel zero net incepand din 2019 si are in plan sa functioneze cu energie fara emisii de carbon – energie eoliana, de pilda – pana in 2030.
Nivelul zero net extinde neutralitatea carbonului, incluzand toate gazele cu efect de sera, cum ar fi gazele fluorurate, metanul si protoxidul de azot.
Insa acesti pasi facuti de gigantii din domeniu nu merg destul de departe, a spus Mukhin.
„Furnizorii de cloud ar putea oferi reduceri suplimentare pentru aplicatiile optimizate pentru performanta”, a spus el. „Acest demers ar oferi dezvoltatorilor o motivatie externa suplimentara pentru a incepe sa produca software mai ecologic”.
Mai multe instrumente necesare pentru reducerea emisiilor de carbon
Green Software Foundation, o organizatie nonprofit dedicata stabilirii standardelor din domeniu legate de software-ul ecologic, a publicat si gestioneaza o lista de instrumente necesare dezvoltatorilor pentru a masura emisiile de carbon si consumul de energie pentru software.
Insa un dezvoltator individual care foloseste aceste instrumente pentru a curata un cod va avea un impact limitat asupra sustenabilitatii softului, a spus Pratt.
“Este dificil pentru dezvoltatorii de software sa reduca emisiile de carbon facand softurile mai eficiente” a spus el. “Dar daca softurile extrem de ineficiente sunt desfasurate la scara, ar putea exista unele efecte negative care sa poata fi imbunatatite” a mai adaugat acesta.
Tocmai de aceea, o politica la nivel de companie ar putea avea un efect mai mare decat modificarea unor bucati de cod de catre dezvoltatorii individuali.
“Un verificator al pachetului tehnologic ar fi un inceput bun, a spus Chris Riley, senior manager pentru relatia cu developerii la compania de tehnologie de marketing HubSpot. Verificatorul ar putea functiona intr-un mod similar cu modelul StackShare, imbinat cu un fel de raport oficial, a spus el. StackShare este o platforma de software discovery ce permite dezvoltatorilor sa partajeze informatii despre cine si ce instrumente software foloseste si de ce.
In opinia lui Riley, un astfel de verificator ar putea semana cumva cu report card-ul de la Wired cu privire la modul in care afirmatiile ecologice ale celor trei provideri de cloud raspund standardelor.
Tiebe Parmentier, co-fondatorul sistemului de asistenta pentru clienti Tekst.ai, considera ca multe companii – si mai ales startup-urile – ar putea calca acceleratia in parcursul lor catre softuri mai ecologice daca instrumentele ar incuraja sustenabilitatea.
GitHub, de pilda, este popular in randul developerilor, astfel ca un instrument integrat de sustenabilitate ar putea face diferenta in ceea ce priveste emisiile de carbon, a spus el.
„Mi-ar placea o functie care sa arate impactul ecologic al fiecarei parti a codului care este lansata”, a spus Parmentier. Ori de cate ori un dezvoltator creeaza un pull request nou, un instrument automat ar putea verifica eficienta energetica a noului cod, aproape in acelasi mod in care functioneaza astazi verificatoarele de calitate sau robotii de implementare automata, a spus el.
Foto: freepik