Green Coding: Programarea sustenabilă pentru un viitor mai verde

Cu toții ne dorim să avem parte de un mediu curat, un ecosistem sănătos și de cât mai multe spații verzi unde să ne putem petrece timpul liber alături de copii.

Cu toate acestea, sănătatea Planetei se află într-o stare din ce în ce mai precară. Schimbarea de mediu este o dilemă globală care zilnic produce pagube majore. Îmbucurător este însă faptul că din ce în ce mai multe persoane își exprimă interesul și îngrijorarea, fiind gata de ajutor.

Zilele recente am celebrat Ora Pământului, iar cu această ocazie, la Bloomcoding am decis să analizăm ce impact benefic poate avea programarea asupra mediului. Astăzi, aproape orice afacere dispune de un sector special rezervat problemelor de mediu și a acțiunilor întreprinse pentru combaterea acestora.

În lumea IT, termenul este cunoscut drept programarea sustenabilă sau green coding. Iar în acest articol, vom aduce la cunoștință cât de important este green codingul astăzi și care sunt beneficiile majore pentru societate și mediu.

Reducerea Consumului de Energie

Programarea este limbajul utilizat de specialiștii IT atunci când creează instrucțiuni în dezvoltarea unui software. Green Coding sau programarea sustenabilă este o metodă dezvoltată pentru a combate problemele de mediu. Aceasta se referă la limbajul de programare scris astfel, încât să producă formule ce minimalizează consumul de energie.

Crearea unui software nu este un lucru ușor, întrucât implică coduri, fișiere și date de care un utilizator nu are nevoie. Acest exces mai este numit de către informaticieni bloatware. Datele de prisos îngreunează operarea calculatorului, ceea ce rezultă într-o pierdere semnificativă de energie.

Pentru a accesa toate datele, calculatorul este obligat să urmeze fiecare linie de cod, chiar și atunci când ea nu este necesară, ceea ce duce la o emisie mai ridicată de dioxid de carbon. În astfel de situații, ne sare în ajutor Green Codingul.

El este utilizat inclusiv la îmbunătățirea bateriei unui dispozitiv, a puterii de operare, combinând resursele pentru o mai bună rezolvare a sarcinilor. 

Green Coding

Mai puțină Poluare

Poluarea este, în mare parte, un rezultat al deșeurilor menajere produse de către oameni. Învățând și utilizând Green Coding, programatorii pot crea aplicații ce diminuează necesitatea hârtiei, a plasticului și a altor materiale poluante.

Un exemplu potrivit este monitorizarea angajaților și a contabilității prin intermediul unui software, în locul foilor de hârtie, care mai târziu vor fi aruncate.

Însă problema cu depozitarea rămâne a fi prezentă în Cloud. Cloud este locul în care toate datele unei companii sunt arhivate. Chiar dacă aceasta produce mai puține deșeuri fizice, totuși cele digitale încă predomină. Aici intervine rolul fiecărui utilizator de a șterge fișierele neutilizate și de a le păstra pe cele strict necesare. 

Internetul este, de asemenea, un produs al programării. Tehnologiile permit oamenilor să lucreze online, ceea ce diminuează poluarea aerului în orașe, unde pentru a te deplasa până la locul de muncă ai nevoie, cu siguranță, de un tip de transport, fie acesta public sau privat. 

Invenția și Dezvoltarea unui Software

Există o multitudine de aplicații create pentru a reduce poluarea. Majoritatea dintre ele au fost dezvoltate în ultimii zece ani, din cauza necesității stringente de a acționa.

Un bun exemplu este serviciul de poștă electronică – Mailchimp. Mailchimp este invenția unui programator olandez Danny Van Kooten. Inițial, aplicația utiliza o multitudine de linii de cod inutil, ce îngreunau operarea software-ului. Eventual, programatorul a decis să le reducă, folosind cu 20 kilobytes mai puțin.

20 KB este un număr destul de mic, însă raportat la cei peste 2 milioane de utilizatori, cu mult mai puțină energie este irosită în fiecare zi. Ideea olandezului s-a răspândit în întreaga lume, iar programatorii au denumit-o web design sustenabil.

green coding

Paginile Web

Crearea paginilor web, de asemenea, utilizează cod. Astăzi, nenumărate pagini promovează reducerea poluării împotriva schimbărilor climatice. Doar accesând aceste site-uri, utilizatorii pot contribui la schimbare.

