AAaaaaaaaAAAAAAAAaa

Zdjęcie gazety z omawianym artykułem

Ten tekst oryginalnie został opublikowany 25 kwietnia 2024 r. na moim profilu na Twitterze.

Miałam to napisać w poniedziałek, ale nie znalazłam czasu.

W poniedziałek (25 kwietnia) w Dzienniku Gazecie Prawnej ukazał się wywiad red. Elżbiety Rutkowskiej i Anny Wittenberg z wiceministrem cyfryzacji Michałem Gramatyką, zatytułowany „Kod mObywatela publiczny tylko we fragmentach”. I właśnie do tematu z nagłówku zamierzam się odnieść.

Jak zapewne wiecie, w trakcie procedowania Ustawy o aplikacji mObywatel, w jej treści znalazł się punkt o treści „Minister właściwy do spraw informatyzacji udostępnia aktualny kod źródłowy aplikacji mObywatel w Biuletynie Informacji Publicznej na swojej stronie podmiotowej w terminie 14 dni od dnia wdrożenia nowej wersji tej aplikacji”. Pojawił się on za sprawą właśnie Gramatyki, wówczas posła opozycji. Poprawka została przyjęta przy tylko jednym głosie wstrzymującym, nikt nie głosował przeciw.

W opublikowanym w poniedziałek wywiadzie, minister wskazał, że „przemawiają do niego argumenty związane z bezpieczeństwem państwa”, powiedział że myśli że ustawa zostanie doprecyzowana.

Dziś zapisy można rozumieć w ten sposób, że powinniśmy opublikować kod całej aplikacji. Czyli np. ujawnić sposób, w jaki komunikuje się ona z rejestrami państwowymi. To niepotrzebne — wskazał. Tylko że, zgodnie z ustawą, aplikacja mObywatel to „oprogramowanie przeznaczone dla urządzeń mobilnych, w którym są udostępniane usługi świadczone przez podmioty publiczne oraz podmioty niepubliczne”. Oznacza to, że jedyny kod, który musi zostać upubliczniony to ten, który trafia na nasze urządzenia i na nich jest wykonywany. Do definicji nie włącza się więc kod backendu (ten bowiem nie jest przeznaczony dla urządzeń mobilnych), ani żaden inny, który choćby hipotetycznie może zostać zabezpieczony przez „security through obscurity”.

Z wywiadu można dowiedzieć się, że minister deklaruje się jako zwolennik koncepcji „public money — public code”. Zresztą, nie pierwszy raz. To samo pisał na Mastodonie (marzec 2023) — zapowiedział że „w programie dot cyfryzacji mamy stanowisko ze wszystkie aplikacje tworzone za publiczne pieniądze powinny mieć publicznie dostępny kod” (ten dokument programowy wciąż nie został opublikowany). Jednak sama poprawka nie wypełnia założeń #PublicMoneyPublicCode, czyli koncepcji według której kod źródłowy finansowany przez podatnika ma być dostępny na wolnej licencji, aby mógł być wykorzystany również do tworzenia podobnych aplikacji. Kod źródłowy ma jedynie zostać opublikowany, z prawem do wglądu w niego. Ustawa nie wymusza publikacji na wolnej licencji, np. EUPL, czy działań które byłyby miłym gestem w stronę społeczności, jak korzystanie z systemu kontroli wersji, któregoś z publicznych hostingów Gita… Mają po prostu opublikować kod w BIP-ie. Może nawet ktoś uzna, że część plików projektu bez których łatwo go nie zbudujemy nie musi być częścią takiej publikacji, bo przecież nie są kodem źródłowym sensu stricto. Nie wiem też, jak publikacja części kodu ma wypełnić „cel – obywatele mają wiedzieć, jak wykorzystywane są ich dane”. Zapowiadane ustępstwa raczej nie pomogą w budowaniu zaufania do państwa.

Jako pomysł, jak udostępnić kod mądrze, zaproponowano „[n]ajpierw potrzebne jest przeprowadzenie audytu kodu, a potem publikacja pewnych jego fragmentów mniej więcej tak, jak to zrobiono w ukraińskiej Diia”. Wolałbym, żeby kod był audytowany niezależnie od planów jego publikacji… Ale przypadek Diji (wybaczcie, wolę transliterować po polsku) oceniam jako bardzo pozytywny przykład wdrożenia „public money — public code”. Kod wydano na licencji EUPL-1.2 (licencja publiczna Unii Europejskiej, z oficjalnym tłumaczeniem w 22 językach państw członkowskich), opublikowano na GitHubie więcej niż kod samego front-endu, z ambitnymi zapowiedziami, zakładającymi nawet przyjmowanie kodu tworzonego przez społeczność.

Ze strony Ministerstwa Cyfryzacji/COI też chciałabym zobaczyć możliwie konkretne zapowiedzi. Nie chcę się wyzłośliwiać, co strasznego ta uśmiechnięta koalicja dodała do kodu mObywatela, że PiS nie bał się jego publikacji, a oni się boją. Chcę być dobrej myśli. Chciałbym wiedzieć, jak chcą, by wyglądał ten punkt ustawy, choć nie wiem czy się dowiem, pytając na Twitterze.