Sprawdź relację:
Dzieje się!
Technologia

Andrzej Blikle: po cukiernictwie czas na informatykę. W planach nowe rozwiązanie dla programistów

Po 20 latach pracy w biznesie prof. Andrzej Blikle powrócił do swojej drugiej, życiowej pasji – matematyki i informatyki. Marzy mu się własny startup, który złamie schematy tworzenia programów.

Na zdjęciu prof. Andrzej Blikle podpisuje jedną ze swoich książek.

Z tego artykułu dowiesz się…

  1. O drugiej, naukowej i informatycznej pasji prof. Andrzeja Blikle, w Polsce kojarzonego bardziej jako współwłaściciela i, do niedawna zarządzającego siecią cukierni A.Blikle.
  2. Dlaczego marzy mu się założenie własnego startupu działającego w sektorze IT. Jaki informatyczny projekt chciałby zrealizować.
  3. Jak prof. Andrzej Blikle ocenia postęp technologiczny, który nastąpił w ostatnich dwóch dekadach. Czy obawia się sztucznej inteligencji?

XYZ: Przekazano mi, jaka była pana reakcja na nazwę serwisu XYZ. Przywołała wspomnienia?

Prof. Andrzej Blikle: XYZ – tak nazywał się pierwszy zbudowany w Polsce komputer, który można dziś obejrzeć w Narodowym Muzeum Techniki w Warszawie. Jako student Wydziału Matematyki i Mechaniki Uniwersytetu Warszawskiego uczyłem się pisać programy na ten komputer. To były późne lata 50. XX w.

Dopatrzyłem się także innego związku z państwa serwisem. Założyciel XYZ, zapowiadając jego powstanie, użył sformułowania „można inaczej”. Nazwałem tak moją witrynę internetową, bo również mam w sobie coś z buntownika.

Kilka dni temu został panu nadany tytuł doktora honoris causa Akademii Ekonomiczno-Humanistycznej w Warszawie. Jak rozpoczęła się pana kariera naukowa? W Polsce jest pan bardziej znany jako mistrz cukiernictwa, współwłaściciel i, do niedawna zarządzający siecią cukierni A. Blikle.

Po studiach na Uniwersytecie Warszawskim podjąłem studia doktoranckie w Instytucie Matematycznym Polskiej Akademii Nauk. Po obronie w 1966 r. rozpocząłem pracę w Centrum Obliczeniowym PAN, które zostało później przekształcone w Instytut Podstaw Informatyki PAN. Przez siedem lat sprawowałem w nim m.in. funkcję dyrektora ds. naukowych. W międzyczasie uzyskałem stopień doktora habilitowanego, a później oba tytuły profesora. Wykładałem na wielu uczelniach w Polsce i za granicą. W pracy naukowej zajmowałem się najpierw syntaktyką, a później semantyką języków programowania.

W styczniu 1990 r. zdecydowałem jednak, że zaangażuję się w rozwój rodzinnego biznesu cukierniczego. I tak w firmie spędziłem dwie dekady. Przedsiębiorczość i informatyka to moje dwie życiowe pasje.

W zakresie informatyki jest pan teoretykiem czy także praktykiem?

Głównie teoretykiem, choć w czasie przygody z biznesem napisałem dwa programy bazodanowe do obsługi logistyki dostaw w naszej firmie.

Myślę, że można o mnie powiedzieć matematyk zajmujący się informatyką teoretyczną. Zawsze jednak zależało mi, aby z badań, w które się angażowałem, powstawały praktyczne narzędzia dla informatyków, np. do tworzenia produktów informatycznych. Cele te wciąż są dla mnie ważne i stanowią treść projektu, który aktualnie realizuję.

Czy informatyka w ostatnich dwudziestu latach poszła we właściwym kierunku?

