Twoja obecna praca nie daje Ci satysfakcji, Zastanawiasz się co innego mógłbyś w życiu robić ? A co Ty na to żeby zostać programistą ?
Zapewne nie raz słyszałeś o programistach, którzy pracują zdalnie i do tego fajnie zarabiają. Jeśli podjąłeś już decyzję o nauce programowania to zapraszam Cię do wspólnej przygody.
Jeszcze pół roku temu służyłem jako dowódca plutonu więc nauka programowania od zera nie jest mi odległa i będę na tym kanale dzielił się wiedzą oraz wskazówkami, które umożliwiły mi zdobycie pierwszej pracy na stanowisku juniora a Tobie zaoszczędzę trochę czasu bo nie będziesz musiał popełnić tych samych błędów.
Gdy zabieram się za nowe rzeczy to lubię mieć wszystko poukładane, iść zgodnie z jakimś harmonogramem. Postanowiłem, że najlepszym rozwiązaniem będzie skorzystanie z Roadmapy Frontend developera.
Jest to schemat, który określa tematy, które musisz poznać i zrozumieć żeby mieć jak największe szanse przy poszukiwaniu pierwszej pracy w IT, na stanowisku programisty.
Ale zanim przejdziemy do naszej roadmapy pozwól, że pokrótce wyjaśnię Ci kilka kwestii związanych z nauką programowania
Czym właściwie jest programowanie ?
Zapewne nie raz słyszałeś o programowaniu ponieważ teraz jest ono bardzo popularne i coraz więcej osób rozpoczyna naukę programowania.
Najprościej mówiąc programowanie polega na wydawaniu poleceń dla komputera. Wyobraź sobie, że programista to taki instruktor który mówi do komputera co ma zrobić krok po kroku aby wykonać jakieś zadanie.
Bardzo ważne jest to aby powiedzieć mu wszystko bardzo dokładnie, kropka w kropkę i nie popełnić żadnego błędu ponieważ komputer nie myśli tylko wykonuje polecenia a więc jeśli instruktor się pomyli to komputer nie wykona postawionego zadania.
Kim jest programista ?
programista to osoba, która dostarcza komputerowi zestaw instrukcji napisanych w języku dla niego zrozumiałym.
Instrukcje mogą być różnego rodzaju. Na przykład: dodaj 2 do 2, pokaż coś użytkownikowi, wykonaj jakieś działanie matematyczne, przefiltruj tablicę, wykonaj funkcję i wiele wiele innych.
Programować można na różne sposoby w zależności od rodzaju języka programowania, którym posługuje się programista.
Czym jest język programowania ?
Tak jak my ludzie porozumiewamy się ze sobą w określony sposób, przy użyciu różnych słów tak samo programista komunikuje się z komputerem, wykorzystując któryś z języków programowania.
Przekładając to na życie codzienne, jeśli chcesz się porozumieć z obcokrajowcem i poprosić go żeby coś dla Ciebie zrobił, musisz mówić w takim języku żeby Cię zrozumiał.
Dlatego żeby programista mógł przekazać polecenia dla komputera musi użyć takiego języka, który komputer będzie w stanie zrozumieć.
I tutaj istnieje pewien problem ponieważ komputer rozumie ciąg zer i jedynek i w taki sposób pracuje. Ale czy myślisz, że większość programistów uczy się np. jak wydać polecenie komputerowi w systemie zero jedynkowym ?
No nie bo zajmowałoby to bardzo dużo czasu i myślę że byłoby raczej niewykonalne. Dlatego też powstały języki programowania, które są pewnego rodzaju kompromisem pomiędzy językami jakimi się posługujemy a kodem maszynowym, który jest zrozumiały dla komputera. .
Język programowania to po prostu język, który rozumieją programiści i jest on tłumaczony na ciąg zer i jedynek zrozumiałych dla komputera. Proces ten ogólnie nazywa się kompilacją ale są też języki interpretowane, takie jak na przykład javascript, ale nie zagłębiajmy się narazie w szczegóły.
Podział języków programowania
Jest wiele podziałów języków programowania. Jednym z najogólniejszych jest podział na języki wysoko i niskopoziomowe.
Niskopoziomowe to takie, które są “blisko” kodu maszynowego i można powiedzieć że są one bardzo trudne do samodzielnego używania i obecnie stosowane do specyficznych zadań.
Na szczęście mamy języki wysokopoziomowe, które każda logicznie myśląca osoba jest w stanie zrozumieć, wymaga to po prostu trochę czasu.
Takie języki są dużo przyjemniejsze dla programistów ponieważ znając semantykę czyli charakterystyczne,symbole i zwroty oraz składnię czyli taką programistyczną gramatykę no i ogólne koncepcje programowania jesteśmy w stanie dogadać się z komputerem żeby zrobił dla nas to co chcemy- oczywiście z pewnymi ograniczeniami.
Frontend vs Backend
Często gdy mówimy o programowaniu to słyszy się takie enigmatyczne zwroty jak frontend i backend. Jeśli dopiero zaczynasz to być może zastanawiasz się, co właściwie oznaczają te terminy.
Frontend to cała warstwa wizualna, czyli to co widzisz gdy wchodzisz na jakąkolwiek stronę internetową. Natomiast backend to wszystkie procesy i mechanizmy, które zachodzą np po stronie serwera, których nie widać na pierwszy rzut oka, ale są one niezbędne do prawidłowego funkcjonowania na przykład strony internetowej jako całości.
Podczas pracy nad nowym projektem programiści tworzą programy od podstaw. Większość programów i aplikacji jest zbudowana z części frontendowej i backenowej, które ściśle ze sobą współpracują.
Pozostaje jednak pytanie, od czego zacząć : czy najpierw należy zacząć uczyć się front-endu czy back-endu?
To wszystko zależy od Ciebie i twoich preferencji po prostu od tego co chcesz robić i w jakim kierunku rozwijać. W jednym z kolejnych filmów na moim kanale wyjaśnię różnice i pomogę Ci wybrać ale na samym początku to nie ma dużego znaczenia, przekonasz się o tym z czasem.
Ja wybrałem frontend bo lubię widzieć efekty mojej pracy i dlatego w tym kierunku się rozwijam i filmy na tym kanale, również będą w tematyce frontendu, przynajmniej na początku.
Jeśli jednak masz wątpliwości i nie wiesz od jakiego języka zacząć to ja proponowałbym Javascript lub Python. Jeśli kręci Cię świat webowy, strony internetowe itd. to wybierz JavaScript, jeśli nie masz pojęcia co wybrać i nie wiem co Cię interesuje to zacznij od Pythona a po czasie stwierdzisz czy rozwijasz się w tym języku czy może coś zmieniasz.
Co to jest programowanie we Frontendzie ?
Frontend odpowiada za te części witryn i aplikacji, które użytkownicy faktycznie widzą i z którymi wchodzą w interakcje, aby wykonywać określone zadania.
Kiedy ludzie myślą o interfejsie, zwykle kojarzą go ze stylem i wyglądem witryny — takim jak układ strony, menu i obrazki na stronie itd. Frontend developerzy tworzą tą całą warstwę wizualną, którą widzi użytkownik i dbają o jej prawidłowe funkcjonowanie i zapewnienie jak najlepszych doświadczeń dla użytkowników, dodawanie animacji i interakcji i mają jeszcze wiele innych zadań.
Technologie Frontendowe
Jakie języki są używane są we Frontendzie ? Ogólnie rzecz biorąc, używa się języków takich jak HTML, CSS i JavaScript z tym, że jedynie JavaScript jest językiem programowania.
HTML to szkielet witryny, CSS (kaskadowe arkusze stylów) określa wygląd elementów na stronie, a JavaScript zapewnia wszystkie interakcje i funkcjonalności na przykład na stronie internetowej.
Jest to bardzo duże uproszczenie ponieważ strony internetowe mogą być tworzone za pomocą systemów CMS takich jak WordPress, napisane w PHP i wielu innych językach programowania, nawet tych co na pierwszy rzut oka uznawane są jako backendowe.
Tworzenie stron to tylko przykład, z którym najwięcej osób utożsamia frontend. Ale pamiętaj o tym, że w każdej aplikacji webowej mobilnej, różnych systemach, stronach i sklepach www, wszędzie tam istnieje warstwa frontendu no bo to jest to co widzisz.
Mamy również frameworki i biblioteki frontendowe takie jak React, Vue, Angular i inne ale na nie przyjdzie czas dopiero za trochę. Frameworki to wyspecjalizowane technologie, które pomagają tworzyć aplikacje. Zamiast pisać wszystko od zera, frameworki pozwalają przyspieszyć proces tworzenia kodu.
Zajrzyjmy do naszej roadmapy, która pozwoli nam trzymać się harmonogramu nauki. Takie mapy znajdziesz dla większości popularnych technologii. Ja przy tworzeniu materiałów będę się trzymał tej ścieżki więc jeśli planujesz samodzielną naukę to zalecam trzymanie się jej oraz zapraszam do kolejnych wpisów i filmów gdzie będę poruszał wszystkie tematy związane z Frontendem, no i dookoła Frontu 😉
Kilka słów motywacji na początek
Aby nauczyć się programowania niezbędne jest zaangażowanie i wytrwałość. Talent zdecydowanie pomaga aczkolwiek kluczowy jest upór w dążeniu do celu ponieważ wtedy przezwyciężamy swoje słabości, rozumiemy coraz więcej i po jakimś czasie możemy stwierdzić że już wiemy o co mniej więcej chodzi.
Programowanie to zajęcie lub też proces, który składa się z wielu zagadnień.
Jeśli masz jakieś przekonania na temat nauki programowania to skonfrontuj je z najpopularniejszymi mitami o nauce programowania i przekonaj się czy miałeś rację.
Nie da się nauczyć programowania w jeden tydzień a nawet miesiąc, tak jak to czasem obiecują wspaniałe kursy za “jedyne“ 10 tys.
Wszystko wymaga czasu, spróbuj i przekonaj się czy jest to dla Ciebie. Ja spróbowałem i niemalże uzależniłem się od nauki nowych technologii, rozwiązań, koncepcji itd.
Jeśli wytrwasz i zajarasz się tym to na pewno nie będziesz nigdy żałował tej decyzji.
Zapraszam do zapisanie się do mojego newslettera, dzięki temu będziesz otrzymywać na bieżąco informacje o nowych wpisach 😉
Jeśli zastanawiasz się nad rozpoczęciem nauki programowania, masz jakieś wątpliwości lub obawy, daj znać w komentarzu lub wyślij do mnie wiadomość a na pewno się do tego odniosę 😉