Ecosia spre exemplu, este un motor de căutare care donează 80% din profit organizațiilor non-profit ce se ocupă de împădurirea zonelor defrișate.

În ce mod însă ajută un utilizator?

Într-un mod foarte simplu. Ecosia poate fi utilizat drept o alternativă pentru Google. La fiecare 45 de secunde (cu aproximație) un copac este plantat acolo unde este cea mai mare nevoie de el. Recent, Ecosia a atins cifra de 130 de milioane de copaci plantați. 

Curățarea Oceanelor

Poluarea oceanelor cu plastic reprezintă o problemă drastică în ultimele decenii. Numărul deșeurilor marine a ajuns atât de considerabil, încât unele companii, în semn de protest, au decis recunoașterea acestora drept o țară aparte.

Inițiativele unei companii denumite Plastic Airdrift a creat o statistică unde indică regiunile cel mai puternic poluate. Aceste informații pot fi accesate de către orice utlizator de pe site-ul companiei.

Cum poate ajuta programarea?

Educația online este o resursă valoroasă pentru copii, profesori, cât și pentru părinți de unde ne putem documenta asupra acestei probleme. Vidcode este o platformă online de unde copiii pot afla mai multe despre poluarea oceanelor, familiarizându-se totodată cu programarea.

green coding

Protejarea faunei sălbatice

Numărul populației de pe glob este în continuă creștere, asemenea spațiilor defrișate, ceea ce lasă animalele fără adăpost. O metodă de a reduce impactul urbanizării este de a proteja fauna sălbatică creând spații verzi internaționale unde animalele să se poată simți în siguranță.

În acest sens, utilizând tehnologiile informaționale cât și cadrele din satelit, se pot dezvolta regiuni protejate acolo unde este cea mai mare nevoie de ele, iar informațiile pot fi stocate în format digital.

Platforme ca Scratch oferă resursele potrivite pentru copii, astfel încât aceștia să facă primii pași în programare, învățând simultan despre cât de importantă este fauna pentru natură. 

La Bloomcoding, pe lângă multitudinea de resurse educative de care dispunem, utilizăm și platforma Scratch în procesul de învățare. Mai multe detalii despre metoda noastră de învățământ, dar și despre filosofia Bloom aflați aici.

Protejarea habitatelor naturale

Odată ce infrastructura așezărilor umane se dezvoltă, iar spațiul defrișat este din ce în ce mai extins, habitatele naturale restrânse nu oferă spațiu îndeajuns pentru celelalte animale. Aici vine informatica în ajutor.

Colectând datele oferite de satelit, oamenii de știință, alături de informaticieni, pot monitoriza habitatele naturale și viețuitorii acestora. Informațiile stocate deschid căile analizelor cu privire la schimbarea mediului și a acțiunilor necesare care necesită a fi întreprinse. Cu ajutorul acestor resurse, oamenii pot aduce un impact pozitiv mediului. 


Având toate aceste oportunități la îndemână, ne putem întreba ce reprezintă tehnologiile sustenabile și cum acestea ne pot salva de la o criză de mediu? 

Tehnologia durabilă este un termen umbrelă care descrie inovația ce ia în considerare resursele naturale și încurajează dezvoltarea economică și socială. Scopul acestor tehnologii este de a reduce riscurile de mediu și cele ecologice și de a crea un produs durabil. 

Sustenabilitatea în tehnologie poate fi definită prin mai mulți termeni-cheie:

  • Substituție

Tehnologia favorizează trecerea de la materiale nebiodegradabile la materiale biodegradabile în producția sa. De asemenea, înlocuiește resursele neregenerabile cu resurse regenerabile.

  • Prevenire

Tehnologia durabilă previne deteriorarea, contaminarea și alte efecte negative asupra mediului prin utilizarea sau producția sa.

  • Eficienţă

 Tehnologia este eficientă în ceea ce privește utilizarea energiei și a resurselor.

green coding

Durabilitatea în tehnologie și-a făcut deja loc în viața cotidiană și în inovație. Exemple comune de tehnologie durabilă și inovații includ:

  • Transportul public și cel electric
  • Lumina LED
  • Energia solară
  • Tehnologii de captare și stocare a carbonului

De ce Green Coding este bun pentru mediu?

Tehnologiile sustenabile au puterea de a transforma modul cum operează lumea. Principiul cheie este de a minimaliza orice impact negativ asupra mediului și a societății.

