Co jest potrzebne do nauki programowania?

Co jest potrzebne do nauki programowania?

4 sierpnia 2022

Do biegania potrzebne są buty, do fotografowania aparat, a do pływania czepek. Wiele osób, które chcą zacząć programować, mogą zastanawiać się, czego potrzebują do nauki programowania.

W tym wpisie przedstawię rzeczy (i nie tylko rzeczy), które przydadzą Wam się na początku Waszej programistycznej przygody.

Rzeczy (i nie tylko) potrzebne do nauki programowania

1. Komputer lub laptop

Programowania, podobnie jak na przykład matematyki, najłatwiej uczy się poprzez praktykę. Z tego powodu, dobrze by było, żebyście oprócz zgłębiania teorii, od samego początku próbowali tworzyć coś na własną rękę — choćby nawet przepisując to z książki, czy dokumentacji. Jeżeli będziecie próbowali to zrozumieć, albo coś pozmieniać, prawdopodobnie zapamiętacie z tego o wiele więcej niż po samym przeczytaniu, czy nawet nauczeniu się fragmentu kodu na pamięć.

Wskazówka:

Składnia danego języka i tak z czasem przyjdzie sama. Starajcie się przyłożyć bardziej do stojącej za nią logiki, bo to ona jest w tym wszystkim najważniejsza. Po składnię zawsze można wrócić do dokumentacji, a logicznej warstwy Waszego projektu raczej nikt nie wymyśli za Was.

O ile nie planujecie pracować na przykład przy gamedevie, prawdopodobnie wystarczy Wam niemal każdy komputer. W ostateczności możecie wrzucić na niego np. Lubuntu czy antiX i dać staremu sprzętowi “drugie życie”.

Ja podstaw programowania nauczyłem się na 13-calowym, niewiele młodszym ode mnie laptopie. Przeglądarka internetowa włączała się na nim dobre kilka minut, ale jak widać — dało się.

Poważnie. Do większości zastosowań związanych z programowaniem spokojnie powinien wystarczyć poleasingowy laptop z allegro za 3-4 stówki. Oczywiście nie będzie to najbardziej wypasiony sprzęt na świecie, a komfort nie będzie równy nowoczesnej maszynie za 5 tysięcy, ale jeżeli naprawdę zależy Wam na nauce programowania, sprzęt nie powinien stanowić ani przeszkody, ani wymówki.

2. Podstawowe wyposażenie komputera

Chyba nie muszę o tym wspominać, ale oczywiście przyda Wam się monitor (najlepiej dość spory, powyżej 21 cali), klawiatura — jakakolwiek, byle wygodna, oraz myszka, której jako programiści z reguły używamy stosunkowo mało (im bardziej zaawansowany programista, tym więcej rzeczy wykonuje po prostu skrótami klawiszowymi — tak zazwyczaj jest szybciej).

Oczywiście jeżeli macie laptopa, nie musicie dokupować do niego myszki, bo macie touchpad, a klawiatura i ekran są wbudowane. Dla samego komfortu, jeżeli pracujecie w jednym miejscu – moim zdaniem jednak warto.

3. Wybór i instalacja danego języka programowania

Na sam początek najlepiej wybrać język, który spełnia dwa podstawowe założenia:

  • Jest prosty i można się go stosunkowo łatwo nauczyć.
  • Możecie tworzyć w nim to, co Was interesuje (znacząco uprzyjemni to proces nauki).

Chodzi o to, żebyście się nie zrazili już na samym początku.

Pamiętajcie, że wybór języka programowania nie jest jakoś szczególnie wiążący, bo tak jak pisałem na początku tego wpisu — o wiele ważniejsza jest logika.

