W tekście umieszczono linki reklamowe naszego partnera
Szewczyk studiująca obecnie stacjonarnie na jednej z niemieckich uczelni, 15 kwietnia opublikowała na swoim blogu post opisujący rozwiązanie błędu jednego z programów Linuksa – konkretnie menedżera okien Enlightenment E16. To oprogramowanie z 1997 r. miało poważny błąd, który odkryto w 2006 r., a 21-letnia Polka natrafiła na niego przypadkiem podczas tworzenia prezentacji multimedialnej.
Gdy otworzyła jeden z plików PDF w programie Atril, doszło do zawieszenia pulpitu. Po zbadaniu sprawy w kodzie Szewczyk odkryła, że Enlightenment E16 wykorzystuje tytuły pliku do tytułowania okien, a w przypadku dłuższych nazw dochodzi do skrócenia całej frazy, by zmieściło się ono zadanym obramowaniu. W jej przypadku było to:
Kickoff.pdf — Introduction to Information Theory Session 1: kickoff & first topic
Zbyt długa nazwa jest skracana od danej liczby znaków i zastępowana wielokropkiem. Programista, który dwie dekady temu stworzył tę funkcję, posłużył się do wyliczania liczby usuwanych znaków metodą Newtona. Niestety, nie przewidział konieczności ograniczenia liczby iteracji wykonywanych przez algorytm.
W efekcie Szewczyk natrafiła na sytuację, w której procedura wpadała w nieskończoną pętlę, bezskutecznie próbując ustalić, o ile znaków powinien skrócić w nagłówek. Algorytm nie potrafił dojść do rozwiązania, co wywoływało zawieszenie pulpitu. By temu zaradzić, programistka wprowadziła trzy kluczowe poprawki:
Ustaliła maksymalnie 32 próby dopasowania długości tekstu, aby zagwarantować, że pętla zawsze się zakończy; Dodała kontrolę zapobiegającą obliczaniu ujemnej liczby znaków do usunięcia; Zabezpieczyła działanie funkcji przed potencjalnym dzieleniem przez zero.
Poprawka w postaci kodu jest dostępna na blogu polskiej programistki.
„Naprawdę przełomowe prace naukowe rzadko przebijają się do głównego nurtu”Informacja o naprawie błędu 20-letniego błędu w aplikacji Linuksa przez 21-letnią programistkę obiegła świat, a dokonanie Polki opisywały serwisy technologiczne na całym świecie. Poza licznymi pochwałami w mediach społecznościowych pojawiły się też niemerytoryczne, personale i wprost seksistowskie uwagi w komentarzach czy mailach, o czym Szewczyk napisała w oddzielnym poście:
Jestem wiecznie wdzięczna wielu mężczyznom, którzy byli na tyle uprzejmi, by poświęcić swój czas na narzekanie na mnie w internecie za coś, na co nie miałam wpływu; dziwakom, którzy narzekają, że nie spędzam czasu na zachodzeniu w ciążę albo że wyglądam brzydko.
Pojawiła się również słuszna uwaga w kierunku samych mediów, które szeroko opisywały – zdaniem Szewczyk – przygotowanie poprawki do niszowego programu Linuksa, a nie zainteresowały się jej innymi, znacznie ciekawszymi jej zdaniem projektami, nad którymi pracowała:
Sprawdź aktualne ceny pakietów Windows 11 w polskich sklepach: