Novi dizajn, nova tehnologija: Kako je HRT METEO oživio nakon 6 godina

netokracija - prije 2 tjedna - link

Od kuda početi s unaprjeđenjem aplikacije koja svoje veliko ažuriranje čeka šest godina, pogotovo kada govorimo o meteorološkoj aplikaciji koja će sadržavati goleme količine podataka? Zadatak u svakom slučaju nije jednostavan…

Više o tome što je HRT METEO postao i koje je sve tehničke izazove morao prijeći, govore nam Zoran Vakula, HRT-ov meteorolog, i Domagoj Kovačević, Senior VP of Technology u Shapeu, tvrtki koja stoji iza tehničkog dijela aplikacije.

Aplikacija koja je dugo čekala svoje osvježenje

Nakon što je HRT Meteo pokrenut u rujnu 2016. godine, uz iznimku povremenih osvježavanja aplikacije, od 2018. godine nije dodavan novi sadržaj. Radilo se na održavanju aplikacije i prilagođavanju novim verzijama operativnih sustava mobilnih uređaja, a tek se 2023. godine počelo raditi na osvježavanju, ističe Zoran Vakula:

Tijekom prošle godine, pod vodstvom kolege Ernesta Strike – sadašnjeg voditelja projekta HRT METEO, zahvaljujući sadašnjem vodstvu HRT-a, ostvarili su se uvjeti za “osvježenje” aplikacije, i to ne samo vizualno, nego i za uključivanje novih podataka. Neki od njih bili su planirani još prvih godina postojanja aplikacije.

Sada HRT METEO uz podatke o aktualnom vremenu, prognoze i upozorenja meteorologa – sadrži i računalne izračune po satima smjera i brzine vjetra, visine valova, količine naoblake i oborine te temperature zraka, zatim podatke o peludnim alergenima i kvaliteti zraka te o temperaturi tla na različitim dubinama i na 5 cm iznad tla. Korisnik sam odlučuje koje podatke želi pratiti i kojim redoslijedom, objašnjava nam poznati meteorolog.

Aplikacija posljednjih mjeseci bilježi oko 100.000 redovnih korisnika, ali Vakula očekuje povećanje zahvaljujući nadogradnji Renato Branđolica za HRT

U prvim godinama HRT METEO aplikacija bilježilo se oko 220.000 preuzimanja, a prošlih mjeseci povremenih je korisnika aplikacije bilo oko 100.000:

“Prognoziram” da ćemo se novim oblikom aplikacije, s još više korisnih informacija nego prije, i to za različite skupine korisnika, približiti “starim stazama slave”.

Uz hrpu novih podataka, aplikacija nudi procjenu stručnjaka DHMZ-a

HRT METEO sada nudi radarske slike oborina te upozorenja na opasne vremenske pojave odmah nakon što ih objavi DHMZ, prognoze biometeoroloških uvjeta, koncentracije peluda i valovitosti Jadranskog mora, podatke o kvaliteti zraka, stanju tla i njegovoj temperaturi na različitim dubinama, kao i vremena izlaska i zalaska Sunca te nastupa Mjesečevih mijena, ističe naš sugovornik.

Osim za svakodnevni život mnogima korisnih podataka na jednom mjestu, novi HRT METEO i dalje je vjerojatno ponajviše jedinstven po Prognozi s dušom – drukčijom prognozom od ostalih koje se nude na tržištu, objašnjava Zoran:

Riječ je o subjektivnoj procjeni iskusnih stručnjaka DHMZ-a za hrvatska područja i još 55 mjesta u Hrvatskoj te 44 europska grada, zahvaljujući suradnji sa Svjetskom meteorološkom organizacijom. Pritom je vjerojatnost pogreške smanjena jer nakon sutrašnjeg dana postoje prognoze za područja, a ne za mjesta.

Korisnici još mogu uočavati uspješnost i razlike između računalnih prognoza i subjektivnih procjena meteorologa, koji ne pripremaju prognoze samo na temelju jednog izračuna jednog modela atmosfere, nego svakodnevno na temelju ansambla od stotinjak izračuna različitih modela atmosfera te višegodišnjeg iskustva u korištenju tih modela.

