22.12.20224 min
Maciej Olanicki

Maciej OlanickiRedakcja Bulldogjob

Były szef inżynierii Google i Apple: to koniec programowania

Dowiedz się, dlaczego ikona światowego IT uważa, że programowanie jest przestarzałe. I jaki to ma związek z w pełni zautomatyzowanym luksusowym komunizmem.

Były szef inżynierii Google i Apple: to koniec programowania

Matthew „Matt” Welsh to ktoś taki, kto swoim życiorysem mógłby obdzielić co najmniej kilka osób. Profesor informatyki na Harvardzie, szef inżynierii w Google, a następnie Apple, jeden z pionierów prac nad sztuczną inteligencją, wykładowca Marka Zuckerberga, sportretowany nawet w filmie „Social Network” – to zaledwie kilka bardziej znaczących wyimków z jego biografii.


Matt Welsh wieszczy koniec programowania

Tym bardziej warto zwrócić uwagę na artykuł Welsha, który ukaże się w styczniowym numerze „Communications of the ACM”, wydawanym nieprzerwanie od 1958 roku czasopiśmie naukowym Association for Computing Machinery. Tekst nosi tytuł „Koniec programowania”.

Swój wywód Welsh rozpoczyna od tego, jak programowanie wyglądało kiedyś, gdy on sam zaczynał swoją przygodę z informatyką, a także jak ewoluowało aż do dzisiaj. Pierwszymi komputerami, które programował Welsh było Commodore VIC-20 i Apple IIe. Czasy, gdy pracował nad doktoratem, które sam Welsch określa mianem „klasycznej informatyki”, bazowały na znanych do dziś, nauczanych i wykorzystywanych powszechnie założeniach: programowaniu algorytmów, struktur danych, systemów i poznawaniu języków programowania:

Bez względu na to, jak bardzo jest skomplikowany lub złożony będzie program – od algorytmu łączenia baz danych po niepojęcie zawiły protokół konsensusu Paxos – może być on wyrażony jako program czytelny i zrozumiały dla człowieka.


To ma się jednak wkrótce zmienić, a w zasadzie zmienia się na naszych oczach i sprawia, że programowanie w taki sposób, jaki rozumieliśmy je dotychczas, zdaniem Welsha, po prostu zniknie


„Programowanie stanie się przeżytkiem”

Welsh pisał doktorat ponad 30 lat temu i według niego jesteśmy świadkami, jak zachodzi gigantyczna zmiana paradygmatu. Trzy dekady temu sztuczna inteligencja znajdowała się w fazie, którą on sam nazywa „zimą SI” – pracowano nad zrębami, które zresztą sam autor współtworzył, ale nie było wciąż mowy o głębokim uczeniu, czy budowaniu takich struktur, jak sieci neuronowe. A przynajmniej nie o takim stopniu złożoności jak dzisiejsze. 

Żeby było to jasne, Welsh, mówiąc o wpływie SI na programowanie, nie mówi o różnego rodzaju asystentach, np. wymienianym przez niego, i wielokrotnie opisywanym na łamach Readme, GitHub Copilot czy wykorzystujących uczenie maszynowe podpowiadaczach kodu znanych choćby z Visual Studio. Pionier prac nad sztuczną inteligencji uważa, że wykorzystują one zaledwie niewielką część potencjału. 

Prawdziwe zmiany mają dopiero nadejść w postaci porzucenia wszystkich wymienionych już wcześniej elementów, których od trzydziestu lat naucza się studentów informatyki: algorytmów, struktur danych czy konieczności uczenia się języków programowania. Takie programowanie doby klasycznej informatyki stało się według Welsha przeżytkiem i przyszłość jest inna:

Mówię o zastąpieniu całej koncepcji pisania programów modelami treningowymi. W przyszłości studenci informatyki nie będą musieli uczyć się tak prozaicznych umiejętności, jak dodawanie węzłów do drzewa binarnego czy kodowania w C++. Tego rodzaju edukacja będzie przestarzała tak, jak uczenie studentów inżynierii, jak używać suwaka logarytmicznego.


Słowem – maszyny przejmą obowiązki związane z pisaniem kodu, a rola inżyniera sprowadzać ma się do wydawania im poleceń. Podobnie jak dziś wydajemy polecenia z poziomu wiersza poleceń, tak powstawać będą całe programy, gdyż maszynowo będzie zarówno rozwiązywany problem, jak i kodowanie. Co ważne, kod ten porzuci nasze przyzwyczajenia z epoki informatyki klasycznej i możliwe, że będzie całkowicie niezrozumiały dla samego inżyniera. Błogosławieństwo ignorancji – podobnie, jak dziś niewielu wie, jak działa komputer, tak w przyszłości programiści będą mogli nie wiedzieć, jak działają programy.


Trzecie Zerwanie

Niezłe science fiction, prawda? A jednak jako żywo przypomina książkę wydaną w ostatnim czasie po polsku: „W pełni zautomatyzowany luksusowy komunizm” Aarona Bastaniego. Pod prowokacyjnym tytułem kryje się rzeczowa refleksja nad automatyzacją i rolą sztucznej inteligencji w tym procesie. A raczej nad tym, że kolejna rewolucja techniczna nie jest wcale pieśnią przyszłości, lecz dzieje się tu i teraz. SI ma być po prostu mało efektywnie wykorzystywane. 

Bastani konstruuje teorię o tzw. trzech Zerwaniach – momentach w historii, w których życie wszystkich ludzi na świecie znacząco się zmieniło. Pierwsze Zerwanie miało miejsce w neolicie, gdy przeszliśmy z kultury zbieracko-łowieckiej do rolniczej. Drugie Zerwanie to oczywiście rewolucja przemysłowa. Trzecie Zerwanie – według Bastaniego ostatnie – to trwająca rewolucja techniczna wykorzystująca sztuczną inteligencję i jej nadchodzące formy. 

Pomiędzy myśleniem Bastaniego i Welsha dostrzec można pewne paralele, np. pogląd, że nie wykorzystujemy jeszcze pełni potencjału SI, czego przejawem są np. różnice pomiędzy Copilotem a docelowym porzuceniem informatyki klasycznej. Panowie zgadzają się co do możliwie jak największej minimalizacji roli człowieka w produkcji, w naszym przypadku produkcji oprogramowania.

Czy więc developerów czeka w pełni zautomatyzowany luksusowy komunizm? Zachęcamy do podzielenia się swoją opinią w komentarzach.

<p>Loading...</p>