Dziś i jutro: kto i dlaczego powinien nauczyć się programowania?
Dla wielu programista to praca marzeń. Zawód ten od lat zdaje się być również Mekką dla każdego, kto planuje się przekwalifikować. To zaś jest powodem do wniosków, które często idą zbyt daleko: sytuacja nigdy się nie zmieni, zaś programowanie już zawsze będzie strzałem w dziesiątkę, przede wszystkim ze względów finansowych. To nieprawda. Nie oznacza to jednak, że nie warto się uczyć programować. Wręcz przeciwnie.
11.09.2018 | aktual.: 11.09.2018 16:33
Zalogowani mogą więcej
Możesz zapisać ten artykuł na później. Znajdziesz go potem na swoim koncie użytkownika
Apka musi być i koniec
W bańkę programowania szczególnie chętnie dmuchają Ci, którzy nie mają o nim wiele pojęcia. Kiedyś w pozbawionym Wi-Fi pociągu relacji Warszawa-Wrocław z nudów i zmęczenia przysłuchiwałem się grupie ubranych elegancko młodych ludzi. Ich rozluźnienie i nadmierna rozmowność szybko pozwoliły mi wyciągnąć wnioski, że wracają właśnie z udanej podróży służbowej do stolicy. W latach 90. w Stanach mówiłoby się o nich yuppies – żyjący szybko hedoniści ze świetną pensją, biorącą się z prowizji od zysków na nowojorskiej giełdzie. Ale że jesteśmy w 2018 roku w Polsce, to grupa pracowała dla banku udzielającego kredyty rolnikom i wysiadała z pociągu w Opolu.
Dlaczego o tym wspominam? Otóż na fali hurraoptymizmu po udanych rozmowach, rysowali już oni plany na kolejne podboje rynku finansowego. Zwieńczeniem każdego z nich był pomysł z pogranicza zagadnień, które interesowały także mnie – oprogramowania. Rzecz w tym, że z całym ich talentem i wnikliwością ambitnych analityków finansowych, byli oni w stanie przedstawić na temat softu tylko jedną refleksję. Powtarzali ją wielokrotnie, ja zaś pozwolę sobie przytoczyć najbardziej skondensowany wariant: „teraz są te apki, to zrobi się apkę”. To wszystko. Nikt z grupy nie odważył się na jakąkolwiek konkretyzację, jak choćby zastosowanie programu. Apka musi być i koniec.
Software house, który będzie realizował zlecenie „zróbcie apkę” musi być gotowy na podjęcie ryzyka. Z jednej strony mogą trafić na klienta, który od początku do końca nie będzie miał pojęcia czego chce i będzie go satysfakcjonowało byle co. Z drugiej – jego dyletanckie zachcianki (zgapione najczęściej ze swoich ulubionych aplikacji) napsują całemu zespołowi wiele krwi. Niezależnie od rozwoju wypadków jedno jest pewne – będzie to zadanie mało ambitne, pewnie nieszczególnie rozwijające, najczęściej żmudne, nudne, maszynowe i męczące.
To niby dlaczego mam programować?
Przykłady służą zobrazowaniu przepaści, jaka dzieli branżę IT i resztę świata. Dla wielu programowanie to, krótko mówiąc, magia. I nie chodzi tu wcale o porywający czar dający ogromne możliwości, lecz o bojaźń i brak podejmowania prób choćby pobieżnego zrozumienia kwestii. Kolejny problem stanowi trudne wyzwanie, przed jakim stoi software house: ryzyko wielomiesięcznego użerania się z butnym klientem, które i tak poskutkuje jedynie zaśmieceniem Google Play. Skoro zatem to wszystko jest takie problematyczne, to dlaczego ktokolwiek miałby się zajmować programowaniem? Śpieszę z wyjaśnieniami.
Paradoksalnie przytoczone problemy – zarówno po stronie zamawiającego, jak i wykonawcy, to korzyści płynące z programowania. W przeciwieństwie do polskich yuppies, programista jako jedyny będzie miał pojęcie, o czym tak naprawdę mowa, jak to jest pracować „na produkcji”, w konkretnych środowiskach programistycznych, zarządzać konkretnymi komponentami i prezentować konkretne rezultaty. Niewiele jest tu już pustych słów, jakie godzinami upycha się w korporacjach do prezentacji multimedialnych. Paradoksalnie, mimo całkowicie zwirtualizowanego środowiska pracy, programista w korpo zajmuje się czymś najbardziej namacalnym, zaś cała reszta stanowi często otoczkę, która niewiele rozumie. Czy to nie komfortowa sytuacja?
To z niej bierze się kolejna korzyść z programowania – jest to w tej chwili jedna z niewielu branż, w przypadku której w Polsce można mówić o rynku pracy pracownika. Deweloper jest w Polsce w doskonałej sytuacji i w 3 miesiące może zarobić niezłą roczną pensję osoby pracującej poza branżą. A jeśli będzie miał problemy z nudną i powtarzalną pracą nad apką, która „musi być i koniec”, może szybko migrować do kolejnej firmy. Jak mówi stary żart: bezrobocie to najgorsze 3 minuty w życiu każdego programisty.
Jak jest, a jak będzie?
Sytuacja programistów prezentuje się spektakularnie. Przynajmniej do czasu, aż praca programistów nie zostanie całkowicie zautomatyzowana. To ważna uwaga – jak wspominałem we wstępie, prędzej czy później rodeo dwucyfrowych pensji dobiegnie końca, a kod będzie pisał się sam. Jak długo to będzie trwało w Polsce – na to pytanie nie sposób odpowiedzieć z pewnością. Możemy być jednak przekonani, że docelową futurystyczną formą rynku pracy jest brak rynku pracy. Będzie to miało miejsce w świecie, w którym każdy etap produkcji, świadczenia usług i sprzedaży będzie nieśpiesznie, ale konsekwentnie automatyzowany.
Niewykluczone, że programiści są na szarym końcu listy zawodów do całkowitego zautomatyzowania. Już dziś bowiem mamy do czynienia z zastępowaniem przez maszyny prekariatu: np. automaty do zamawiania fast-foodu niegdyś stały skromnie na boku, a dziś prężą się tuż obok ekspedientek. W tym samym czasie, niezależnie od nietęgich min osób zatrudnionych w usługach, dla deweloperów trwa istny raj. Można więc oczekiwać, że potrwa on jeszcze od kilkunastu lat do kilku dekad. Programowanie wydaje się zatem względnie stabilną ścieżką w niestabilnym świecie.
Warto tu przypomnieć plotki dotyczące rozwoju systemu Fuchsia OS, nad którym prace trwają w Google. W jednym z przecieków padły słowa, które powinny zainteresować każdego, kto zastanawia się nad programowaniem. Otóż Fuchsia OS, jako niebazujący na Linuksie nowy system operacyjny Google, ma być dla korporacji sposobem na utrzymanie najlepszych programistów. Gdyby nie tak ambitny projekt, istniałoby ryzyko, że znajdą oni sobie inne przedsięwzięcie pod innym szyldem. Jak wiele jest dziś branż, w których pracują ludzie niezastąpieni?
Warto być Gigantem
Problem z programowaniem jest taki, że robi to dziś wiele osób i wiele osób robi to miernie. Nie brakuje nawet postulatów, by po informatyce nie przyznawać tytułu inżyniera. Zwolennicy tego pomysłu twierdzą bowiem, że gdyby na przykład konstruktorzy statków, hal czy mostów popełniali tyle błędów, co dzisiejsi programiści, to ofiary szły by w tysiące. Dlatego, jak zresztą w każdej profesji, warto zgłębić temat i postarać się być najlepszym, zacząć jak najwcześniej. Problem w tym, że wśród mnóstwa mniej lub bardziej udanych publikacji i kursów można się pogubić: widziałem już kursy, w których „programowanie” oznaczało uruchomienie bloga na WordPressie.
W gąszczu na pierwszy plan wybijają się w przemyślany sposób zaprojektowane kursy Giganci Programowania. Oferta podzielona jest na trzy grupy wiekowe – dla młodszych (7-12 lat) zajęcia skupiają się na zapoznaniu z algorytmami przez zabawę, tworzeniem prostych gier oraz zaznajomieniem z podstawami HTML-a czy CSS-a. Dla starszych (13-16 i 17-18 lat) przygotowano już jednak całkiem treściwe kursy z konkretami, wśród których nie zabraknie C#, JS i obsługi Android Studio. Dobrze zapowiada się także kurs „hackingu”, w którym będzie można zdobyć informacje o przeprowadzaniu pentestów z wykorzystaniem dystrybucji Kali Linux – zagadnienia zaniedbywanego nawet przez specjalistyczne szkoły średnie.
Zajęcia w ramach programu Giganci Programowania odbywają się w 19 miastach polski, zaś w ciągu 4 lat funkcjonowania szkoły udało się zapoznać kursem ponad 5 tys. osób. Szczegółowe informacje na temat organizacji kursu, podejmowanych zagadnień oraz cennik znaleźć można na stronie internetowej Gigantów Programowania. Dla wszystkich, którzy rozważają uczestnictwo w kursie mamy dobre wieści – we wrześniu w wielu miastach odbędą się warsztaty Koduj z Gigantami, dzięki którym wartość kursów będzie można zweryfikować samodzielnie i bezpłatnie. Patronat honorowy nad warsztatami objęło Ministerstwo Edukacji Narodowej.[frame]Bezpłatne warsztaty „Koduj z Gigantami” – kiedy i gdzie? WARSZAWA (ul. Krucza 46 lok. 3) – 8-14 września 2018 r. WROCŁAW (ul. Leszczyńskiego 4) – 10-16 września 2018 r. GDYNIA (ul. Świętojańska 34/3) – 22-23 września 2018 r. GDAŃSK (ul. Klonowa 1) – 19-22 września 2018 r. POZNAŃ (ul. Towarowa 35) – 9-14 września 2018 r. KRAKÓW (ul. św. Lubicz 3) – 8-14 września 2018 r. KATOWICE (ul. Korfantego 2) – 18-23 września 2018 r. GLIWICE (ul. Zwycięstwa 36) – 22 września 2018 r. ŁÓDŹ (ul. Krzemieniecka 2a) – 15-16 września 2018 r. SZCZECIN (al. Piastów 1)– 8 września 2018 r. TORUŃ (ul. Łazienna 24) – 16 września 2018 r. BYDGOSZCZ (ul. Jezuicka 2) – 15 września 2018 r. KIELCE (ul. Złota 15) – 9 września 2018 r. RZESZÓW (al. Kopisto 1) – 22 września 2018 r. BIAŁYSTOK (ul. Melmeda 1) – 15 września 2018 r. LUBLIN (ul. Grodzka 7) – 23 września 2018 r. SOSNOWIEC (ul. Emila Zegadowicza 2) – 22 września 2018 r. [/frame]Zapisy na warsztaty zostały już uruchomione, formularze zgłoszeniowe na zajęcia w każdym z miast dostępne są na stronie internetowej organizatora. Zapraszamy!