poprzedni artykułnastępny artykuł

Programiści rządzą światem

Podróż życia

Kiedyś, wracając z tatą samochodem do domu, przeprowadziłem rozmowę, która zmieniła moje życie. Rozmawialiśmy o tworzeniu programów komputerowych i wtedy padły słowa, które w tamtym momencie bardzo mnie zaskoczyły. “Aplikacji się nie TWORZY, je się PISZE” – powiedział mój ojciec. 

Tak bardzo zdziwiło mnie to stwierdzenie, że zacząłem drążyć temat, który ostatecznie całkowicie mnie pochłonął i stał się moją profesją. W dzisiejszym świecie słowo programista nikogo nie dziwi. Zawód ten stał się równie popularny co policjant, strażak, lekarz czy prawnik i rozważyłbym nawet stwierdzenie, że osoby go uprawiające zyskały podobny status społeczny. Osobiście uważam, że moja specjalizacja jest użyteczna nie tylko dlatego, że jest źródłem utrzymania, ale także ponieważ całkowicie zmieniła sposób, w jaki postrzegam świat.

Pierwszy rzut oka

Zanim jednak wyjaśnię o co chodzi z tym zmienianiem perspektywy, chciałbym pokrótce wyjaśnić, kim właściwie jest programista. Prosta sprawa, to osoba pisząca kod i tworząca w ten sposób programy komputerowe, powie zapewne część czytelników. Jest to oczywiście prawda, w sensie technicznym, ale ja chciałbym zwrócić uwagę na fakty, których wielu ludzi nie dostrzega. Kiedyś, podczas studiów, nawiązała się w naszej grupie znajomych rozmowa na temat dziedziny informatyki, w której będziemy chcieli szukać sobie pracy. Jedna z osób wspomniała wtedy, że jedynym sensownym rozwiązaniem jest zainteresowanie się sztuczną inteligencją, bo prędzej czy później wygryzie ona ludzi z pracy w IT.

Myślę, więc programuję

Ostatnio popularnym tematem rozmów był ChatGPT. Wielu moich kolegów chwaliło się, że podając algorytmowi informacje o programie, który muszą napisać, otrzymywali kod, który bardzo często realizował zadane polecenie i to zwykle w optymalny sposób. Część osób powiedziałaby, że mój kolega miał rację, a jego przepowiednia spełnia się nawet szybciej niż sam mógł przypuszczać. Moim zdaniem minie jeszcze jednak wiele czasu, zanim program wygryzie mnie z zawodu. Spokojny sen zawdzięczam przekonaniu, że programowanie to sztuka, a ta zakłada tworzenie, które jest wytworem kreatywnego umysłu. Pisanie kodu jest sztuką w sensie czysto technicznym, a więc w sposobie nadawania nazw zmiennym, funkcjom i innym elementom, pisaniu komentarzy wyjaśniających działanie kolejnych sekwencji poleceń. Jakby nie patrzeć, to każdy programista ma swój styl. Programowanie jednak jest sztuką także jako proces, zakłada bowiem tworzenie rozwiązań, a więc wykazanie się umiejętnością wykreowania, wyszukania jakiegoś sposobu na rozwiązanie problemu.

Jeden zawód – wiele możliwości

Kod jest w dzisiejszym świecie obecny w każdym sprzęcie używającym energii elektrycznej. Trzeba pamiętać, że programiści tworzą strony internetowe, aplikacje na smartfon, ale także programują lampki świąteczne, by po naciśnięciu guzika zmieniały tryb świecenia, samochód przyspieszał po naciśnięciu pedału gazu, a do spółki dystrybuującej energię elektryczną co miesiąc trafiał odczyt z naszego licznika. Ilość rodzajów pracy, która kryje się pod nazwą tego zawodu jest ogromna, a trzeba wspomnieć, że w każdej z grup istnieje jeszcze podział na języki programowania, których jest równie dużo. Jest jednak coś, co sprawia, że dowolny programista może całkowicie zmienić dziedzinę, w której na co dzień się porusza praktycznie z dnia na dzień…

Szybki kurs językowy

Większość ludzi zajmujących się pisaniem kodu rozpoczyna swoją przygodę od nauczenia się wybranego języka programowania. Jak wspomniałem wcześniej, wybór jest ogromny. Ja jako pierwszego nauczyłem się C++, bardzo szybko okazało się, że Java, C#, a później także JavaScript, Python, Lua i inne nie sprawiają mi żadnego problemu, wystarczy tylko poświęcić trochę czasu na sprawdzenie słów kluczowych używanych w danym języku. Trzeba przyznać, że wszystkie języki programowania zawierają w sobie sporą część wspólną. Instrukcje warunkowe, pętle czy funkcje występują w niemalże każdym z nich. Jest jednak coś jeszcze, co sprawia, że przestawienie się z jednego sposobu wydawania komputerowi poleceń na inny jest tak proste.

