Jak zacząć programować?

Ten wpis jest skierowany do wszystkich osób, które pragną spróbować swoich sił w programowaniu. Nie ważne jest, w jakim wieku jest potencjalny przyszły programista, ponieważ na ogół start będzie wyglądał tak samo. Zapewne zdecydowana większość osób myśli, że programistą może być tylko osoba ze ścisłym wykształceniem, a najlepiej być po technikum i studiach informatycznych. Nic bardziej mylnego. Osobiście uważam, że programistą może stać się dosłownie każdy, ale jak do wszystkiego, do tego również potrzebne są zaangażowanie i wytrwałość.

Źródła wiedzy

Nie da się ukryć, że w dzisiejszych czasach najlepszym źródłem wiedzy, na prawie wszystkie tematy, jest Internet. Można natknąć się tutaj na całą masę darmowych kursów czy samouczków, jednak należy mieć na uwadze, że nie wszystkie z nich zaspokoją naszą potrzebę informacji lub informacje w nich zawarte będą wysokiej jakości. Nie ma co się jednak zniechęcać, ponieważ można natknąć się na perełki tworzone przez prawdziwych pasjonatów. Sam rozpoczynałem swoją przygodę programowania na Androida od kursu wideo z YouTube i sobie to chwalę.

Bardzo dużo osób lubi uczyć się programowania z książek, ale przyznam się, że do mnie taka forma nauki nie przemawia w wystarczający sposób. Nie uważam jednak książek za coś nieodpowiedniego, ponieważ dla kogoś może być to najlepsza forma nauki i przyswajania wiedzy. Jeśli chodzi o to źródło, trzeba jednak przyznać, że w ten sposób można nauczyć się bardzo dużo, jeśli chodzi o kwestie teoretyczne i nawet jeśli nie lubisz książek, a jednak dopiero zaczynasz naukę, polecam coś jednak przeczytać. Bez wątpienia teoria przyda się osobom, które nie miały wcześniej do czynienia z programowaniem i dopiero stawiają pierwsze kroki. Jeśli ktoś niekoniecznie przepada za teorią, dobrą wiadomością dla niego będzie to, że ucząc się jednego języka programowania, duża część wiedzy przyda się do nauki kolejnego, można więc powiedzieć, że część wiedzy już zostaje.

Oddzielny akapit poświęcę platformom internetowym z kursami wideo, ponieważ jeśli o mnie chodzi, taka forma nauki sprawdza się najlepiej. Nie wiem dlaczego, ale lubię słuchać, kiedy ktoś o czymś mówi, a do tego pokazuje, w jaki sposób można to zastosować w praktyce. Ze swojej strony mogę polecić taką formę nauki, a jako bardzo dobry przykład takiej platformy przytoczę Udemy. Można tutaj znaleźć bardzo wiele kursów na różnych poziomach zaawansowania. Jedne nauczą nas programowania od podstaw, a inne uzupełnią posiadaną już przez nas wiedzę. Przed zakupem możemy zapoznać się z tematyką kursu oraz spośród całej listy wybrać te najlepiej oceniane. Bardzo dobrą wiadomością jest również to, że praktycznie z dnia na dzień przybywa tutaj kursów w języku polskim, a dodatkowo w razie jakichś problemów możemy skontaktować się z autorem kursu lub też inne osoby, które z niego skorzystały, udzielą nam podpowiedzi na gnębiący nas problem. Na platformie Udemy pojawiają się bardzo często liczne promocje, więc mogę tylko zachęcić, aby z nich korzystać.

Ostatnią rzeczą, o której chcę powiedzieć w tej części, są wszelkiego rodzaju kursy i szkolenia z żywymi trenerami. Sprawdzą się one doskonale w przypadku osób, które nie mają zbyt dużego zaparcia i zaangażowania, żeby uczyć się wszystkiego na własną rękę w domowym zaciszu lub po prostu potrzebują mieć kogoś doświadczonego bezpośrednio przy sobie. Tutaj również możemy nauczyć się czegoś od absolutnych podstaw i również zostaniemy zaprzyjaźnieni z kwestiami teoretycznymi, ale przede wszystkim można w praktyce próbować swoich sił pod okiem doświadczonego trenera, który będzie w każdej chwili mógł przyjść nam z pomocą. Jednak należy pamiętać, że kurs kursowi jest nierówny i nie każdy dobrze przygotuje nas do pracy, a niektórzy trenerzy sami jeszcze powinni zadbać o poszerzenie swojej wiedzy. Zawsze więc należy poszukać w pierwszej kolejności opinii o danym kursie czy szkoleniu albo nawet o samym trenerze, tym bardziej że niekiedy ceny mogą okazać się dla kogoś bardzo wysokie.

