Jak programovat udržitelně? Úsporné algoritmy pomáhají snižovat uhlíkovou stopu v IT
Odpovědnost v podnikání se týká i vývojářských firem. S udržitelností pomůžou úsporné algoritmy i optimalizace procesů, ke kterým se některé společnosti uchýlí nejen díky ESG.
Redakce Obnovitelně.cz
3. 7. 2023
Firem, které by se s pojmem ESG (Environmental, Social, and Governance) ještě nesetkaly, na trhu rapidně ubývá. Environmentálně, sociálně a právně odpovědné chování se totiž stává standardem, který může mít zásadní dopad na podnikání a společnost jako celek.
Výjimkou nejsou ani vývojářské týmy, ačkoli se o nich v těchto souvislostech příliš nemluví. Softwaroví hráči přitom mohou mít zásadní vliv na všechny tři jmenované oblasti. Jak lze tedy ovlivnit ESG z pohledu IT?
Za dopady své práce na okolí jsou zodpovědní všichni, vývojáře nevyjímaje. V rukou mají například energetickou účinnost produktů, spotřebu energie, emisi skleníkových plynů nebo správu odpadu – to vše může mít zásadní vliv na životní prostředí.
Zelenější kód a úsporné algoritmy
Softwarové produkty by měly být pokaždé navrhovány s ohledem na energetickou úsporu. To může znamenat preferenci úsporných algoritmů, které minimalizují spotřebu energie v rámci výpočetního procesu.
Naopak algoritmy, které jsou náročné na výpočetní výkon, mohou vyžadovat vysokou spotřebu energie výpočetního hardwaru, jedná se třeba o komplexní grafické efekty v herních aplikacích.
Významnou úsporu mohou představovat algoritmy, které minimalizují počet výpočtů a tím snižují spotřebu energie. Jsou tak důležité zejména pro mobilní a IoT zařízení. Například algoritmy pro snímání obrazu mohou minimalizovat počet snímků na sekundu a tím snížit spotřebu energie fotoaparátů při využití různých aplikací.
V potaz lze vzít i výběr „ekologičtějšího“ programovacího jazyka – skriptovací jazyky (například JavaScript, Ruby nebo PHP) jsou obvykle energeticky náročnější než jazyky kompilované (C/C++, Java nebo Rust).
Důležitou roli hrají algoritmy také při optimalizaci procesů, kdy pomáhají snížit spotřebu energie v průmyslových aplikacích nebo při řízení dopravních sítí. Může se jednat například o optimalizaci výroby, logistiky nebo řízení individuální dopravy. To je už u mnoha firem běžnou praxí díky tomu, že na nich v provozu ušetří – ale ne všichni vědí, že současně mohou nabídnout i lepší vizitku na trhu právě díky ESG.
Optimalizovat je možné také kód, díky kterému budou aplikace efektivnější a spotřebují méně energie. Dále je možné díky kompresi dat snížit velikost souborů a tím také eliminovat potřebu úložného prostoru a přenosové kapacity, což na energiích také ušetří – a současně s tím se uvolní méně skleníkových plynů při provozu datových center.
Práce s technologiemi má i společenský dopad, měla by proto klást důraz na odpovědnost
Vývoj softwaru může mít rovněž vliv na společenské a sociální faktory, jako je bezpečnost a zabezpečení, ochrana soukromí a ochrana lidských práv. Softwarové produkty by měly být navrženy tak, aby byly bezpečné, spolehlivé a chránily soukromí uživatelů.
Samotné aplikace mohou ovlivňovat práva lidí z hlediska ochrany osobních údajů a svobody projevu. V neposlední řadě vliv IT proniká i do společností a jejich řízení, jako jsou podniková kultura, etické chování nebo řízení rizik. Vývojáři by proto měli navrhovat software tak, aby podporoval etické chování a transparentnost a aby přispíval k budování firemní kultury.
Vývoj softwaru může mít významný dopad na všechny ESG faktory. Není však možné spoléhat pouze na vývojáře, aby při stavění nových produktů a služeb zvažovali všechny dopady na environmentální, sociální a správní faktory, snažili se minimalizovat negativní dopady a přispívat k pozitivním změnám.
Takový přístup by především měly vyžadovat firmy, pro které se software vyvíjí – nejen aby dosáhly co nejvyšší efektivity, ale aby se zasadily o skutečně pozitivní změnu.
Autor: Petr Anderle, produktový manažer a stratég v MoroSystems
Foto: Unsplash