Vabatahtlikuna töötamise kogemus

22. september 2019 8 min lugemist

Aastal 2017 sattusin vabatahtlikuks loomakaitseorganisatsiooni Nähtamatud Loomad, kuhu mind kutsus organisatsiooni asutaja Kristina. Kuigi ma olin natuke tegelenud loomakaitse teemadega juba varem, muutusin Nähtamatutes Loomades tegutsedes palju aktiivsemaks. Erialalt olen ma tarkvaraarendaja. Artiklis püüan lühidalt kirjeldada oma kogemust vabatahtlikuna. Mõned kohad on tehnilised, aga usun, et ka IT-ga vähem sina peal lugejad leiavad midagi. Miks ma just loomakaitsega palju tegelenud olen, võib lugeda varasemast artiklist.

Artikli idee eest tänan Harri Bendit.

Kuidas ma alustasin Nähtamatutes Loomades?

Algselt oli plaanis aidata kampaaniaga Tugev Taimsel Kütusel, sest olin natuke postitanud ühte veganlust ja sporti puudutavasse Facebooki gruppi. Kuid peagi leidsin ennast poodide eest meeleavaldustelt, kui algas Rimi mõjutuskampaania palvega, et Rimi loobuks puurikanade munade müügist.

Olin varem käinud kaks korda metsloomade tsirkuses kasutamise vastastel meeleavaldustel. Kuid Rimi meeleavaldused hirmutasid mind esialgu, sest see tundus mulle kuidagi pealetükkiv ja ma olin loomult tagasihoidlik inimene. Pärast pikka veenmist nõustusin meeleavaldust pildistama, kuid ise ma osaleda ei soovinud. Juhtumisi jäid aga plakatid ja lendlehed minu kätte ning ma hakkasin iga kord kohal käima.

Märkasin meeleavaldustel, et ka teistel oli raske. Keegi ei tundnud ennast mugavalt poodi sisenevatele klientidele lendlehti jagades. Hakkasin seda koos vennaga kohusetundest tegema. Alguses oli see väga ebameeldiv ja iga kord, kui meeleavalduse kuupäev lähenes, tundsin ärevust. Kuid aja jooksul ma harjusin sellega.

Korraldasime meeleavaldusi iga nädal. Esimese kuu jooksul käis mõnel meeleavaldusel päris palju rahvast. Rekord oli umbes 12 juures. Kuid Rimi ei vastanud meile ja aja jooksul osalejate arv langes. Kõige kauem pidasime vastu mina, vend Olle ja välistudengid Dominyka ja Hely. Mõnikord seisime poe ees vaid kahekesi. See oli kohati päris demotiveeriv, kuid me ei andnud alla ja pärast neljakuust võitlust kirjutas Rimi poliisile alla.

Kui ma alustasin, polnud Nähtamatutel Loomadel veel veebilehte. Meie emaorganisatsioon Otwarte Klatki aitas meile teha staatilist veebilehte nende enda veebilehe disaini põhjal. Kuna parasjagu oli Otwarte Klatki võrgustikuga liitunud mitu organisatsiooni erinevatest Euroopa riikidest, oli vabatahtlikel palju tööd ning veebilehe arendamine venis. Kohusetundest pakkusin ennast sellega appi. Peagi võtsin Otwarte Klatki inimestelt töö üle ja viisin vajalikud muudatused lõpuni, et veebilehe esialgne versioon kähku üles saada.

Annetuste süsteem

Järgmisena oli meil tarvis veebilehe head annetamise vormi. Programmeerisin süsteemi, mis võimaldas meile annetada pangakaardiga läbi Maksekeskuse või lihtsalt teha enda pangas püsikorraldus, kuid sisestades eelnevalt enda nime ja isikukoodi, et saaksime Maksu- ja Tolliametile tulumaksuvabastuseks annetajate andmed esitada.

Sellele süsteemile programmeerisin ka administraatori liidese, kus saab annetuste infot natuke redigeerida. Näiteks kustutada lõpuni sooritamata jäänud annetusi. Samuti on seal näha annetuste statistikat. Näiteks, kui suur summa on kuu jooksul laekunud ning kui palju on meil Maksekeskuse, PayPali annetusi ja püsikorraldusi.