Kierunek ten został narzucony przez rozwój społeczny i gospodarczy świata. A żadna inna dziedzina nie rozwijała się w tak dużym stopniu i tak szybko jak informatyka. Myślę, że poziom złożoności produktów informatycznych jest też znacznie wyższy niż w przypadku jakichkolwiek innych wytworów człowieka.

Moim zdaniem, badania teoretyczne w minionym pięćdziesięcioleciu nie nadążały za informatyką w jej praktycznym wymiarze. Skutek mamy dziś taki, że wytwórcy oprogramowania nie są w stanie wziąć za nie odpowiedzialności w stopniu porównywalnym do producentów innych wyrobów przemysłowych, np. samochodów czy lodówek. Od klientów kupujących programy komputerowe (aplikacje) oczekuje się zaakceptowania faktu, że producent nie bierze odpowiedzialności za jakość tych programów. Wszelkie koszty spowodowane przez błędy w programie klient zobowiązuje się pokryć we własnym zakresie.

Na zdjęciu prof. Andrzej Blikle podczas nadania tytułu doktora honoris causa Akademii Ekonomiczno-Humanistycznej w Warszawie.
Prof. Andrzejowi Blikle w ostatnich dniach został nadany tytuł doktora honoris causa Akademii Ekonomiczno-Humanistycznej w Warszawie. [Fot.: archiwum prof. A. Blikle]

Wpływ IT na społeczeństwo okazał się niezwykle silny. Jesteśmy uzależnieni od informatyki. Czy to dobrze?

Jesteśmy uzależnieni od wszystkiego, co stworzyliśmy: elektryczności, transportu publicznego, farmakologii itp. Jeżeli uzależnienie od IT wydaje się większe to dlatego, że postępuje znacznie szybciej. Od maszyny parowej i silnika elektrycznego uzależnialiśmy się 200 lat, a od informatyki — ok. 30.

To uzależnienie wzrosło w chwili powstania komputerów osobistych, czyli PC. Informatyka stworzyła narzędzia codziennej pracy i funkcjonowania dla prawie każdego we współczesnym świecie.

Wspomniał pan o własnym projekcie informatycznym. Czego ma dotyczyć?

W warstwie teoretycznej projekt ten realizuję od wczesnych lat 80. Obecnie wszedł w fazę, w której od teorii można przejść do praktyki. Celem jest stworzenie pakietu narzędzi matematycznych i software-owych wspierających pracę projektantów i producentów oprogramowania.

Obecnie schemat ich pracy różni się od sposobu działania inżynierów z innych branż. Podam przykład budowa mostu czy samolotu zaczyna się od koncepcji i obliczeń, potem powstaje rysunek techniczny, rozpoczyna się etap produkcyjny, a na końcu są przeprowadzane testy. Produkt poddawany testom jest już gotowy — wymaga tylko potwierdzenia bezpieczeństwa i wygody użytkowania. W informatyce natomiast testowanie jest elementem wpisanym w sam proces produkcyjny, odbywa się wielokrotnie i jest kosztowne. Jest jeszcze druga różnica. Gdy testując wytrzymałość mostu obciążymy go ładunkiem 100 ton, to mamy pewność, że nie zawali się pod ciężarówką 30. tonową. W informatyce fakt przejścia programu przez jeden test, nie daje gwarancji, że przejdzie on kolejny (i najczęściej nie przechodzi). Przy pomocy testowania można jedynie wykryć błędy, ale nigdy nie można uzyskać pewności, że ich nie ma.

Nie krytykuję sposobu pracy programistów, ale przyznaję, że chciałbym wsunąć nogę w drzwi i wcisnąć się do sektora IT z pomysłem na narzędzie, które większość błędów wykluczałyby na etapie tworzenia programu. Przewidywane przeze mnie korzyści, to oszczędności czasu i pieniędzy na etapie tworzenia programów i znacznie mniej błędów w programie u klienta.

Czego potrzeba do realizacji takiego projektu?