Vestea bună este că orice afacere poate promova sustenabilitatea. La Bloomcoding oferim o atenție deosebită mediului înconjurător și dorim să aducem la cunoștință oportunitățile de bază a tehnologiilor sustenabile.

  1. Reduce riscurile și îmbunătățește rezultatele oricărui proiect

Un avantaj al tehnologiei durabile este că ajută afacerile să reducă riscurile. Când sunt utilizate materiale regenerabile și biodegradabile, se protejează indirect ecosistemul și afacerile de efectele negative ale schimbărilor climatice.  

Patruzeci și opt la sută din întreprinderile de astăzi folosesc sustenabilitatea pentru a îmbunătăți producția și inovația. Având la dispoziție tehnologie durabilă, orice afacere va atrage investiții. 

  1. Atrage investitori și angajați

Bătălia tăcută de a atrage și reține candidații și investitorii de top continuă în lumea afacerilor. Cheia pentru dobândirea celor mai bune talente este implementarea tehnologiei durabile.

Trei din patru potențiali angajați doresc să lucreze pentru afaceri cu standarde sociale și de mediu. Loialitatea angajaților este, de asemenea, mai probabilă atunci când o afacere este dedicată durabilității.


Revenind la o educație sustenabilă, prin ce se diferențiază conceptul de Green Coding de o programare obișnuită?

Green Coding este un termen recent popularizat datorită intențiilor sale de mediu și se referă la codul de programare care este scris pentru a produce algoritmi ce utilizează un consum minim de energie.

Cercetările sugerează că există două tipuri de considerente de făcut – cele structurale și cele comportamentale. Considerentele structurale ar cuprinde măsurile energetice legate de blocurile de cod (unități de cod), în timp ce considerentele comportamentale ar fi consumul de energie legat de întrebuințările utilizatorilor, cum ar fi trimiterea unui e-mail sau verificarea rețelelor de socializare. 

Identificarea exemplelor specifice de Green Coding în uz sunt destul de dificil de găsit. Mai multe exemple de codare scrise pentru a îmbunătăți experiența utilizatorului sunt sinonime cu mai puțin spațiu de stocare utilizat.

Acest lucru se datorează faptului că aplicațiile care sunt scrise pentru dispozitive specifice sau care sunt intuitive pentru utilizatori au, de asemenea, cereri de energie în mod inerent mai mici. 

Codificarea ecologică nu este în obiecție față de practicile actuale eficiente de inginerie software, dar poate o nouă caracteristică integratoare a acestora.

De exemplu, programatorii urmăresc adesea performanța și utilizează un instrument numit Big O Notation (performanța și complexitatea unui algoritm). Acest lucru le permite să calculeze eficiența algoritmilor lor de codare.

Pentru o demonstrație vizuală a modului în care designul algoritmic în programare poate afecta performanța, vedeți acest videoclip. Utilizarea unor astfel de instrumente și astfel de practici în codificare au ca efect secundar eficiența energetică. 

În mod interesant, limbaje de programare precum Scala sau Golang, concepute pentru a fi cât mai ușor posibil de manevrat, ar putea fi prezentate și ca argumente pentru Green Coding. Cu toate acestea, deși aceste limbaje sunt utilizate de mărcile majore (Netflix, LinkedIn, Google etc.), ele au cazuri specifice de utilizare, care până acum au limitat adoptarea lor ca limbaje de programare universale.

Mulți ingineri de software susțin că un cod bun, indiferent de limbajul de programare, este în mod inerent „verde”, deoarece permite o performanță ridicată. Lipsa exemplelor care abordează în mod specific respectarea mediului în codificare nu ilustrează însă o lipsă de preocupare pentru mediu. De fapt, programarea este cea care a condus la dezvoltarea de aplicațiilor ecologice și prietenoase mediului. 

Pentru a ne da mai bine seama cum funcționează conceptul de Green Coding în lumea reală, vom analiza consumul de energie utilizat în decursul unui an de către device-uri, în special de telefoanele mobile. 

Cu cât ne aprofundăm mai mult, realizăm că inginerii de software joacă un rol important, oferind mai multe aplicații ecologice. Sursele de emisie cu efect de seră predomină inclusiv în industria software, iar scopul nostru este să aflăm cum ar putea fi reduse. Rezultatul ar fi ceea ce am dori să numim Green Apps. 

green coding

Cum funcționează aplicațiile mobile?