Nie tylko informatyką żyje programista

Programowanie można dostrzec w bardzo wielu miejscach naszego codziennego życia, działa to także w drugą stronę. Podczas pisania kodu wiele razy musiałem posiłkować się wytworami innych dziedzin nauki, jak np. matematyki i fizyki. Co ciekawe, współczesne nurty w technologii często inspirują się naukami przyrodniczymi, algorytmy genetyczne czy sztuczne sieci neuronowe zostały zapożyczone ze świata biologii. Sam fakt, że pewien określony zbiór słów kluczowych interpretowanych przez kompilator nazywamy językiem pokazuje, że z tej dziedziny informatyka także zapożyczyła pewne rozwiązania. Programowanie jest bliskie ludziom, bo bazuje na bardzo dużej ilości dziedzin, które możemy określić mianem fundamentalnych dla naszej kultury. 

Gwóźdź do trumny

Jest jeszcze jeden ważny element, który łączy nie tylko wszystkie dziedziny programowania, ale także programowanie z codziennym życiem. Algorytmika, to nauka o algorytmach, a algorytm z kolei jak podaje Encyklopedia PWN, to „przepis postępowania prowadzący do rozwiązania ustalonego problemu, określający ciąg czynności elementarnych, które należy w tym celu wykonać.”. Warto zauważyć, że w definicji słowa nie znajduje się żadna wzmianka o informatyce. Co więcej okazuje się, że algorytmy wręcz rządzą naszym życiem! No bo jak inaczej można określić czynność czytania tego artykułu? Jest to swoisty algorytm, którego danymi wejściowymi są jakieś szlaczki na kartce, a ostatecznym wynikiem myśli, wnioski, które pojawiają nam się w głowie po zakończeniu lektury. Gra w planszówkę, przepis kulinarny, naprawa samochodu wszystko to są algorytmy, które często nieświadomie wykonujemy, nie różnią się one zbyt od algorytmu wyszukiwania informacji za pomocą serwerów Google’a czy mechanizmu rezerwacji miejsca w kinie za pomocą strony internetowej.

(Nie)będziesz tego żałował

Nauka programowania ciągnie za sobą poważne konsekwencje. Bynajmniej nie są one groźne dla nas czy naszego otoczenia, ale sprawiają, że nasze życie zmieni się bezpowrotnie. Wiele zawodów ma swoje zboczenia zawodowe, ja w moim codziennym życiu doświadczam zjawiska algorytmizacji każdej wykonywanej czynności. Uwielbiam wręcz fanatycznie rozbijać problem na czynniki pierwsze i szukać najlepszego rozwiązania. Nie oznacza to oczywiście, że każdy kto nauczy Cię wyświetlić „Hello world!” na ekranie komputera stanie się chodzącą maszyną liczącą. Zdobyte doświadczenie daje nową perspektywę pozwalającą wiele codziennych problemów ująć w algorytm, przez co łatwiej będzie znaleźć optymalne rozwiązanie.

A komu to potrzebne?

Umiejętność ujęcia jakiegoś zadania w uporządkowany sposób w formie kroków i celu, do którego dążymy, a także punktu wyjścia, z którego zaczynamy przydaje się podczas rozwiązywania zadań matematycznych, szukania samochodu, budowania domu, organizowania pracy grupy pracowników czy wymyślania strategii podczas grania w grę planszową. Algorytmy są obecne w każdej czynności, a nauka programowania jest idealną formą do kształtowania umiejętności lepszego ich rozumienia i tworzenia. Programować może każdy, tak jak każdy może malować obrazy, tworzyć muzykę czy pisać wiersze.

Artykuły z tej samej kategorii

Narada służbowa – konieczność czy strata czasu?  

Jak efektywnie zorganizować spotkanie służbowe? 🤝 Jakie komplikacje mogą wystąpić podczas narad i jak skutecznie sobie z nimi radzić?...

Co po prawie?

Czy studiowanie prawa równa się jedynie zostanie sędzią, adwokatem czy prokuratorem? Nie! Rzecznik patentowy, doradca restrukturyzacyjny, compliance officer i...

Jak odciążyć służbę zdrowia?

Rewolucja w służbie zdrowia? 💉👨‍⚕️ Przeczytaj artykuł o innowacyjnych zmianach w roli farmaceutów, które mogą odciążyć przeciążony system zdrowia....