Koduj dla Polski

Przepisy jako kod – Code for Australia

13 August 2019 | Blog
 

Mam na imię Damian. Jestem programistą, łódzkim koordynatorem programu Koduj dla Polski prowadzonego przez Fundację ePaństwo. Na co dzień prowadzę jednoosobową firmę, współpracując głównie z organizacjami pozarządowymi z województwa łódzkiego i mazowieckiego.

W tym tekście chcę opowiedzieć o swoim doświadczeniu zdobytym podczas tegorocznego stażu w Code for Australia i New South Wales Government.

W marcu bieżącego roku rozpocząłem 6-miesięczny staż w Sydney w ramach programu wymiany programistów, developerów i designerów z różnych części świata o charakterze GovTech. Projekt, w którym wziąłem udział, ma na celu usprawnienie procesu legislacyjnego w stanie Nowa Południowa Walia z wykorzystaniem rozwiązań stosowanych podczas programowania, m.in. wersjonowania, testów jednostkowych, testów regresyjnych.

Brzmi to tajemniczo?

Aby zobrazować to, co robimy w projekcie, proponuję wybiec w przyszłość. Wyobraź sobie, że przepisy prawne są łatwe do zrozumienia. Obywatele mają dostęp do obowiązującego prawa publikowanego w otwartych formatach w internecie i za każdym razem, gdy zmienia się prawo – twoja platforma lub aplikacja po prostu aktualizuje się automatycznie. Co więcej, nowe przepisy mogą zostać zbudowane z wielokrotnego użytku małych bloków tekstu lub pseudokodu. Można by pomyśleć, że to dość szalone pomysły, ale wdrażane jest już to w Nowej Południowej Walii.

Open House - Code for Australia

Ja i Kate – obecni stażyści Code for Australia – jesteśmy częścią globalnego ruchu na rzecz uczynienia prawodawstwa bardziej dostępnym i aktualnym.

Nasz projekt zatytułowany „Przepisy jako kod” (ang. Rules as code) to interdyscyplinarna współpraca między Digital NSW Accelerator (DNA), Policy Lab i różnymi departamentami merytorycznymi, aby uczynić obowiązujące prawo czytelne zarówno dla ludzi, jak i dla maszyn.

Więcej na stronie digital.nsw .

Takie otwarte i dostępne podejście do polityki i prawodawstwa przynosi wiele korzyści.

  • Stosując rygor weryfikacji i walidacji za pomocą testów regresyjnych można w łatwy sposób wychwycić błędy w całym dokumencie, powstałe w wyniku wprowadzenia jednej zmiany.
  • Tłumacząc przepisy napisane przez człowieka na kod odczytywalny maszynowo, możemy ujawnić obszary reguł, które być może niepotrzebnie zależą od oceny uznaniowej dokonanej przez człowieka, zastępując je wyrażeniami logicznymi.
  • Udostępnienie API (czyli interfejsu programistycznego aplikacji) do obowiązującego prawa jako „pojedynczego źródła prawdy” oznacza, że pozostałe przepisy korzystające z tych samych reguł czy pojęć są w stanie uzyskać dostęp do najnowszej wersji. Nie jest więc już konieczny żmudny proces identyfikacji i kodowania nowych zmian za każdym razem kiedy zostaną wprowadzone.
  • Przejście od trudnego w odczytaniu, zamkniętego podejścia, do otwartego kodu źródłowego, wykorzystującego kontrolę wersji, otwiera dostępność (a tym samym nowe możliwości) sposobu stosowania przepisów. Obnaża przepisy w sposób, który wcześniej nawet nie był brany pod uwagę.

Oczywiście podejście „przepisy jako kod” niesie ze sobą jednak pewne ograniczenia. Przede wszystkim nie wykorzystamy go w zakresie przepisów w swej istocie opartych na osądzie (takich jak te dotyczące opieki zdrowotnej czy wymiaru sprawiedliwości).

Workshop

