Strona korzysta z plików cookies w celu realizacji usług i zgodnie z Polityką Plików Cookies.



23.04.2019

Optymalizacja zużycia chmury

HPE GreenLake Hybrid Cloud
23.04.2019

Zarządzanie wydajnością

VMware vRealize Operations 7.5
19.04.2019

Technologie open source

SUSECON 2019
19.04.2019

Wyjątkowo małe

OKI seria C800
19.04.2019

Łatwy montaż

Rittal AX i KX
18.04.2019

Technologie wideo

Avaya IX Collaboration Unit
18.04.2019

Krótki rzut

Optoma W318STe i X318STe
18.04.2019

Do mobilnej pracy

Jabra Evolve 65e
27.03.2019

Pożegnanie z systemem Windows...

System operacyjny Windows 7 wciąż cieszy się dużą popularnością wśród użytkowników...

Coming out

Data publikacji: 21-01-2019 Autor: Michał Jaworski

Przez wiele lat przekonywałem, że zawód programisty jest jednym z najlepszych wyborów, jakich może dokonać młody człowiek. Przez wiele lat byłem szczerym zwolennikiem nauki programowania w szkołach.

 

Każdy z nas może cofnąć się do czasów, kiedy po raz pierwszy napisał i uruchomił kod. Czy pamiętasz, jaki to był język oprogramowania? Czy pamiętasz konfigurację maszyny, na której ten kod był uruchomiony? Jak wyglądał interfejs użytkownika? Jak duży był plik wynikowy? Pamiętasz pewnie tylko to pierwsze, a wszystkie inne wspomnienia to jedynie migawki i pojedyncze obrazy. A przecież znałem wtedy biblioteki, różne niuanse kompilatora, wiedziałem, jak debugować kod. Jednym słowem, znałem nie tylko konkretny język, ale też konkretne narzędzie, którym się posługiwałem. Co mi dzisiaj z tej wiedzy? Ano nic. Oceniając na zimno – posiadłem wiedzę, której użyteczność okazała się bardzo krótkotrwała. Jest dzisiaj tak przydatna jak wiedza z podręcznika „Przygotowanie do życia w rodzinie socjalistycznej” (naprawdę był taki przedmiot w szkole!). Po co zatem lekcje programowania w szkole, siłą rzeczy wymagające poświęcenia na naukę obsługi narzędzi dużej ilości czasu, skoro najprawdopodobniej za kilka lat o tych ostatnich nikt nie będzie pamiętał?

Powie ktoś, że błądzę. Że taka nauka pozwala zrozumieć, jak działają algorytmy, i daje mnóstwo frajdy, kiedy uruchomi się pierwszy, drugi… kolejny program. Tak jest, gdy rozwiąże się problem, ale nie ten zadany w szkole, ale dostrzeżony samemu. Tak – kiedy programowanie obudzi ducha innowacji. Tak – kiedy nawiąże się niemal metafizyczną łączność z maszyną. Argumenty coraz bardziej górnolotne, można by wymieniać długo. Uderzać w coraz wyższy ton. No cóż, mniej więcej to samo mówili sto dwadzieścia lat temu maszyniści o swoich ociekających oliwą lokomotywach. A osiemdziesiąt lat temu pierwsi kierowcy samochodów ekscytowali się możliwością ręcznego ustawienia zapłonu dla poprawy osiągnięć. Oba zawody cieszyły się niezwykłą estymą, a ci, co je uprawiali, świetnie zarabiali, mieli dobry zawód i z optymizmem patrzyli w przyszłość. Na pewno byli wtedy tacy, którzy promowali nauczanie budowy i obsługi silnika o wewnętrznym spalaniu już od szkoły podstawowej…

Nie wiem, ile osób w Polsce marzy dziś, aby ich dziecko zostało maszynistą. Pewnie niewiele. Natomiast samochody od dłuższego czasu projektowane są przez księgowych i prawników, a dopiero potem spece od marketingu i handlowcy wysilają się, aby wskazać „wyraźne” różnice między modelami. Jeśli chodzi o grzebanie pod maską, to jedyną propozycją dla użytkownika jest dolanie płynu do spryskiwaczy. No i benzyny do baku. A dlaczego ten samochód jeździ? A kogo to obchodzi! Dokładnie ten sam proces czeka zawód programisty w ciągu najbliższych lat. Być może zajmie to więcej niż pięć lat, ale na pewno mniej niż dwadzieścia. Naturalnie ciągle będzie miejsce dla programistów, ale tylko tych najlepszych. Będą ich zatrudniali ci, którzy wyprodukują narzędzia do automatycznej produkcji oprogramowania. Wszyscy pozostali zostaną zastąpieni maszynami, które będą komunikowały się z ludźmi niemającymi pojęcia o informatyce, a maszyny te będą wykonywały polecenia ludzi i tworzyły zamawiane aplikacje. Analogiczna sytuacja do tej z kierowcami – większość z nich nie ma pojęcia, jak działa silnik czterosuwowy, ale każdy potrafi przejechać z punktu A do punktu B. Bo koniec końców chodzi o to, żeby pokonać zadaną drogę, a nie poznawać zasady działania narzędzia, które do tego służy.

Czego zatem warto uczyć w szkole? Jaka wiedza przyda się przy wykonywaniu zawodów przyszłości, o których nawet nie wiemy, kiedy powstaną i na czym będą polegać? Cała moja umiejętność programowania sprzed lat zestarzała się w niezwykłym tempie. Ale nie zmienił się rachunek prawdopodobieństwa. Nie zmieniła się statystyka. Algebry Boole’a czas się nie ima. Nic nie przydarzyło się geometrii. Przydają się na co dzień, np. po to, by zrozumieć różnicę między wartością średnią a medianą lub policzyć, ile naprawdę będę musiał zapłacić odsetek kredytu. Rozróżniam koniunkcję od alternatywy i pamiętam, że jeśli z fałszywej przesłanki wyciągnę prawdziwy wniosek, to cała implikacja będzie prawdziwa. Oczywiście ta wiedza staje się niekiedy źródłem frustracji (zwłaszcza gdy słucham obietnic polityków, wrrr!...), ale przydaje się nieustannie. Jestem zatem zwolennikiem zwiększenia liczby godzin matematyki i nauk ścisłych w nauczaniu, także dla tzw. zatwardziałych humanistów. Wybór sposobu uczenia to inna historia. Pora zatem pożegnać naukę programowania i znaleźć coś nowego do wspomagania. Nie wiem, co to jest, ale to leży tuż przed naszymi nosami.

 


Michał Jaworski – autor jest członkiem Rady Polskiej Izby Informatyki i Telekomunikacji. Pracuje od ponad dwudziestu lat w polskim oddziale firmy Microsoft.

 

.

Transmisje online zapewnia: StreamOnline

All rights reserved © 2019 Presscom / Miesięcznik "IT Professional"