Odkryj tajemnice green codingu - czy to przyszłość w branży IT?

Lokowanie produktu: ING

Green coding to podejście do programowania skupiające się na tworzeniu aplikacji i systemów informatycznych, zgodnie z zasadami zrównoważonego rozwoju, minimalizując również ich negatywny wpływ na środowisko naturalne.

Odkryj tajemnice green codingu - czy to przyszłość w branży IT?

Tylko trzy działania ograniczają emisję dwutlenku węgla uruchamianego oprogramowania, czyli: jego efektywność energetyczna, świadomość emisji dwutlenku węgla, efektywność użycia sprzętu.
W ramach green codingu programiści, testerzy, jak i pozostali specjaliści z branży IT dążą do ograniczania zużycia energii, wykorzystując ekologiczne technologie oraz zwiększając świadomość wpływu technologii na środowisko naturalne, przyczyniając się tym samym do minimalizowania emisji gazów cieplarnianych.

Jak może wyglądać green coding?

Green Coding zakłada, że programiści mogą wnieść istotny wkład w ochronę środowiska poprzez podejmowanie świadomych decyzji podczas tworzenia oprogramowania. Obejmuje to takie aspekty jak efektywne wykorzystanie zasobów sprzętowych i energii, optymalizacja kodu w celu zminimalizowania zużycia zasobów, wybór bardziej energooszczędnych technologii. Dobrym pomysłem jest użycie efektywnych algorytmów i kodu, które wymagają mniejszej ilości mocy obliczeniowej i zasobów sprzętowych, wyłączenie nieużywanych funkcjonalności albo zwrócenie uwagi na liniową charakterystykę wzrostu zapotrzebowania na sprzęt wraz ze wzrostem ilości użytkowników.

Warto też lepiej wykorzystać sprzęt, np. tworząc wirtualne serwery w chmurach prywatnych czy publicznych. Green coding może oznaczać również odpowiednie planowanie lokalizacji sprzętu (np. by był tam, gdzie produkowana energia ma niższy wskaźnik emisji CO2) i czasu uruchomienia przetwarzania (wybierajmy porę dnia, gdzie współczynnik zielonej energii produkowanej w tym czasie jest najwyższy). Wisienką na torcie może być unikanie nadmiernego zużycia zasobów sprzętowych, używanie wstępnie przetworzonych danych czy minimalizowanie powtarzających się operacji.

Tyle teorii – a jak wyglądało wyzwanie od ING?

Na wyzwanie konkursowe „Zielona Tesla za zielony kod” składały się trzy niezależne zadania. Należało stworzyć kod źródłowy programu i programów uruchamiających – ale najważniejsze było to, by zoptymalizować wszystko pod kątem zapotrzebowania na energię. Kod źródłowy programu w konkursowych zadaniach musiał zostać przygotowany w języku programowania Java, a programy uruchamiające, czyli build.sh i run.sh, w języku skryptowym bash.

Wyłoniono 10 najlepszych zadań, z których wybrano jednego zwycięzcę. Musiał stworzyć rozwiązanie nie tylko przyjazne dla środowiska, ale przede wszystkim poprawne inżyniersko.

Zadaniem było stworzenie aplikacji rozwiązującej trzy różne problemy programistyczne, które nawiązywały do tematyki branży finansowej.

- Problemy nie były trudne, ponieważ zależało nam na dużej ilości zgłoszeń. Stworzone przez nas testy obciążeniowe sprawdzały, czy aplikacja uczestnika odpowiada poprawnie na zapytania, które zawierały znacząco więcej danych niż te podane jako przykłady. Wiele rozwiązań które zawierały poprawny jakościowo kod odpadało po wejściu w fazę testu obciążeniowego, przekraczając regulaminowe 3 sekundy maksymalnego czasu odpowiedzi. Patrząc na wyniki część rozwiązań odpadała na gorszej jakości jednego z zadanych trzech problemów. W przypadku najlepszych rozwiązań, kod bardzo często zawierał testy, które uczestnicy zaprojektowali po to, by optymalizować przekazane rozwiązania, co było bardzo dobrą strategią – podkreśla Radosław Madej, Principal Dev Engineer w ING Banku Śląskim, członek kapituły konkursowej.

Zwycięzca może cieszyć się przez rok zieloną Teslą

Sprawdziliśmy aplikację pod dużym obciążeniem i obserwowaliśmy, która z nich jest najszybsza. Wskaźnikiem, który braliśmy pod uwagę był 90 percentyl czasów odpowiedzi na testy, które dobieraliśmy w taki sposób, by rozwiązania, które nie zostały poddane przez uczestników konkursu analizie i optymalizacjom, przekraczały magiczną liczbę 3 sekund postawioną w regulaminowym, maksymalnym czasie odpowiedzi. Podejście to pozwoliło nam na wyłowienie 10 prawdziwych perełek kunsztu developerskiego, które w kolejnym etapie poddaliśmy ocenie ekspertów pracujących w banku. Polegał na analizie kodu, komentarzy dokumentujących wykonywane optymalizacje oraz przygotowanych przez uczestników testów. Najlepsze trzy rozwiązania były naprawdę świetne, ale zwycięzca konkursu może być tylko jeden – dodaje Radosław Madej.

W ING pracuje ponad 1200 specjalistów od IT. Codziennie rozwijają aplikacje, z których korzystają miliony klientów. Mają realny wpływ na rzeczywistość – i dlatego ważne, by również w tym dziale brać pod uwagę wpływ na środowisko.

ING stara się ograniczyć swój ślad węglowy

ING realizuje strategię ESG, której jednym z celów jest wspieranie procesów przejścia na neutralną klimatycznie gospodarkę niskoemisyjną. Wiemy, że wprowadzanie zmian musimy zacząć od nas samych. Właśnie dlatego ograniczamy nasz ślad węglowy poprzez działalność prowadzoną przez nas i naszych dostawców. Konkurs to jeden z elementów przemiany. O środowisku należy pamiętać na każdym kroku – nawet podczas pisania kodu przed komputerem. Choć trzeba przyznać, że to bywa naprawdę przyjemne. Na przykład podczas jazdy zieloną Teslą…

Więcej o konkursie tu: www.ing.pl/zielonykod

Lokowanie produktu: ING
Najnowsze