Dla przykładu osobiście nie miałbym oporów, żeby jeszcze dziś zacząć uczyć się np. Ruby, czy Javy, z którymi nie miałem nigdy wcześniej żadnej styczności. Prawdopodobnie jeszcze w tym tygodniu napisałbym w nich coś w miarę sensownego na własną rękę. Wynika to z tego, że ze względu na jakieś tam doświadczenie z innych języków, rozumiem pewne koncepcje, potrafię ułożyć właściwą logikę, oraz nie ukrywajmy — przede wszystkim — jako programista, potrafię dobrze wyszukiwać informacje w internecie, dzięki czemu na pewno dość łatwo rozwiązałbym większość napotkanych problemów.

4. Edytor kodu lub IDE

Jeżeli już zdecydujecie się na wybór daną technologię, musicie mieć narzędzie, w którym będziecie ten swój wymarzony kod “klepać”, oraz w przypadku niektórych języków programowania, również kompilować.

W wielu przypadkach wystarczy zwykły, zainstalowany w systemie notatnik, ale nie jesteśmy tutaj na lekcji informatyki — nie będę ściemniał, że ma to jakiś większy sens. Pobierzcie cokolwiek z kolorowaniem składni, ciemnym tłem (choć to kwestia preferencji), a przede wszystkim, zawijaniem wierszy.

Do większości zastosowań idealnie nada się darmowy VSCode, a jeżeli w Waszym przypadku nie wystarczy, poszukajcie IDE polecanego do używanego przez Was języka programowania.

5. Trochę wolnego czasu

Nauka programowania nie jest zajęciem na jeden wieczór. Podobnie jak z nauką języka obcego — przychodzi ona stopniowo, a tak naprawdę, raczej nigdy jej w całości nie pojmiemy, bo jest tego po prostu za dużo. Nie wiem, jak Wy, ale ja nadal, mając 24 lata i mieszkając w Polsce od urodzenia, potrafię raz na jakiś czas odkryć słowo, którego dotychczas ani razu nie słyszałem.

Nikt nie każe Wam jednak uczyć się programowania do perfekcji. Wystarczy nauczyć się podstaw, a Wasza wiedza powinna naturalnie poszerzać się poprzez praktykę. Osobiście pomimo kilku ładnych lat w między innymi PHP, nadal czuję się tak, jakbym miał do opanowania jeszcze dobre 80% wiedzy na temat tego języka. Nie zmienia to jednak faktu, że mój obecny stan wiedzy pozwala mi tworzyć praktycznie wszystko to, co chcę, a w razie jakiegoś problemu — zawsze mogę się doedukować. Właśnie na tym polega ten fach.

Przechodząc do meritum, uważam, że fajnie by było gdybyście mieli na naukę programowania przynajmniej godzinę dziennie, ale nawet piętnaście minut powinno wystarczyć, pod warunkiem, że nie dacie sobie z tym spokoju po miesiącu.

Więcej na ten temat możecie przeczytać we wpisie: Jak znaleźć czas na naukę programowania?

6. Sporo samozaparcia i chęci do nauki

Programowanie wypala. Jeżeli nie czujecie się do tego stworzeni, a od dłuższego czasu nie spotykacie żadnych wyzwań, lub przeciwnie — spotykacie ich zbyt wiele — możecie najzwyczajniej w świecie mieć tego dość.

Nie znam nikogo, u kogo motywacja utrzymywałaby się przez całe życie. Znacznie lepsza jest po prostu dyscyplina. Jeżeli jesteście pewni, że programowanie to coś, co chcecie opanować — postanówcie sobie na przykład, że każdego dnia poświęcacie X czasu na naukę tego fachu i robicie co w Waszej mocy, żeby nie oszukiwać przy tym samych siebie.

Osobiście programowaniem zafascynowałem się w wieku ~12 lat, a zacząłem w tym kierunku cokolwiek robić mając jakieś ~16.

Cztery lata szukałem odpowiedniego momentu i motywacji. Za każdym razem gdy próbowałem, zniechęcałem się po kilku godzinach i pierwszym problemie.