Očito je da govorimo o velikom broju novih podataka koji se moraju ažurirati u stvarnom vremenu, ali kakav je to bio izazov za developere?

Robusni i backend i frontend

Ovakve aplikacije moraju imati robusni backend i frontend upravo zbog velike količine podataka koji su pritom jako različiti. Neki podaci su automatski generirani i postoji mogućnost hardverske greške, a neki podaci se unose ručno, što znači kako postoji mogućnost ljudske greške. Aplikacija zato mora biti spremna u slučaju da nema potpune podatke, otkriva nam Domagoj:  

Ako neki podatak koji je redovno dolazio “uvijek”  jednog dana jednostavno ne dođe, zbog nekog razloga izvan naše kontrole, to ne smije uzrokovati rušenje aplikacije. Ako se dogodi da nismo predvidjeli taj konkretni scenarij, bitno je brzo reagirati i dodati dodatne provjere u lanac procesiranja podataka da se izbjegnu slični problemi u budućnosti.

Aplikacija komunicira isključivo sa Shapeovim backendom od kojeg prikuplja agregirane informacije za gradove koje je korisnik odabrao. Performanse dohvata podatka u aplikaciji ovise o backend servisu koji se može prilagoditi po potrebama i tako osigurati kvalitetno korisničko iskustvo bez dugog čekanja podataka, ističe naš sugovornik:

S obzirom na to da je riječ o značajno više podataka koje je potrebno obraditi, server na kojem se izvršava backend dio je pojačan s 4 jezgre/8 GB RAMA na 8 jezgri/32 GB RAMA, što je trenutno zadovoljavajuće. Uz to aplikacija lokalno sprema zadnje dohvaćene podatke koje korisnik odmah po pokretanju može vidjeti, a za to vrijeme se dohvaća najnovije stanje i osvježava prikaz.

Od nativnih tehnologija do hibridnih

Kod redizajna aplikacije najveći izazov je bio uklopiti sve te nove podatke uz postojeće, a pritom sačuvati jednostavnost korisničkog iskustva. Zbog toga su krenuli iz početka i u potpunosti redizajnirali sučelje aplikacije tako da su korisnicima najvažniji podaci na dohvat ruke, a oni koji žele znati više mogu jednostavno doći do detalja. S tehničke strane izazov je bio prelazak na novu, hibridnu tehnologiju – aplikacija je pisana u Flutteru, objašnjava Domagoj:

Prethodna verzija je koristila nativne tehnologije za razvoj, budući da u to vrijeme hibridne tehnologije kvalitetom nisu bile na potrebnom nivou.

To se s vremenom promijenilo i sad je moguće razvijati vrhunske aplikacije hibridno. Prednost hibridnog razvoja je u jednostavnijem održavanju i dodavanju novih funkcionalnosti.

Iako se dio koda i dalje mora pisati nativno, na primjer desktop widgeti, većina koda je zajednička za iOS i Android platforme.

Izazov potencijalno osjetljivim podacima

Posebno je veliki izazov praćenje promjena uvjeta i politika koje definiraju trgovine aplikacija za iPhone i Android uređaje jer neke funkcionalnosti aplikacije zahtijevaju osjetljive podatke. Na primjer, uz aplikaciju dolazi desktop widget koji prikazuje trenutne meteo podatke za lokaciju na kojoj se korisnik trenutno nalazi. Ta značajka je korisna jer aplikacija sama prepoznaje lokaciju i ovdje se situacija komplicira, navodi Domagoj:

No, da bi to bilo moguće, mora u pozadini pročitati trenutnu lokaciju korisnika, što je potencijalno osjetljiv privatni podatak. Radi zaštite privatnosti korisnika, trgovine aplikacija sve više i više ograničavaju pristup takvim funkcionalnostima ili ga dozvoljavaju, ali uz dobro obrazloženje zašto je potreban, tako da je obično potrebno nešto prilagoditi kod svake nove verzije iOS i Androida u samom kodu aplikacije ili u sigurnosnim politikama.

A kakvu vi budućnost prognozirate aplikaciji HRT Meteo nakon ovih promjena? Isprobajte je za iOS i Android uređaje i javite!

pročitaj cijeli članak

mobilne aplikacije (13)Prikaz (12)vremenska prognoza (264)zoran vakula (14)