Połączmy trochę własne doświadczenia, wiedzę i wyobraźnię i zabawmy się w futurologów. Opiszcie jak wg Was zmieni się świat IT w ciągu 30 lat. Jak będzie wyglądał rynek pracy (chyba wciąż będzie), jakie będą zawody. Może za 30 lat ktoś odkopie to forum, ten wątek i się pośmieje z naszej naiwności.
Jako wątkodawca zacznę.
Programistów, takich jakich znamy dziś, będzie dużo mniej. Nie staną się gatunkiem rzadkim tak jak kowale, ale raczej podzielą los współczesnych elektroników, którzy paradoksalnie są coraz mniej potrzebni, mimo iż coraz więcej elektroniki nas otacza. Dawniej problemy techniczne rozwiązywano przy użyciu elektroniki analogowej - budowano płytki z diodami, tranzystorami. Takie podejście zostało wyparte przez elektronikę cyfrową, wrzucając tranzystory w układy programowalne. W końcu stwierdzono - po co tworzyć dedykowane układy cyfrowe, skoro można te same zadania wykonać na standardowym komputerze. Oprogramowanie jest trzecią warstwą zbudowaną na poprzednich, ale nie ostatnią. Z czasem stanie się warstwą abstrakcyjną, przestanie się tworzyć oprogramowanie na zamówienie bo większość kodu zostanie już napisana i będzie dostępna w gotowych bibliotekach i frameworkach.
Zawód programisty wyewoluuje w różnych kierunkach. Zwiększy się liczba "inżynierów oprogramowania", czyli ludzi integrujących te wszystkie frameworki i biblioteki w celu budowania heterogenicznych systemów służących rozwiązywaniu konkretnych problemów. Te systemy będą potem integrowane na jeszcze wyższym poziomie, tworząc systemowe molochy, w których jakiś tam skompilowany obiekt będzie niczym śrubka w wielkiej maszynie. Pewnie trochę kodowania pozostanie gdzieś w tym scalaniu wszystkiego, ale raczej skryptowego albo konfiguracji. Głównym problemem w tej pracy będzie przede wszystkim projektowanie takich systemów z dostępnych narzędzi a nie tworzenie własnych przy użyciu jakiegoś języka. Pewnie zwiększy się też liczba "data scientistów", czyli ludzi którzy będą tworzyli modele uczące, sami programując w niewielkim stopniu.
Pojawią się specjaliści od zrównoleglania przetwarzania masowych danych. Zrównoleglanie będzie się odbywało na wielu poziomach, bo nie tylko lokalnie, na wielu procesorach mających szybki dostęp do wspólnej pamięci, ale też w obrębie klastrów komputerów, czy chmur, w których klastry będzie się dynamicznie dorzucało. Pojawią się problemy z synchronizacją, różnicami prędkości, aktualizowaniem już zakolejkowanych danych, tworzeniem stopniowych przyrostów wyników.
W zasadzie te zawody to nic nowego, bo przecież funkcjonują już dziś, tyle że zmienią się proporcje. Praca w IT bardziej skupi się na czystym przetwarzaniu informacji, a mniej na tworzeniu narzędzi do tego przetwarzania (czyli oprogramowaniu), jako że problemy będą tak szerokie z dzisiejszego punktu widzenia, że rozwiązywanie ich w obrębie jakiegoś jednego języka przestanie mieć sens. Skończą się debaty o wyższości jednego języka nad innym, czy na początek wchodzić w R++ czy Scala#, czy jednego paradygmatu programowania nad innym, tak samo jak mało kto zastanawia się dziś nad charakterystyką prądową tranzystorów, które nam to wszystko wyliczają.