Na razie narzędzie jest opisane na gruncie modelu matematycznego. Obecnie poszukuję zapaleńców, którzy chcieliby budować razem ze mną wspomagane komputerowo środowiska programistów i projektantów języków programowania gwarantujących poprawność programów.

Do jakich sytuacji może doprowadzić błąd w oprogramowaniu?

Błędy w oprogramowaniu podzieliłbym na trzy grupy. Pierwsza — błędy, w wyniku których program niespodziewane przestaje działać, zawiesza się. Wydaje się najmniej groźna, ale w przypadku np. programów sterujących lotem dronów — cywilnych lub wojskowych — może spowodować utratę panowania nad maszyną i katastrofę. Drugi rodzaj błędów powoduje, że program wchodzi w nieskończoną pętlę i nie kończy swojego działania. W trzecim, najgorszym przypadku, program nie wykazuje błędu, ale daje niepoprawny wynik lub podejmuje chybione działania.

W historii mieliśmy już wiele sytuacji, w których firmy i ludzie płacili ogromną cenę za błędy oprogramowania. W 1985 r. w klinikach w USA po błędnie policzonej przez komputer dawce promieniowania zmarło sześciu pacjentów. W latach 80. XX w. błędy w oprogramowaniu doprowadziły do katastrofy amerykańskiego lądownika na Wenus, w 1991 r. do katastrofy platformy wiertniczej w norweskim fiordzie, a w 1993 r. – katastrofy Airbusa w Warszawie. W Latach 90. sporą cenę za błędy zaokrągleń w arytmometrze zapłacił Intel. Niedawno głośno było o „aferze z kursem złotego” wynikającej z błędu w oprogramowaniu wyszukiwarki Google, co doprowadziło do przekłamania kursów walut.

Zacytuję fragment jednego z pana artykułów: „firmy software-owe czerpią poważne korzyści z błędów w dostarczanych systemach sprzedając usługi serwisowe”. Czy przemysł informatyczny jest zainteresowany eliminacją błędów, a tym samym działa uczciwie wobec użytkowników?

Błędów w oprogramowaniu nie traktowałbym jako przejawu nieuczciwości. Korzyści z serwisowania czerpią także firmy motoryzacyjne, producenci sprzętu AGD i inne. Bez serwisowania i aktualizowania oprogramowania użytkownicy ponosiliby poważne straty.

Myślę jednak, że korzystniejsza dla wszystkich, użytkowników i producentów, byłaby możliwość bieżącej weryfikacji poprawności opracowywanych programów. Obniżyłaby koszty pracy testerów i koderów.

Jako społeczeństwo wkraczamy mocno w erę sztucznej inteligencji. Czy błędy w nowoczesnych systemach mogą być bardziej dotkliwe dla firm i użytkowników?

Z jednej strony, sztuczna inteligencja jest jednym z ważniejszych elementów postępu cywilizacyjnego. Z drugiej — niesie wiele zagrożeń. Za sprawą AI tworzenie pewnych rozwiązań informatycznych lub para-informatycznych staje się dostępne dla amatorów, w tym dla przestępców. Wiele się obecnie mówi o fałszywych awatarach znanych osób, nie do odróżnienia od rzeczywistych postaci, które np. wyłudzają od internautów pieniądze. Za sprawą AI ludzie uzależniają się od informatyki jeszcze bardziej, tym samym koszt błędów będzie rósł. Mam na myśli nie tylko jednostkowe zdarzenia jak np. rozbicie się autonomicznego samolotu, ale także masowe awarie np. mikroprocesorów w lodówkach.

W jakim kierunku zmierza informatyka?

30 lat temu nikt nie przewidział, w jakim punkcie rozwoju IT znajdziemy się dzisiaj. Wiadomo, że zaczynamy dochodzić do kresu pojemności pamięci komputerowych w obecnej technologii ich wytwarzania. Spodziewać się można więc intensywnego rozwoju komputerów kwantowych. Zapotrzebowanie na oprogramowanie będzie tym bardziej rosło.