Hiljem oleme seda teiste vabatahtlikega palju täiustanud. Nagu öeldakse – kui annad sõrme, võetakse käsi. Meil on mitmeid väiksemaid kampaaniaid, mille raames kogume allkirju. Hiljem hakkas infosüsteem ka sellega tegelema ning administraatori liidesesse ilmus allkirjade info ja statistika.

Hea sõber Mattias lisas graafiku päevaste annetuste summadest. See on minu jaoks üks põnevamaid funktsioone. Enamikel päevadel ei saa me süsteemi kaudu sentigi. Kui aga meie fundraiser Triin ja sotsiaalmeedia tiim loovad Facebooki üleskutse või uudiskirju kirjutav Elo poetab sinna annetamise üleskutse, on seda kohe joonisel hüppena näha. Väga meeldiv on analüüsida ja jälgida, kuidas vabatahtlike töö vilju kannab.

Infosüsteemi ekraanitõmmis (annetuste andmed on illustratiivsed)

Uudiskirju saadame teenusega Sendgrid. Veebilehel on võimalik uudiskirjaga liituda, kuid Sendgridi API lubab teha päringuid vaid teatud vahedega. Võib juhtuda, et kahest samal ajal liitunud isikust üks läheb kaduma. Seetõttu hakkasime liitujaid koguma infosüsteemi andmebaasi ning iga päeva lõpus käivitub crontabi skript, mis sünkroniseerib uudiskirjaga liitujad Sendgridi. Samamoodi sünkroniseeritakse petitsiooni allkirjastanud isikud, kes soovisid uudiskirjaga liituda.

Meie veebilehel on uudiskirjade loetelu. Selle koostab infosüsteem automaatselt Sendgridi API abil. Kuna Sengridi API on väga aeglane, kasutasin tarkvara Redis päringute cache’imiseks.

Lõppkokkuvõttes muutus algselt annetuste kogumiseks mõeldud süsteem erinevate funktsioonide pudruks. See on mingis mõttes justkui algeline tarkvara heategevusorganisatsiooni püsti panemiseks. Kahjuks on süsteemi kood suhteliselt kräpp, sest vabal ajal töötades oleme pidevas ajalises kitsikuses. Kuna ma palgatööl palju veebiga tegelenud polnud, siis tegin ka alguses kasutatud raamistike osas halbu valikuid. Hea meelega kirjutaks selle kõik nullist uuesti, kui aega oleks.

Kampaaniate veebilehed

Nähtamatud Loomad teeb sageli lisaks meie püsivatele kampaaniatele väiksemaid kampaaniaid ja veebilehti. Saame väga palju abi emaorganisatsioonilt Otwarte Klatki, kes on jaganud meiega oma veebilehtede lähtekoodi, mida oleme oma vajadustele kohandanud.

Artikli kirjutamise hetkel olen panustanud mingil määral järgnevate kampaaniate veebilehtede loomisesse:

  • FIFA kampaania, mille raames kogusime allkirju, et FIFA nõuaks edaspidi korraldajamaadelt paremat loomade kohtlemist. See kampaania sai alguse Venemaa MM-i kontekstis, kus tapeti hulkuvaid koeri, et jätta külalistele linnast parem mulje.

  • munadehind.ee, mis on meie puurikanade munade kaotamise kampaania peamine lehekülg.

  • Prisma mõjutuskampaania veebileht, kui palusime Prismal loobuda puurikanade munade müügist.

  • aitankarusloomi.ee, mis on meie karusloomafarmide keelustamise kampaania veebileht.

  • Naarits Nora kampaania veebileht. Kogusime annetusi naaritsate varjupaiga ehitamiseks.

  • Euroopa Liidu välistesse riikidesse tapale viidavate elusloomade veo peatamise kampaania veebileht. Kogusime allkirju Maaeluministeeriumile.

  • Tugev Taimsel Kütusel veebileht. Selle kampaaniaga püüame näidata, et liha vältimine on ka meestele ja sportlikele inimestele sobilik.

