Sprint programistyczny (zwany również hackatonem) to rodzaj warsztatów, których uczestnicy wspólnie projektują i realizują internetowe i informatyczne przedsięwzięcia. 3 i 4 grudnia w Laboratorium Brama Politechniki Warszawskiej podczas takiego sprintu programiści i programistki wolontarystycznie zajmą się projektami społecznymi. Nie trzeba umieć programować, by – z korzyścią dla swojej organizacji – wziąć udział w takim spotkaniu.
Społeczne dobro, otwarte dane publiczne – to tematy bliskie organizacjom pozarządowym. Gdy dodamy do tego, że wspomniane sprinty są formą wolontariatu i że aby wziąć w nich udział nie trzeba umieć programować – okazuje się, że programiści i społecznicy mają ze sobą wiele wspólnego. Podstawą jest dobre zdefiniowanie potrzeb społecznych i nakreślenie wspólnego celu, który razem można by osiągnąć w krótkim czasie, jaki daje praca w grupie podczas hackatonu.
Sprinty, hackathony, hackerzy
Zanim zaczniemy zastanawiać się, jak organizacja pozarządowa może skorzystać z tej nowej formy wolontariatu, wyjaśnijmy kilka pojęć.
Sprint programistyczny, nazywany też hackatonem (ang. hackathon), to formuła spotkania dosyć często stosowana w świecie projektów informatycznych. Szczególnie popularna jest w projektach z nurtu wolnego i otwartego oprogramowania. Osoby zaangażowane w różne przedsięwzięcia zazwyczaj znajdują się w odległych geograficznie miejscach i na co dzień współpracują wyłącznie zdalnie. Podczas sprintu spotykają się „w realu”, wyznaczają sobie cele i starają się maksymalnie wykorzystać wspólnie spędzony czas. Wymieniają uwagi, dyskutują, na bieżąco dzielą się zadaniami. Hackaton ma też jeszcze jedną cechę, podkreślaną w nazwie „programistyczny sprint”. Podczas spotkania nikt zbytnio się nie oszczędza, praca trwa czasem kilkadziesiąt godzin non-stop. Chodzi o jak najlepsze efekty i (przede wszystkim!) o miły dreszczyk satysfakcji, kiedy na koniec spotkania możemy spojrzeć na efekty własnej pracy i – co tu dużo ukrywać – pochwalić się nimi przed pozostałymi uczestnikami i uczestniczkami.
Drugie pojęcie, które należałoby wyjaśnić, jest słowo hacker. W powszechnym rozumieniu, ukształtowanym głównie przez mass media, to osoba włamująca się do systemów informatycznych, zazwyczaj w celach przestępczych. Często czytamy o hackerach włamujących się na strony instytucji lub wykradających numery kart kredytowych. Tymczasem słowo hacker ma jeszcze inne, oryginalne historycznie znaczenie: oznacza osobę ciekawą tego, jak działają różne urządzenia lub programy i żywotnie zainteresowaną ich ulepszaniem. Termin ten został ukuty w latach 60. w środowisku osób pracujących w renomowanym Massachusetts Institute of Technology (MIT). Ograniczenia w dostępie do uczelnianego sprzętu i oprogramowania sprawiły, że pracownicy MIT wykorzystywali do maksimum narzędzia i zasoby, jakie mieli do dyspozycji, przy okazji usprawniając je i dzieląc się między sobą wiedzą. Wokół tego ruchu, w ciągu ostatnich 50 lat, powstała cała kultura oparta na szacunku dla praktycznych umiejętności (głównie związanych z elektroniką, komputerami i oprogramowaniem – ale nie tylko) oraz zakładająca otwarte dzielenie się wiedzą oraz efektami swojej pracy.
Ostatnio po latach niesławy rozpoczęło się odzyskiwanie słowa „hacker”. Coraz częściej pojawia się ono w oryginalnym znaczeniu, niezwiązanym z jakąkolwiek działalnością przestępczą. Zatem, jeżeli ktoś przedstawia się jako hacker, nie musi to wcale oznaczać, że chce włamać się na nasze konto bankowe. Być może osoba ta pojawiła się, aby nam pomóc.
Hackathon dla dobra ludzkości?
Od lat 90. hackatony zaczęły być popularne także poza środowiskami zainteresowanymi nowymi technologiami. Przyciągały coraz więcej osób działających w bardzo różnych dziedzinach, lecz wykorzystujących komputery i sieci komputerowe w swojej pracy. Szczególnie popularne stały się w środowisku tzw. startupów, czyli osób rozpoczynających działalność biznesową i próbujących zbudować firmę (zazwyczaj działającą w dużej części w Internecie) opartą na własnym pomyśle. Sprinty nabrały szerszego znaczenia oraz zmieniły nieco swoją rolę – oprócz okazji do wspólnej pracy, stały się miejscem spotkań i wzajemnego poznawania się osób zainteresowanych tworzeniem nowych produktów i usług w Internecie oraz „konkursami piękności” (w pozytywnym znaczeniu!) dla inwestorów szukających okazji inwestycyjnych.
Nie musiało upłynąć wiele czasu, by ktoś wpadł na pomysł, że w ten sam sposób można działać społecznie i świadczyć wolontarystyczne usługi dla organizacji pozarządowych . Sektor informatyczny to niezwykle gwałtownie rozwijająca się dziedzina gospodarki, a osoby w nim pracujące bardzo często nie mają wystarczająco dużo czasu i motywacji, aby poświęcać się działalności społecznej. Osoby, z którymi miałem okazję rozmawiać, a które na co dzień zajmują się programowaniem, grafiką komputerową czy analizą systemową twierdzą, że chętnie poświęciłyby trochę czasu na pomoc w społecznych przedsięwzięciach. A jednak tego nie robią - dlaczego? Po pierwsze, nie znają potrzeb organizacji pozarządowych, nie mogą poświęcać czasu na nawiązywanie relacji z liderami projektów społecznych i nie wiedzą, gdzie zacząć. Co więcej, chętnie rozpoczęłyby własne projekty społeczne, ale nie mają czasu na znalezienie współudziałowców. Hackaton okazuje się w takim przypadku formułą idealną – jest zarówno miejscem, gdzie można poznać osoby zainteresowane podobnymi przedsięwzięciami oraz spędzić razem trochę czasu faktycznie je planując i tworząc – przy okazji dobrze się razem bawiąc.
Jak zatem w praktyce wygląda udział w hackatonie? Czego się należy spodziewać?
Sprint odbywający się pod marką Random Hacks of Kindness jest częścią podobnych inicjatyw odbywających się tego samego dnia na całym świecie. Tego samego dnia, w tym samym miejscu odbywać się będzie również hackaton z okazji Międzynarodowego Dnia Otwartych Danych, ale o tym przeczytajcie więcej w na stronie http://SocHack.pl.
Spotkanie zaczyna się od prezentacji pomysłów. Na scenie pojawiają się osoby pragnące zachęcić innych i inne do pracy nad ich przedsięwzięciem; w krótkich słowach opowiadają o swoim pomyśle. Ważne jest, żeby pomysł dotyczył oczywiście szeroko rozumianych narzędzi informatycznych – musi być związany z umiejętnościami i doświadczeniem osób, które będą brały udział w wydarzeniu. Może to być pomysł na serwis internetowy, aplikację działającą na telefonie komórkowym albo specjalną bazę danych zawierającą informacje ważne dla konkretnej organizacji lub kampanii. A może strona organizacji wymaga przeróbki i brakuje osób, które byłyby w stanie to zrobić? Może potrzeba ją rozszerzyć o możliwość korzystania z niej przez osoby niewidome, czyli dostosować ją do działania z tzw. czytnikami tekstu? Trzeba pamiętać, że nie każdy projekt, nad którym pracujemy na hackatonie, musi być rewolucyjnym, nowym narzędziem, które przeobrazi polski sektor pozarządowy. Czasem wystarczy niewielki nakład pracy, którą da się łatwo wykonać w ciągu dwóch dni, aby osiągnąć ciekawe efekty. Istotne jest, aby przedstawić swój pomysł lub potrzebę w klarowny i interesujący sposób – tak aby jak najwięcej osób chciało do nas dołączyć.
Po części prezentacyjnej osoby zgłaszające pomysły odpowiadają na dodatkowe pytania osób, które chciałyby się przyłączyć do realizacji ich projektów. Po chwili zamieszania i gwaru wyłaniają się zespoły projektowe. Nie trzeba się martwić, jeżeli nikt nie zgłosi się do realizacji naszego pomysłu – coś takiego również może się zdarzyć! Zainteresowania i umiejętności osób zgromadzonych na sali są bardzo różne, ale nie zawsze dopasowane do charakterystyki wszystkich pomysłów. Co ze sobą w takim przypadku zrobić? Po prostu dołączyć do innego zespołu i popracować nad czyimś pomysłem. Być może w trakcie pracy nawiążecie znajomości, które pozwolą wam zrealizować wasz pomysł poza hackatonem.
Grupa osób znajduje sobie miejsce, gdzie będzie wspólnie pracować przez kolejne dwa dni i rozpoczyna ustalanie szczegółowego planu pracy. Tutaj należy wspomnieć o niezwykle istotnym zagadnieniu dotyczącym oczekiwań: dwa dni to jednak niewiele czasu, nawet jeżeli dołączymy do nich całonocną pracę. Nie zawsze można się spodziewać pełnych efektów, zwłaszcza przy bardziej skomplikowanych pomysłach. Często najlepszym wyjściem jest po prostu sporządzenie tak zwanej specyfikacji – czyli dokumentu opisującego sposób działania planowanego narzędzia. Dwa dni w grupie trzech, czterech lub pięciu osób to więcej niż potrzeba, aby przygotować wyczerpujący i szczegółowo przedyskutowany plan działania, który będzie podstawą do dalszej pracy, już po spotkaniu.
Dobrym pomysłem jest także nastawienie się na sporządzenie tak zwanego prototypu – czyli uproszczonej wersji narzędzia, serwisu lub bazy danych, która pokazuje sposób jego działania i stanowi podstawę do dalszego budowania docelowego produktu. W niektórych przypadkach, jeżeli sam pomysł jest wystarczająco nieskomplikowany, a kompetencje zespołu wystarczająco szerokie – udaje się na koniec drugiego dnia uruchomić gotowy do wykorzystania system – ale nie należy za wszelką cenę się na to nastawiać. Pamiętajcie: plan działania albo specyfikacja to tak naprawdę więcej niż „rozgrzebane” i niedokończone narzędzie, którego nikt nie będzie miał czasu ani ochoty dokończyć po sprincie.
Drugiego dnia, po kilkunastu lub kilkudziesięciu godzinach pracy zaczynają wyłaniać się konkretne efekty prac poszczególnych zespołów. Od początku poprzedniego dnia działo się wiele: niektórzy skończyli wcześniej i dołączyli do innych zespołów, inni od razu na początku zdecydowali się zaoferować swoje usługi kilku zespołom jednocześnie (na przykład osoby zajmujące się grafiką), wypito wiele kawy i przeprowadzono wiele dyskusji. Zbliża się „godzina 0”, kiedy wszystkie zespoły kończą pracę i rozpoczynają prezentacje swoich osiągnięć. Ciąg zdarzeń zatacza krąg – liderzy zespołów (lub osoby przez zespół wyznaczone) znowu znajdują się na scenie i opowiadają o swojej pracy – co udało się osiągnąć, jakie zostały podjęte decyzje. Wszystkiemu uważnie przysłuchuje się jury, które wybierze najlepszy projekt. Zwycięskie i wyróżnione projekty zdobędą nagrody, jednakże najważniejszą zaletą jest możliwość przybliżenia przedsięwzięcia szerszej grupie – potencjalnych użytkowników, wolontariuszy, którzy pomogą w jego dalszym rozwoju.
Po przyznaniu nagród całe wydarzenie się kończy, ale nie kończy się wspólna praca. Niektóre zespoły umawiają się na kolejne, kameralne już hackatony, opracowane wspólnie specyfikacje trafiają pod dyskusję (i do realizacji!) w organizacjach. Relacje nawiązane w trakcie sprintu często procentują później – jeżeli nie w dalszej pracy nad projektem, to w zwykłej znajomości. Informatycy i informatyczki, z którymi pracowaliście, wiedzą więcej o waszej organizacji, wy wiecie więcej o ich umiejętnościach i specjalnościach – łatwiej jest znaleźć wspólny język i kolejne pomysły do wspólnej pracy.
To nie wszystkich możliwości, jakie daje formuła hackatonu. Miejmy nadzieję, że Random Hacks of Kindness będzie pierwszym z cyklu sprintów programistycznych stwarzających polskim organizacjom pozarządowym okazję do współpracy ze specjalistami i specjalistkami od nowych technologii i będzie wykorzystywany w różnych odmianach. Podczas organizowania hackatonu Random Hacks of Kindness zawiązała się grupa osób i organizacji ochrzczona nazwą SocHack, której zadaniem będzie promowanie i pomoc w organizacji kolejnych sprintów. W imieniu wszystkich organizatorów serdecznie zapraszamy do przybycia 3 i 4 grudnia do Laboratorium Brama Politechniki Warszawskiej i wzięcia udziału w tym przedsięwzięciu. W jego trakcie będzie również okazja do podyskutowania o formule sprintów informatycznych i inicjatywie SocHack, która ma promować tę formę wolontariatu w środowiskach pozarządowym i technologicznym.Serdecznie zapraszamy do udziału, przygotowania świetnych pomysłów i sukcesów w ich realizacji. I do zobaczenia 3 grudnia!