Informatyka w praktycznym wymiarze już stała się nieodzownym elementem naszego życia i pracy. Potrzebna więc będzie również dobrej jakości edukacja informatyczna, dostępna nie tylko dla programistów, ale dla całego społeczeństwa. Uważam, że wzrośnie rola modeli matematycznych opisujących języki programowania. To druga noga projektu, o którym wspomniałem.

Jestem współautorem podręcznika „Komputerowa edycja dokumentów dla średnio zaawansowanych”, który w wersji cyfrowej, podobnie jak inne publikacje, można bezpłatnie pobrać na mojej stronie internetowej. Wierzę, że świat informatyki można opisywać w sposób prosty i zrozumiały dla użytkowników (podręcznik ma tylko 120 stron). Obecne opisy języków programowania tworzone są natomiast z perspektywy mrówki patrzącej na las. Zamiast holistycznego obrazu ekosystemu odbiorcom podaje się opisy kolejnych źdźbeł trawy.

A dla przemysłu informatycznego ważniejsze są obecnie jakość czy ilość?

Obawiam się, że ilość i czas realizacji projektów. Nie chcę natomiast wyjść na zagorzałego krytyka sektora IT, bo rozumiem uwarunkowania. Klienci najczęściej chcą zamówiony produkt na już, a wytwórcy oprogramowania próbują spełnić te oczekiwania. To poważne źródło błędów w oprogramowaniu.

Jaki ma pan plan na realizację swojej wizji systemowego wykrywania błędów, na bieżąco, w trakcie pracy programisty?

Są dwie drogi realizacji projektów informatycznych. Jedna typowo przemysłowa – trzeba pozyskać inwestora i wydać pokaźne pieniądze na zatrudnienie programistów i komercjalizację rozwiązania. Nie chcę iść tą ścieżką. Druga droga, którą pokonali np. twórcy systemu operacyjnego Linux, systemu budowania stron internetowych Drupal, zarządzania treścią Joomla!, wydaje mi się bliższa. To byli ludzie kierujący się chęcią dokonania zmiany, stworzenia czegoś istotnie nowego. Chciałbym, aby moje narzędzie było udostępniane nie tyle w modelu open source, co bardziej open access. Aby każdy mógł je pobrać i go używać, choć dostęp do kodu źródłowego byłby ograniczony do osób rozumiejących szczegóły modelu matematycznego.

Marzy mi się własny startup, którego celem byłoby stworzenie nowego narzędzia lub grupy narzędzi eliminującej błędy na etapie tworzenia oprogramowania. Nie chciałbym natomiast czerpać zysków ze sprzedaży tych narzędzi (podobnie jak w przypadku Linuxa). Myślę, że firma mogłaby monetaryzować projekt przez instalowanie i pielęgnowanie naszych narzędzi u ich użytkowników, a także wytwarzanie oprogramowania o wysokim poziomie niezawodności. Poszukuję więc mądrych głów — ludzi którzy wierzą, że w świecie IT także „można inaczej”.

Główne wnioski

  1. Prof. Andrzej Blikle przez wiele lat pracował jako dyrektor ds. naukowych w Centrum Obliczeniowego PAN, które zostało przekształcone w Instytut Podstaw Informatyki PAN. Na ok. dwie dekady odsunął naukę na bok, koncentrując się na rozwoju rodzinnego biznesu cukierniczego.
  2. W najbliższej przyszłości chciałby skupić się na informatyce. Nakreślił już plan stworzenia pakietu narzędzi matematycznych i software-owych wspierających pracę projektantów i producentów oprogramowania.
  3. Projekt, który chciałby rozwijać prof. Andrzej Blikle, eliminowałby błędy w oprogramowaniu, weryfikując na bieżąco poprawność pracy programistów. Jego zdaniem cena za błędy w oprogramowaniu, jaką płacą głównie użytkownicy, jest obecnie zbyt wysoka. A będzie rosła wraz z rozwojem sztucznej inteligencji.