Nende lehtede loomisesse on palju panustanud mitmed teised tublid vabatahtlikud: Paul, Mattias ja Sandra-Annete. Disaini ja tekstidega on väga palju aidanud meie töötajad ja vabatahtlikud turunduse, fundraising’u ja muudest valdkondadest.

Aitankarusloomi.ee

Üks meeldejäävamaid töid on aitankarusloomi.ee lehekülg. See oli esimene kampaanialehekülg, mille ma tegin ise nullist. Sain nautida veebilehe disaini kallal töötamist.

Lehe esialgses versioonis olid meil näidiskirjad, mida saata riigikogu liikmetele. Lisasime ka nupud e-posti aadressite ja näidiskirjade kopeerimiseks. Olin veebilehe disainiga väga rahul. Meie turundustiim tegi väga head tööd ning lehte külastasid paljud. Probleemi tutvustav artikkel ilmus Õhtulehe veebiväljaandes ja ka TV3 veebilehel. Põnev oli reaalajas jälgida kiiresti kasvavat külastajate arvu.

Kampaania töötas nii hästi, et peagi hakkasid poliitikud Facebookis kisama, et neile saadetakse spämmi. Spämmiga muidugi tegu ei olnud, sest mingit automaatikat seal ei olnud. Iga veebilehe külastaja saatis kirjad ise. Varsti ilmus kisast ka meedias artikkel. Lehe missioon teema fookusesse tõsta oli saavutatud ja vaid pärast kahte päeva kaotasime sealt kirjade saatmise üleskutse. Ühest küljest olin täiega rõõmus, et see nii hästi töötas, aga teisalt oli kahju, et mu hoolega tehtud lehekülg nii vähe aega üleval oli.

aitankarusloomi.ee e-kirjade lahendus

Jaanuaris lisasime veebilehele petitsiooni sellel hetkel Riigikogusse jõudnud karusloomafarmide keelustamise eelnõu toetuseks. Organisatsioon Loomus tegi palju tööd eelnõu heaks. Nemad kirjutasid ka eelnõu selgituse. Meie meediatöö oli taas suurepärane ning kogusime kokku umbes 17 800 allkirja. Kahjuks eelnõu seekord läbi ei läinud.

Uus Riigikogu peab aga taas teemat arutama hakkama. Selleks tegime rahvaalgatus.ee abil rahvaalgatuse. rahvaalgatus.ee autor lisas lahkelt enda keskkonnale funktsiooni, millega saime allkirjade arvu oma veebilehel kuvada. Esimese ööpäevaga olid vajalikud 1000 allkirja kogutud. Kui ma ei eksi, siis tegime sellega rahvaalgatus.ee rekordi kõige kiiremini eesmärgini jõudmises. Kuigi me pole allkirjade arvu poolest esimene, on meie kampaania siiski selles keskkonnas üks edukamaid.

Kes mind lähemalt tunneb, teab, et olen elu jooksul erinevate meeleoluhäiretega kimpus olnud. 2018 detsember, kui ma aitankarusloomi.ee esimest versiooni tegin, oli minu jaoks erinevate halbade asjade kokkulangemise tõttu vilets aeg. Õhtud möödusid juues ja veebilehe kallal töötades. Sellel kuul tegin ilmselt kõige enam tööd heategevuse jaoks, sest käisin ka iga nädal meeleavaldustel. Tundsin, et kui ma ennast aidata ei saa, püüan vähemalt teisi aidata. Seetõttu jääb aitankarusloomi.ee mulle hästi meelde.

Nähtamatute Loomade veebilehe uus versioon

Staatilisele veebilehele artiklite lisamine oli tülikas. Pärast artikli kirjutamist pidi artikli autor paluma IT tiimi liikmel veebilehte uuendada. Mõnikord oli vaja uudis kiiresti üles saada, kuid vabatahtlikud polnud parasjagu kättesaadavad. Otsustasime, et vajame sisuhaldussüsteemi.

