Jak uczyć się programowania? Na pewno nie można tu stworzyć uniwersalnej listy zaleceń, ale da się wyróżnić kilka najważniejszych punktów, które pozwolą nauczyć się programowania.
Czy teoria jest ważna?
Na początek wypada zacząć od tego, czy rzeczywiście przydaje się znajomość teorii w programowaniu, ponieważ na ten temat cały czas trwają poważne dyskusje. Moim zdaniem jak najbardziej tak, ponieważ pozwala to lepiej spojrzeć na całokształt i w tym miejscu mam na myśli nawet podstawową znajomość budowy komputera, działania procesora czy systemu operacyjnego. Myślę, że w taki sposób później znacznie lepiej rozumie się, jak coś działa.
W tym miejscu wypada wspomnieć również coś o samych algorytmach. Tu ponownie dotykamy tematu, który wzbudza skrajne emocje i jedni uważają znajomość algorytmów za coś niezbędnego, a inni są zdania, że zupełnie się nie przydają. Prawda w zasadzie tkwi po środku. Wiedza o algorytmice okazuje się być potężnym narzędziem i mimo że nie widać jej wpływu na pierwszy rzut oka, to na późniejszych etapach kariery staje się czymś naprawdę ważnym. Moim zdaniem to również świetna przestrzeń do tego, aby rozwijać swoją wiedzę informatyczną.
Skoro pojawił się już wątek algorytmów, to warto odpowiedzieć na to, czy rzeczywiście trzeba mieć umysł ścisły, aby móc programować. Trudno stwierdzić, aby bycie bardziej humanistyczną duszą szczególnie tu przeszkadzało, szczególnie jeżeli mówimy o frontendzie i projektowaniu interfejsów, gdzie trzeba na wszystko spojrzeć z szerszej niż tylko programistycznej perspektywy. Na pewno brak sympatii do matematyki nie blokuje możliwości rozwoju w tym kierunku, jednak jej znajomość potrafi się przydawać.
Przeczytaj również: Jak wygląda praca w informatyce teoretycznej?
Jednocześnie warto dowiedzieć się również na temat tego, jak wygląda praca programisty. Lepiej zobaczyć wcześniej, czy taki styl nam pasuje i czy pokrywa się to z naszymi wyobrażeniami.
Jak nauczyć się podstaw?
Po pierwsze programowanie to przede wszystkim nauka myślenia i rozwiązywania problemów. Wiąże się to z analizą, wysnuwanie wniosków, umiejętnością przełożenia tego na kolejne kroki. Brzmi prosto? Owszem, choć należy mieć na uwadze, że w praktyce wygląda to dużo bardziej skomplikowanie i zdecydowanie nie każdy będzie czuł się w tym jak ryba w wodzie. W tym miejscu powiedziałbym, że przydaje się tu algorytmiczne myślenie.
Po drugie warto rozpocząć naukę od jednego z najbardziej popularnych języków programowania, do którego nie będzie nam brakowało materiałów do nauki, co jest niezwykle ważne. W zasadzie trudno wskazać jeden konkretny język, który najlepiej się sprawdzi. Ostatnio największą popularnością cieszy się Python. Wpływ na to ma szerokie stosowanie w zakresie Data Science czy sztucznej inteligencji i moim zdaniem to odpowiedni język do nauki podstaw. Teraz całkiem ciekawie przedstawia się również Go (Golang) od Google, który stanowi przykład na to, że wciąż świat potrzebuje nowych języków programowania. Jako uzupełnienie dla tej listy wspomnę jeszcze o C i C++, wymagających i ciekawych, choć potrafiących zniechęcić na początku drogi, Javie i Kotlinie oraz Scali, które pozwolą sporo się dowiedzieć, oraz JavaScripcie, jeżeli od początku wiemy, że celujemy w, np. projektowanie stron internetowych. Przede wszystkim należy pamiętać, że język programowania to narzędzie i pewna wiedza będzie uniwersalna. Niezbędna pozostaje również wiedza z zakresu SQL oraz tworzenia testów. Bez tego nie ma co liczyć na sukces.
Sprawdź też: Czym jest ta sztuczna inteligencja?
Na początku drogi warto również zaprzyjaźnić się z systemem kontroli wersji Git oraz nawykiem pisania testów. To się naprawdę przydaje.
Ścieżki nauki
Jakie mamy jednak dostępne ścieżki, które pozwolą nam na dobre zostać programistą? Możemy tu wyróżnić trzy główne.
- Samodzielna nauka - zdecydowanie wymaga to sporo samozaparcia i umiejętności rozplanowania sobie czasu oraz tego, jak będziemy się uczyć. Moim zdaniem to bardzo rozsądna opcja, a tu warto dodać, że lista dostępnych materiałów w sieci, dodatkowo darmowa, jest na tyle obszerna, że spokojnie będziemy mieli w czym przebierać.
- Studia - dla niektórych studia informatyczne są bez sensu, ale myślę, że dla niektórych osób będzie to odpowiedni sprawdzian, czy rzeczywiście chcą w tej branży pracować. Do tego dochodzi spora różnorodność zajęć, możliwość nawiązania znajomości na lata i włączenia się w kółka tematyczne.
- Szkoła programowania - ostatnio cieszą się one sporą popularnością. Niewątpliwie nie jest to tania opcja, ale na pewno dla niektórych będzie to świetna motywacja do nauki programowania i kontynuowania jej również po zajęciach. Przede wszystkim szkoła nie gwarantuje, że automatycznie staniemy się programistami, ponieważ wymaga to mnóstwo pracy własnej.
Praktyka czyni mistrza
Jak uczyć się programowania? Omówiliśmy już powierzchownie teorię oraz dostępne ścieżki, więc przejdźmy do tego, jak zacząć pisać z sensem i tak, aby dawało to widoczne efekty. Cóż, rada jest jedna: robić projekty. Dokładnie tak jak z jazdą na rowerze czy samochodem: praktyka czyni mistrza i w żaden inny sposób nie nabędziemy potrzebnych umiejętności. Na pewno przydają się tu również różne strony, na których znajdziemy zadania programistyczne., np. Codewars. Do tego możemy sami wymyślić temat projektu. Na przykład, chcemy pobierać dane ze strony albo chcemy wyświetlać pogodę na komputerze. Szukamy możliwych rozwiązań i staramy się sami to stworzyć.
Takie rzeczy najlepiej świadczą o tym, czy nam zależy. Później na etapie szukania pracy możemy o tym wspomnieć i na pewno poprawi ocenę o nas jako kandydacie. Dodatkowo lepiej zobaczymy, jak to wygląda.
Krok w świat profesjonalistów
Ile czasu jest potrzebne, zanim będziemy mogli rozpocząć pracę w zawodzie? Nie da się na to pytanie jasno odpowiedzieć. Na pewno warto próbować swoich sił na różnych stażach, które pozwalają szybko wdrożyć się w branżę IT. Należy robić projekty i rozwijać swoją wiedzę w tym zakresie.
Do tego wszystkiego przydaje się znajomość języka angielskiego w stopniu komunikatywnym, posiadanie przejrzystego CV oraz profilu na LinkedIn. Moim zdaniem może to być naprawdę wartościowe źródło wiedzy i ofert.
Jak wygląda zarobki na start? Mimo że w sieci wciąż znajdzie się opinie o tym, że #programista15k na początku to prawda, należy pamiętać, że zupełnie to tak nie wygląda. Bez doświadczenia komercyjnego można liczyć na początek na kwoty rzędu 1500 - 3500 złotych netto. Oczywiście, jeżeli nasza wiedza i umiejętności są wyższe niż wskazywałoby na to juniorskie stanowisko, wówczas można mówić o wyższych kwotach. Dodatkowo w IT można liczyć na dosyć szybki przyrost zarobków.
Nauka programowania w szkole
Czy liceum albo technikum jest dobrym miejscem do poznania tajników programowania? Co najwyżej może zaszczepić zainteresowanie do tego, co już potrafi naprawdę wiele znaczyć.
W tym miejscu chciałbym zaprosić do przeczytania felietonu szerzej poruszającego temat nauczania informatyki w szkole: Informatyka w szkole to ponury żart.
Dowiedz się więcej o zawodach IT
- Praca jako Data Scientist.
- Praca jako UI Developer.
- Praca jako UI/UX Designer.
- Praca jako programista Android.
- Praca jako programista iOS.
- Praca jako programista Java.
- Praca jako programista JavaScript.
Wpis jest częścią cyklu "Powrót do szkoły 2019", w ramach którego doradzamy, polecamy i rekomendujemy produkty, rozwiązania, usługi i aplikacje, które sprawią, że wrzesień będzie o wiele łatwiejszy i przyjemniejszy. Partnerem cyklu jest firma Intel, producent wydajnych procesorów do laptopów i nie tylko.
Hej, jesteśmy na Google News - Obserwuj to, co ważne w techu