Aplicațiile sunt instalate pe un telefon mobil și comunică cu resurse ale telefonului, cum ar fi RAM (memorie), CPU (procesor), GPU (procesor grafic), Bluetooth și WiFi. Toate aceste comunicații și interacțiuni consumă bateria telefonului. În funcție de natura aplicației, nivelul de consum poate varia.

Dacă aplicația este un joc video, atunci  necesită o procesare mult mai mare, precum și un consum de memorie și grafică. Dacă însă dispunem de o aplicație de chat, atunci aceasta trimite și primește în mod continuu mesaje și date, deci este în interacțiune constantă cu serverul de aplicații.

În dependență de modul în care este scrisă aplicația, ea poate transmite o cantitate inutilă de date. Toate aceste activități consumă bateria dispozitivului și, ca urmare, telefonul mobil are nevoie de o încărcare constantă. 

În al doilea pas însă, ne informăm despre numărul de telefoane mobile din lume și, de asemenea, cât de multă electricitate consumă anual. 

Se estimează că sunt aproximativ 3 miliarde de dispozitive mobile pe întreg mapamondul.

Telefoanele noastre mobile, în principal, smartphone-urile necesită a fi încărcate cel puțin o dată pe zi. În medie, fiecare telefon pe an ar consuma 1kWh-5kWh pentru a se încărca complet.

Ar costa nu mai mult de 1 dolar pe an, ceea ce nu este genul de economie pentru o persoană. Dar când luăm în considerare puterea de multiplicare a consumului de energie și a emisiilor de carbon, putem vedea acest lucru din alt punct de vedere.

Pentru fiecare 1 kWh de energie, generăm aproximativ 0,537k de CO2, ceea ce înseamnă că am generat peste 3 milioane de tone de CO2 în fiecare an pentru a ne încărca telefonul și această cantitate este echivalentă cu emisiile de carbon ale unor națiuni mici precum Malta și Nepal.

Desigur, acest calcul se bazează pe sursa de energie din centralele electrice (presupunând că acestea nu folosesc surse regenerabile de energie).

green coding

Ar fi corect să spunem că smartphone-urile au înlocuit mai mult sau mai puțin multe activități zilnice pe care le aveam de-a face cu laptopurile și desktopurile. Obișnuiam să folosim computere și desktop-uri pentru a naviga, a vorbi prin skype, a trimite e-mailuri, a viziona YouTube și Netflix (ceea ce încă mai facem) și a juca jocuri video.

Acum însă, realizăm o parte din aceste activități cu ajutorul telefoanelor. Iar telefoanele consumă mult mai puțină energie în comparație cu laptopurile (de 20 de ori mai mult decât un iPhone), desktop-ul (de 70 de ori mai mult), televizoarele și consolele de jocuri.

Chiar dacă folosim într-o oarecare măsură dispozitive care consumă mai puțină energie, acest argument ar putea fi contestat știind că în lume există mai multe telefoane decât computere personale și laptopuri. 

Pe lângă consumul de energie electrică, smartphone-urile din ziua de azi oferă și un trafic masiv și constant către servere și centre de date care sunt în continuă expansiune pentru a menține datele utilizatorilor la dispoziție, iar acest lucru le-a crescut consumul de energie electrică.

Acum cunoaștem problemele și sursele emisiilor indirecte de gaze cu efect de seră în industria software-ului. Programatorii și dezvoltatorii de software realizează tot posibilul pentru a-și face codurile mai eficiente, scalabile, mai rapide și mai ușor de întreținut.

Deoarece multe aplicații sunt implementate pe serviciile bazate pe cloud, dezvoltatorii au adoptat mai multe metode pentru a minimiza traficul între server și clienți.

Tehnologia viitorului începe să proiecteze modele pentru a lua în considerare activități care ar putea duce la mai puține emisii de carbon, evitând consumul inutil de resurse, precum și transmiterea unei cantități minime de trafic și date atât pe telefon, cât și pe servere. Asta este ceea ce putem numi, momentan, Green Apps.

Poate că o ușoară îmbunătățire a aplicațiilor noastre ar putea economisi 10% din bateria telefonului și, prin aceasta, am putea economisi aproximativ 300.000 de dioxid de carbon anual. Această sumă nu este prea mare, dar ar fi un bun început pentru industria software-ului să-și arate angajamentul de a lupta împotriva încălzirii globale și a schimbărilor climatice cu ajutorul Green Codingului.

Împărtășește-ți dragostea