Sisuhaldussüsteemile kujunduse disainimine võib olla päris tülikas ning veebilehe vana funktsionaalsuse sisuhaldussüsteemile lisamine tundus vaev, mida ma enda kaela ei sooviks. Leidsin aga huvitava lahenduse. Wordpressi sisuhaldussüsteemist on võimalik postituste infot saada üle REST liidese. See võimaldaks meil Wordpressis kirjutatud postitusi kuvada vana veebilehe sees.

Võtsin kasutusele Wordpressi pistikprogrammi WPGraphQL, mis võimaldab päringuid teha GraphQL keeles. Vanast veebilehest sai frontend Wordpressile. Viisin vana lehe koodi üle Nuxt.js raamistikule. Kuna Nuxt.js toetab PostCSS keelt, milles oli kirjutatud tuhandeid ridu vana veebilehe stiili, võimaldas see suhteliselt kergesti olemasolevat koodi taaskasutada.

Nuxt.js teine eelis on single page app’ide (SPA) ja server-side rendering’i tugi. Uuel nahtamatudloomad.ee veebilehel navigeerides muudab veebilehitsejasse laetud rakendus veebilehe sisu lehekülge uuesti laadimata. Usun, et vähesed kasutajad märkavad seda, aga ise olen sellise lahendusega väga rahul. Suutsin vana veebilehe koodi ära kasutada, võtta kasutusele moodsad veebitehnoloogiad ning saime lõpuks sisuhaldussüsteemi.

Üks puudus Nuxt.js rakendustel on kehv Node.js rakenduste tugi jagatud majutusteenustes. Seetõttu pidime rentima virtual private server’i (VPS). VPS-i kasutamiseks pidin õppima serverit administreerima. Tutvusin NGINX veebiserveri seadistamisega, systemd teenuste kirjutamisega, Let’s Encrypt’i sertifikaatide genereerimisega jne. NGINX on reverse proxy Nuxt.js rakenduse ees ning serveerib ka Wordpressi ja meie infosüsteemi. Nüüdseks on meil päris keeruline mitmetest omavahel suhtlevatest komponentidest arhitektuur.

Selle käigus õppisin ka asjalikumaid juurutusskripte kirjutama. Kui enne kopeerisin veebilehe koodi SSH kaudu serverisse, siis nüüd kasutame vidinat nimega Deployer, mis võimaldab zero-downtime juurutust ja rollback’e. Ilmselt on see kõik veebiarendajate jaoks igapäevane, aga minu jaoks oli põnev uusi asju õppida.

Mida olen ise sellest võitnud?

Kuigi ma oskan enda arvates päris adekvaatselt programmeerida, polnud mul väga palju kogemusi veebilehtede ja infosüsteemide arendamisel. Läbi vabatahtliku töö õppisin mitmeid vahendeid paremini kasutama ning tutvusin endale uute tehnoloogiatega. Usun, et sellest on tulevikus kasu ka palgatööl või teistesse heategevustesse panustamisel.

Palgatööl olen päris palju tegelenud teaduse ja inseneeria vahepealse tööga. Meil on väga keeruline tehnoloogia, mille vastu veel tugevat huvi ei osata tunda. Kuigi ma olen palgatöölt saanud palju intellektuaalset stimulatsiooni huvitavate probleemide lahendamisel, pole see leidnud palju praktilist rakendust. Kui FIFA kampaania kogus umbes 8000 allkirja, andis see mulle tugevat saamata jäänud rahuldust, sest paljud soovisid minu tehtud asja kasutada ja sain sellega maailmasse panustada. Kuigi mu panus oli väike ja see veebileht oli tehniliselt triviaalne, oli see siiski väga hea tunne.

Üks suurim kasu vabatahtlikuna töötades on rahuldus, et ma saan midagi olulist teiste heaks ära teha. Teine minu jaoks väga oluline väärtus on imeliste inimestega tutvumine. Loodan, et see artikkel motiveerib natuke teisi ja näitab, et vabatahtlikutöö võib pakkuda häid võimalusi enda arendamiseks ja eneseteostuseks.