Na początku razem z Kate zajmowaliśmy się usprawnieniem 72 ulg i przygotowaniem formularza pozwalającego sprawdzić, z których spośród nich mieszkańcy stanu NSW mogą skorzystać. Jako ciekawostka dodam, że wśród nich znajdowały się dwie ulgi na zajęcia pozaszkolne Active kids i Creative kids. Jednym z warunków, jakie musi spełnić dziecko, jest wiek powyżej 4,5 roku życia, który jednak mógłby sprawiać trudności ze względu na to, że rok nie dzieli się na dwie równe części lub że dziecko może urodzić się w innej strefie czasowej. Ten z pozoru prosty zapis w niektórych przypadkach musiałby zależeć od interpretacji urzędnika przyjmującego wniosek.

W drugiej połowie stażu koncentrowaliśmy się na czysto nakazowych zasadach obliczeniowych, takich jak kwalifikowalność oszczędności energii i wymogi dotyczące zezwoleń na gry charytatywne między innymi dla organizacji pozarządowych.

Proces odpowiedniego przekształcania treści przepisów bez wątpienia zajmuje dużo czasu. Wszystko musi rozpocząć się jednak po prostu od zmiany sposobu myślenia, sposobu pisania prawa i wprowadzenia idei produktu do odczytu maszynowego.

A dlaczego w ogóle wybrałem Australię? Chciałem sprawdzić się w pracy w międzynarodowym zespole. Do tej pory miałem taką okazję jedynie na zasadzie pracy zdalnej. Miałem szansę przyjrzeć się z bliska temu, jak można radzić sobie z rozwiązywaniem problemów, z którymi zapewne niedługo przyjdzie nam się mierzyć także w Polsce. Projekt pomógł mi zdobyć unikalne doświadczenie, które przywiozłem ze sobą i będę mógł podzielić się nim w Polsce. Ogromną motywację stanowi spotkanie niesamowitych i zaangażowanych w ideę GovTech ludzi starających się, podobnie jak ja, coś zmienić, wykorzystując do tego najnowsze technologie.

Więcej o przebiegu stażu i jego rezultatach informuję na swoim Facebooku (po polsku), a także Twitterze oraz Medium (po angielsku).

Damian Dzieduch

Damian Dzieduch

Inne artykuły autora

Zobacz także

10 October 2019 | Blog

Garść przydatnych informacji jak już masz złożony czujnik Luftdaten

Podłączyłeś/aś i zestaw już mierzy? 🙂 Garść przydatnych narzędzi w jednym miejscu, które mogą być wsparcie w użytkowaniu sensora. Strona do testowania działania czujnika, przed podłączeniem do sieci Luftdaten: Dane sensora: http://bit.ly/luftdaten_graf Pod tym adresem znajduje się historia pomiarów temperatury i wilgotności (dht lub bme280) oraz pomiary zapylenia (sds). Wyszukasz swój sensor wciskając na klawiaturze: […]

13 August 2019 | Blog

Przepisy jako kod – Code for Australia

Mam na imię Damian. Jestem programistą, łódzkim koordynatorem programu Koduj dla Polski prowadzonego przez Fundację ePaństwo. Na co dzień prowadzę jednoosobową firmę, współpracując głównie z organizacjami pozarządowymi z województwa łódzkiego i mazowieckiego. W tym tekście chcę opowiedzieć o swoim doświadczeniu zdobytym podczas tegorocznego stażu w Code for Australia i New South Wales Government. W marcu bieżącego roku rozpocząłem 6-miesięczny […]

Technologia i transport w inteligentnym mieście: szanse na dalszy rozwój czy wykluczenie?

Miałam ostatnio przyjemność wziąć udział w dyskusji dotyczącej inteligentnych miast (smart cities) na jednej z konferencji transportowych w Warszawie. Zostałam poproszona w ostatniej chwili, żeby zasiąść na scenie z sześcioma mężczyznami i zdywersyfikować panel. Zawahałam się, bo miałam tylko dwa dni na przygotowanie do dyskusji. Może powinnam poczuć się też nieco urażona, że zaprasza się […]

Partnerzy

Fundacja ePaństwo
Orange
Miasto Gdańsk
Code for Europe
Code for All
Pokaż wszystkich