Kako sam u mladosti trenirao vaterpolo, a kasnije sam sa prijateljima iz kluba i bratom na jedno vrijeme preuzeo i vođenje vaterpolo kluba dugo sam bio svjestan onoga što se odvija za zapisničkim stolom na svakoj vaterpolo utakmici. Snalaženje sa starim štopericama tijekom utakmice, njihovo održavanje i neizvjesnost hoće li zatajiti u kritičnom momentu su mi ostali u sjećanju. Tijekom eksperimentiranja sa Angular.js 2016. godine napravio sam običnu štopericu u Javascriptu, ali to je bilo samo kao neki nedorečeni backup za slučaj da zakaže klasična mehanička štoperica. Bila je zamišljena kao funkcionalna i ergonomska štoperica za korištenje na mobitelu u slučaju nužde. Tu aplikaciju možete vidjeti i isprobati na linku https://sheshnjak.github.io/water-polo-stopwatch/ ili u članku Napredni JavaScript.
Prije mogućnosti korištenja vibe programiranja se nisam upustio u izradu ovakve aplikacije kod koje osnovna funkcionalnost zahtijeva puno povezanih elemenata. Osim toga, zadnjih godina je došlo i do nekih promjena u pravilima igre koja se tiču baš mjerenja vremena i trajanja napada. Zbog toga je sada došao moment da se malo posvetim i izradim ovakvu aplikaciju. Pošto je vaterpolo “mali” sport u usporedbi sa, recimo, nogometom, odmah sam napravio dvojezičnu aplikaciju i uključio opciju korištenja engleskog jezika.
Vaterpolo mjerač vremena (https://sheshnjak.github.io/waterpolo-timer/ ):
Ova aplikacija omogućava istodobno praćenje glavnog vremena i vremena napada tijekom vaterpolo utakmice. Moguće je dodati isključenja igrača (više njih, moguće je i obostrano isključenje). Prilikom isključenja, preostalo vrijeme napada se automatski postavlja. Nakon isteka napada oglašava se zvučni alarm i vrijeme novog napada automatski kreće dalje jer se pretpostavlja promjena posjeda lopte nakon isteka. Nakon postignutog gola vrijeme se automatski zaustavlja i prekidaju se trenutno aktivna isključenja, zbog vremena potrebnog za kretanje lopte s centra ne pretpostavlja se trenutni nastavak živog vremena igre. Omogućeno je i ručno postavljanje vremena trajanja četvrtine, cijelog napada ili nastavka napada nakon prekršaja. Također, moguće je i usred četvrtine ručno korigirati glavno vrijeme preostalo do kraja četvrtine.
U postavkama je moguće prebaciti jezik aplikacije na hrvatski ili engleski, postaviti nazive ekipa koje igraju utakmicu. Za svaku ključnu promjenu prikazuje se undo opcija u trajanju od 5 sekundi. Nakon utakmice aplikacija nudi korisniku da skine zapisnik sa vremenima i redoslijedom ključnih događaja – postignutih golova, isključenja, početka i završetka četvrtina. Nisam se odlučio na to da zapisnik aplikacije sadržava sve stavke standardnog zapisnika utakmice. To čak i ne bi bilo jako teško isprogramirati, problem je u sučelju kojim bi se sve te informacije unosilo u realnom vremenu jer bi unos broja igrača za svaki prekršaj ili postignuti gol bio prespor da bi korisnik aplikacije pratio utakmicu. Namijenio sam aplikaciju za korištenje praćenja vremena vaterpolo utakmice i vremena napada, a vrijeme isključenja prirodno spada u tu kategoriju. Dodatna funkcionalnost praćenja rezultata ne traži puno dodatnog vremena, pa sam dodao i to.
Aplikacija je napravljena kao PWA, što znači da nakon što je otvorite na mobilnom uređaju ili tabletu imate mogućnost instalirati je, dodati ikonu aplikacije koja će se onda otvarati preko cijelog ekrana. Za uređaje koji imaju fizičku tipkovnicu (ili spoje Bluetooth tipkovnicu na mobilni uređaj) postoje i praktične tipkovničke kratice iako je raspored elemenata optimiziran za touchscreen uređaje tako da komande budu na dohvat prstima, a ključne informacije na gornjem dijelu ekrana.
Plan je da aplikacija bude besplatna i da olakša život svima koji se na bilo koji način bave vaterpolom. U slučaju pitanja i prijedloga slobodno mi se obratite na email adresu sheshnjak@gmail.com .