Praktyka

Sama wiedza zdobyta z jakiegokolwiek źródła jest tak naprawdę tylko początkiem. Moim zdaniem praktyka właśnie jest najważniejszym etapem nauki czegokolwiek w ogóle i nie tyczy się to tylko programowania. Możemy nabyć jakąś wiedzą teoretyczną, ale dopiero w praktyce możemy jej do czegoś użyć, sprawić, że ma ona jakieś zastosowanie. W tematach programistycznych to właśnie praktyka jest najważniejsza dla pracodawcy mającego zatrudnić kogoś na stanowisku programisty.

Samo ukończenie kursu w jakiejkolwiek postaci czy przeczytanie książki powinno być dopiero wstępem. Aby nabyć biegłość w tworzeniu czegoś, musimy spróbować przełożyć w czyn jakiś swój pomysł. Jeśli na przykład uczymy się programować strony internetowe, spróbujmy wykonać swojego własnego bloga razem z panelem administracyjnym, dzięki któremu będziemy mogli nim zarządzać. Jeśli chcemy zrobić jakąś aplikację mobilną, zróbmy sobie aplikację do zapisywania notatek czy listy zakupów. To oczywiście są tylko bardzo proste przykłady i każdy może mieć jakiś inny pomysł czy potrzeby, ale nie można siedzieć z założonymi rękami i nic nie robić. Działanie jest tutaj najważniejsze, ponieważ cały świat IT ciągle się rozwija i jeśli jesteśmy dopiero na początku drogi, musimy nie tylko zapoznać się z obecnie panującymi trendami, ale również być przygotowani na ciągły rozwój.

W obecnych czasach również zamykanie się na tylko jedną technologię jest bez sensu. Przykładowo, jeśli chcemy zajmować się stronami internetowymi od frontu, nie wystarczy sama znajomość HTML, CSS i JavaScript czy jQuery, ale istnieje bardzo wiele frameworków, które są bardzo często stosowane jak: React, AngularJS, Vue.js, SASS, Less. To są tylko nieliczne przykłady. Nie chcę oczywiście w tym miejscu nikogo zniechęcać, ale jeśli myślisz o zostaniu programistą, musisz być świadomy tego, że bardzo często stosowanie kilku technologii jest wymagane i ważne jest to, że te technologie bardzo często się zmieniają.

Czy to dla mnie?

A co szkodzi spróbować? Wiem, że nieładnie jest odpowiadać pytaniem na pytanie, ale jeśli nie wiemy, czy nam to pasuje, nie dowiemy się tego, dopóki tego nie spróbujemy. Jeśli nie jesteś mistrzem matematyki, nie myśl, że jesteś na przegranej pozycji. W znacznej mierze programowanie opiera się na logice, więc wystarczy, że potrafimy przeanalizować jakieś zagadnienie i utworzyć sobie ścieżkę, która poprowadzi nas do rozwiązania jakiegoś problemu. Na tym polega algorytmika, a algorytm jest po prostu niczym innym jak przepisem na coś. Zgadza się, algorytmem jest również przepis na jajecznicę. Jeśli masz jakieś wątpliwości, pozostaje Ci tylko je rozwiać. Jeśli chcesz, aby Twoja praca była namacalna i od razu widoczna dla każdego spróbuj od nauki HTML i CSS, a jeśli masz ciekawość wszystkich mechanizmów, które napędzają jakąś aplikację, naucz się języka takiego jak PHP czy Java. Wykorzystaj wolny czas, zainwestuj 40 zł w kurs i po prostu spróbuj.