Programowanie to ciągłe rozwiązywanie problemów, więc albo to przezwyciężysz, albo spróbuj poszukać czegoś, co będzie dla Ciebie bardziej odpowiednie. Nie każdy musi umieć śpiewać, nie każdy musi być dobrym aktorem, nie każdy musi potrafić prowadzić ciężarówkę, więc analogicznie, nie każdy musi umieć i lubić programować.

7. Dobry kurs, aktualna książka, lub brak strachu przed dokumentacją

Jeżeli chcecie, żeby ktoś poprowadził Was “za rączkę”, dobrym wyborem na początku nauki programowania może być jakiś kurs lub książka. Oczywiście nie namawiam Was do tego, żebyście płacili tysiące złotych jakimś pseudo guru, którzy obiecują gruszki na wierzbie. Dla przykładu, na Udemy podczas promocji (które są tam praktycznie cały czas) powinniście wyrwać ciekawy kurs za kilkadziesiąt, a maksymalnie kilkaset złotych.

Przerobienie takiego materiału krok po kroku może znacznie podbudować Waszą pewność siebie w danym języku, a jeżeli postaracie się nie tylko przepisać, ale i zrozumieć materiał — prawdopodobnie po ukończeniu go będziecie już coś umieć.

Podobnie jest chociażby z książkami, ale w tym wypadku warto wziąć pod uwagę, że zwykle dość szybko się starzeją. Jeżeli chcecie się na to zdecydować, zwróćcie uwagę na datę wydania i jakieś bardziej aktualne opinie.

Na dobrą sprawę, jeżeli się nie boicie, możecie się nawet od razu uczyć z oficjalnej dokumentacji danego języka. Jedne są jednak lepsze, a drugie gorsze, dlatego nie zawsze będzie to świetny pomysł (część z nich jest mocno techniczna i mało przyjazna osobom, które nie miały wcześniej styczności z kodowaniem).

Ja nauczyłem się programować w najprostszy i najprzyjemniejszy sposób, jaki mogłem sobie wyobrazić. Wziąłem książkę, która krok po kroku opisywała budowę jakiejś małej aplikacji. Przerobiłem to i zrozumiałem podstawy (dokładniej opanowałem tylko mechanizm działania zmiennych i instrukcji warunkowych — pętle czy tablice nadal wydawały mi się czarną magią), a później pobrałem silnik gry przeglądarkowej (czegoś, co wówczas mnie bardzo interesowało) i starałem się przerabiać go na własną rękę metodą prób i błędów.

Cała reszta mojej przygody to była w zasadzie mniej lub bardziej udana praktyka i szukanie w internecie rozwiązań problemów, z którymi się spotykałem.

Czy można nauczyć się programowania nie mając komputera?

Niedawno czytałem wątek na reddicie o osobach, które uczą się, a nawet programują na swoich telefonach. Jest to mało wygodne, ale przy odpowiedniej motywacji i samozaparciu, na pewno się da. Nawet jeżeli nie macie komputera, ale bardzo Was to interesuje, w tych czasach nauka programowania nie powinna być ciężka, zwłaszcza że komputery są ogólnodostępne i prawdopodobnie i tak możecie z nich skorzystać na przykład w pobliskiej bibliotece.

Nie wiem, na czym teraz czytacie ten wpis, ale prawdopodobnie nawet na tym urządzeniu bylibyście w stanie zacząć programować. Choćby w JavaScript, do którego wystarczy sama przeglądarka internetowa.

Tak jak pisałem wyżej, najlepiej zaopatrzyć się jednak we własny komputer. Jeżeli uważasz, że Cię na niego nie stać, sprawdź aukcje z używanymi, czy poleasingowymi laptopami/komputerami. Zwykle znajdziecie tam sprzęt, który spokojnie wystarczy do nauki, a nawet pracy, pomimo tego, że kosztuje jakieś kilkaset złotych.