Wzorcowe 30 Dni – Przyszłego Programisty, Jak Zostać Programistą? 🚀🔥

30 dni programisty – jak zostać programistą?

NAGLE…
Straciłem wszystko.

Nie mam doświadczenia komercyjnego.
Nie mam znajomych programistów.
Nie umiem programować…
(Masakra! 😅)

Mam 30 dni na ruszenie od ZERA.

Co robić???

Na szczęście, to tylko hipotetyczna sytuacja. 🙃

Ale!

Całkiem dużo możemy się na niej nauczyć.
I zdecydowanie warto zrobić sobie takie ćwiczenie.

Za pierwszym razem, gdy robiłem to sam – było trudno. 😬
Teraz gdy wspólnie z kursantami przechodzimy podobny proces
– każdy kolejny raz, jest coraz bardziej dopracowany – i coraz łatwiejszy! 🏖️🍹

Ok.
Chcę zostać programistą.
Nic nie umiem.

I co teraz? 😁

Jak powinno wyglądać
takie wzorcowe pierwsze 30 dni przyszłego programisty?

Etap 1. Wyparcie i panika

30 dni programisty – panika

Nie oszukujmy się – jesteśmy tylko ludźmi.

Pierwsze dni zazwyczaj obarczone są ogromną niepewnością, wątpliwościami,
a w przypadku wielu osób wręcz paniką…

Co teraz?
Jak zacząć?
Ja się do tego nie nadaję!

Na tym etapie warto przede wszystkim nie panikować (za bardzo)
i zebrać trochę informacji.
Na konkretne decyzje jeszcze przyjdzie czas.

Powiedźmy, że w takim stanie spędzimy 3 pierwsze dni.

Także zabieramy się za robotę! 🚀🔥

Dzień 1

 

Podcast – 100 dni programisty

W ramach tego materiału – opisałem jak może wyglądać takie wzorcowe pierwsze 30 dni przyszłego programisty.
Natomiast cała koncepcja – 100 pierwszych dni została omówiona w poniższym podcaście. 👇

➡ ZOBACZ 👉: 100 dni Developera – Jak Zostać Programistą?

Etap 2. Spróbuj tego w praktyce  🐉

Jak zostać programistą? – Start
Dzień 2

  • Tylko czytając o programowaniu – nie nauczysz się tego.
    Ba! – nawet „nie poczujesz” jak to jest!
    Dlatego możliwie szybko warto napisać pierwsze fragmenty kodu i spróbować tego w praktyce.
  • Spróbuj rozwiązać jakiś prosty problem programistyczny np. policz średnią wieku członków Twojej rodziny.
  • Przygotuj aplikację typu „Hello World” w dowolnym języku programowania np. Java.
  • Obejrzyj fragment jakiegoś tutoriala i przejdź wspólnie z autorem przez tok rozumowania podczas rozwiązywania problemu.
    Tutaj zapraszam na nasz kanał na YouTube.

Idziemy dalej! 🚶🚶‍♀🏃🏃🏽‍♀️

Temat pracy programisty został przez Ciebie wstępnie przeanalizowany 🕵️‍♂️?
Czujesz, że to może być TO?

Jeżeli tak, to przyjrzymy się kolejnym krokom, które przybliżą Cię do tego celu! 🙂

Etap 3. Znajdź swoje „Dlaczego?”

  • Odpowiedz sobie szczerze na pytanie
    – dlaczego chcesz uczyć się programowania i dlaczego chcesz zostać programistą?
  • Pomoże Ci to gdy pojawią się ewentualne trudności – a jest to tak naprawdę tylko kwestia czasu…
  • Zapoznaj się też z poniższym materiałem
    Dlaczego warto – ale dlaczego też NIE warto być programistą
    – Pomoże Ci on lepiej zorientować się w temacie zawodu programisty 🙂

➡ ZOBACZ 👉: Czy warto być programistą?
➡ ZOBACZ 👉: Nauka programowania (Znajdź swoje DLACZEGO?)

Etap 4. Weryfikacja Twoich preferencji i predyspozycji

Dzień 3

Skoro wiemy już co nieco o Twoich preferencjach i zakładamy,
że przynajmniej na tym etapie programowanie wydaje Ci się kuszące,
to możemy zejść odrobinę głębiej w naszych rozważaniach.

Szczególnie że programowanie i IT – to bardzo szerokie dziedziny wiedzy.
I tutaj przynajmniej wstępnie warto zastanowić się, w którym kierunku chcemy iść dalej.

Czy będzie to np.

  • implementacja algorytmów,
  • czy może bardziej ciągnie Cię do rozmowy z klientem,
  • czy może też do pracy z grafiką?

Możliwości jest naprawdę sporo. 👇

Dziedziny programowania

Zapoznaj się z różnymi dziedzinami programowania, np.

  • robieniem stron internetowych,
  • aplikacjami mobilnymi,
  • data science, AI/sztuczną inteligencją,
  • grami
  • itd.

Jak zrobić to w praktyce?

Wpisujesz w google i/lub na YouTube np. „jak zrobić stronę internetową” – i czytasz, oglądasz, analizujesz…

Chcesz zostać programistą? 

To musisz nauczyć się jak szukać informacji!

➡ ZOBACZ 👉: Jak skutecznie szukać informacji w Google!

Etap 5. Twoja przyszła specjalizacja
Jak zostać programistą? – specjalizacja

Dzień 4

Specjalizacja

Wstępnie wybierz specjalizację, która najbardziej Cię interesuje i zgadza się z Twoimi celami zawodowymi.

  • Pamiętaj, to nie musi być Twoja ostateczna decyzja i później zawsze można ją zmienić lub rozszerzyć.
  • Tutaj warto zacząć od czegoś prostszego, nawet jeżeli mamy ambicję na coś więcej.
  • Przykładowo, nawet jeżeli za kilka lat widzimy się jako fullstack developer,
    to warto zacząć od jednej specjalizacji np. backendu i dopiero później to rozszerzyć.

Backend

W ramach tego materiału zajmujemy się przede wszystkim planem jak zostać programistą
– natomiast kompletny materiał dotyczący backend’u znajdziesz poniżej.

➡ ZOBACZ 👉: Backend – czy nadajesz się na backend developera?

Backend Developer, Back end developer

Backend Developer, Back end developer

Dzień 5

Dziś wybierzemy Twój pierwszy główny język programowania.

To ważna decyzja – chociaż nie demonizowałbym tego…
Ja oraz wielu innych programistów znamy więcej niż jeden język programowania.
Swoją pierwszą pracę znalazłem programując w PHP, a obecnie specjalizuję się w Java.

UWAGA: 
Mimo że doświadczeni programiści znają wiele różnych języków programowania,
to zaczynając swoją przygodę z programowaniem – lepiej jest skupić się tylko na jednym wybranym języku.

Najlepiej na ten wybór poświęcić max tydzień.
Koniecznie zapoznaj się z poniższymi pytaniami – pomogą Ci one podjąć świadomą decyzję.

Jak wybrać pierwszy język programowania?

  1. Dobierz język do Twoich potrzeb (backend, frontend, gry, mobile itp.)
  2. Patrz na trendy i unikaj prehistorii
  3. Miej na uwadze swoje finanse
  4. Język to nie tylko pętle i if’y !!

Więcej pytań oraz ich opracowanie znajdziesz w poniższym materiale. 👇

➡ ZOBACZ 👉:
10 kroków – Jak wybrać język programowania?
Żeby dobrze się bawić, dobrze zarabiać i nie popaść w paranoję…

Dlaczego warto uczyć się Java?

  1. Popularność
  2. Stabilność
  3. Szeroki dostęp do bibliotek i frameworków, liczne integracje
  4. Wsparcie społeczności
  5. Wsparcie dużych korporacji
  6. Uniwersalność
  7. Zadowolenie osób, które wybrały ten język
  8. Ogromna liczba dostępnych projektów
  9. Zarobki
Rozwinięcie oraz przykładową aplikację znajdziesz poniżej. 👇

➡ ZOBACZ 👉: Dlaczego warto uczyć się Javy – dyskusja + live coding

Etap 6. Nauka podstaw składni języka programowania

Dzień 6

Wczoraj był trudny dzień – dużo decyzji. 🤯

Dziś też będzie ciekawie! 😀
Dziś zaczniemy prawdziwe – praktyczne programowanie!

Twoje zadanie na dziś to:

  • Napisz swoją pierwszą aplikację w Twoim wybranym języku programowania.
    Na teraz to nie musi być coś wielkiego – rozbudujemy to później.
    Ważne, by zacząć.

Jak zostać programistą? – zabawa

Pamiętaj – by bawić się kodem! 😜
To naprawdę ważne.
Im lepiej się przy tym bawisz, im więcej próbujesz i kombinujesz,
tym masz większe szanse, że zostaniesz dobrym programistą i będzie to dla Ciebie przyjemne.

➡ ZOBACZ 👉:
Jak napisać swój pierwszy program Java

Nie chcesz wszystkiego robić ręcznie? A masz jeszcze trochę sił na naukę?

To koniecznie zainteresuj się – zintegrowanym środowiskiem programistycznym.
To jedno z podstawowych narzędzi każdego programisty i będzie nam towarzyszyło już do końca naszej przygody.

➡ ZOBACZ 👉:
IDE – Zintegrowane środowisko programistyczne | Kurs Java

Etap 7. Długofalowe podejście

Dzień 7

Nauka programowania to nie sprint
– nie nauczysz się tego w miesiąc, a tym bardziej w tydzień…

Dlatego trzeba równomiernie rozłożyć siły,
uwzględnić nasze słabości, trudniejsze momenty i WOLNE!

Dlatego, 7 dnia trochę odpoczniemy! 😀

Idź na spacer,
spędź trochę czasu z rodziną,
zrób coś, co sprawia Ci przyjemność!

To naprawdę ważne
– uczymy się przecież programowania, by zmienić coś w naszym życiu. By było nam lepiej!

A jaki jest najlepszy sposób,
by odpocząć i jednocześnie nie wypaść z rytmu?

Oczywiście słuchanie podcastów! 🗣🎧
Tak, tak – koniecznie o programowaniu! 😅

Tutaj zapraszam Cię do mojego podcastu o programowaniu 🚀
➡ ZOBACZ 👉: Podcast – SprawnyProgramista.pl

Dzień 8 Jak zostać programistą? – energia

Dziś z nowymi pokładami energii, ⚡🤩🔋🤸‍♂️
kontynuujemy naukę podstaw składni Twojego języka programowania.

To już nie są przelewki!
To już jest prawdziwe programowanie.

Czujesz to? 😎😎

Więcej podobnych materiałów znajdziesz tutaj.
➡ ZOBACZ 👉: Kurs Java | Darmowy Kurs Programowania w Javie

Przykładowe aplikacje do napisania:

  • Prosty kalkulator matematyczny
  • Policz średnią wieku członków Twojej rodziny
  • Policz ile lat zostało Ci jeszcze do emerytury. 🙂
    Albo wersja bardziej optymistyczna – ile dni zostało do wakacji/weekendu/świąt itp.

Etap 8. Warsztat początkującego programisty

Dzień 9

Dzisiejszy dzień poświęcimy na dopracowanie tego co udało Ci się do tej pory osiągnąć.
To był naprawdę kawał niezłej roboty.
Możesz być z tego dumny!

Zadania na dziś:

  • Poczytaj trochę o dobrych praktykach programistycznych
  • O jakości kodu, o clean code
  • Oraz koniecznie
    – wypróbuj nową wiedzę w praktyce na swoim kodzie!

➡ ZOBACZ 👉: Komentarze i samodokumentujący się kod

Dzień 10

Twoja aplikacja rośnie.
Jest coraz więcej kodu – a co za tym idzie, coraz trudniej się w niej odnaleźć…

Dziś naucz się korzystać z funkcji
oraz wydziel ze swojego kodu powtarzające się fragmenty.

Dzień 11

Pętla for, while, do while

Pętla for, while, do while

Dzisiaj czas na pętle! ➿➿➿

Pętle są jednym z podstawowych narzędzi ⚒️ wykorzystywanych przez programistę.
Dzięki nim można wywołać określoną funkcjonalność podaną ilość razy, zamiast za każdym razem wywoływać ją ręcznie.

Przykładowo, zamiast wypisywać kolejno dni tygodnia w 7 instrukcjach, możemy wykorzystać do tego pętlę.
W przypadku tygodnia mamy tylko 7 instrukcji,
ale gdybyśmy chcieli wyświetlić dni z miesiąca, roku albo nawet kilku lat?

W takich sytuacjach pętle okazują się niezrównane!

Zadania na dziś:

  • Wyświetl na konsoli wszystkie liczby parzyste z przedziału od 0 do 1000!
  • Zaimplementuj grę FizzBuzz.

➡ ZOBACZ 👉: Pętla (for, while, do while, foreach) pętle | Kurs Java
➡ ZOBACZ 👉: Co to jest gra FizzBuzz i jak wykorzystać ją podczas rozmowy kwalifikacyjne

Dzień 12

Dziś ważny dzień.
Dziś poznamy struktury danych 👇

Zadanie na dziś:

  • Stwórz tablicę przechowującą dni tygodnia i wyświetl ją w pętli.

Dzień 13 🐈‍⬛

Dziś rozpocznij naukę
o podstawach programowania obiektowego: klasach, obiektach, dziedziczeniu itp.

Zadanie na dziś:

  • Stwórz klasę Person zawierającą podstawowe informacje o danej osobie jak wiek, imię i nazwisko
    – a następnie stwórz tablicę obiektów Person przechowującą informacje o wszystkich członkach Twojej rodziny! 😲😱

➡ ZOBACZ 👉: Programowanie obiektowe – Object Oriented Programming (OOP)

Dzień 14

OK To już drugi tydzień Twojej nauki programowania! ‼️‼️

WOW.
Naprawdę OGROMNE gratulacje! 🥳

Nauka programowania – checkpoint

Dziś odrobina odpoczynku,
żeby wszystko ułożyło się w głowie
i by złapać trochę świeżości przed jutrzejszymi wyzwaniami 🙂

Co powiesz na ciekawą książkę programistyczną? 👇

➡ ZOBACZ 👉: Programowanie – książki
➡ ZOBACZ 👉: Czy warto uczyć się programowania z książek?

Etap 9. Praktyka, praktyka i praktyka…

Dzień 15Jak zostać programistą? – zabawa

Praktyka, praktyka i jeszcze raz – praktyka!
Im więcej piszesz kodu, tym lepiej go zrozumiesz.

Tutaj nie ma drogi na skróty – trzeba pisać kod!

Nowe struktury danych do poznania:

Dzień 16

Dziś czas na obsługę wyjątków oraz debugowanie kodu.

Wiesz jak wykonywany jest kod Twojej aplikacji?

Trochę jak pociąg 🙂
Linijka, po linijce.
Metoda, po metodzie… 🚂🚂🚊🚝🚅
Step by step.

Dzięki pomocy debugera:

  • możesz dosłownie zatrzymać wykonywanie Twojego kodu w locie,
  • podejrzeć wartości poszczególnych zmiennych,
  • a następnie przejść jeden mały krok dalej np. do kolejnej iteracji pętli.

Jest to niezastąpione narzędzie podczas analizowania, co tak naprawdę robi kod aplikacji!
Nie zgadujesz, nie domyślasz się – tylko sprawdzasz!

Debugowanie aplikacji – to proces związany z naprawą błędów w kodzie,
bo najczęściej wykonujemy te kroki, gdy szukamy jakiegoś błędu.

➡ ZOBACZ 👉: Debugowanie kodu

Dzień 17

Dziś zacznij uczyć się o obsłudze plików i sprawdź jak twój wybrany język radzi sobie z obsługą komunikacji z użytkownikiem. 😀

Zadania na dziś:

  • Z poziomu Twojej aplikacji zapisz 10 liczb pseudolosowych do pliku na Twoim dysku.
  • Napisz drugi fragment kodu, który teraz odczyta zawartość tego pliku i posortuje te liczby!

Coś nie działa i nie wiesz co? 😲😱

Spokojnie, wiesz już przecież jak korzystać z debuggera 🙂

➡ ZOBACZ 👉: Sortowanie | Omówienie, implementacja algorytmów sortowania

Dzień 18

Praktyka! Pamiętasz? 🙂

Napisz kilka programów, które otwierają, edytują i zapisują pliki.
Możesz np. rozbudować pierwsze aplikacje o obsługę plików
– czyli informacje o Twoich członkach rodziny pobrać z pliku txt.

Dzień 19

Świat nie zawsze jest bezpieczny i kolorowy.
A użytkownicy naszych aplikacji – nie zawsze są przyjaźni…

Jeżeli piszesz kod i pobierasz informacje od użytkownika
– to ZAWSZE musisz je weryfikować!

Programowanie – hacker

Wyobraź sobie teraz taką sytuację:

  • chcesz pobrać z Twojego pliku 10 liczb całkowitych (jedno z naszych poprzednich zadań)
  • ale! Ku Twojemu zaskoczeniu!
    Zamiast tych liczb znajdziesz tam ciągi znaków!

Jak zachowa się Twoja aplikacja? 🤔

Takie zachowanie może być przypadkowe – ale niestety czasem też celowe.
Dlatego, jako programiści musimy przygotować nasze aplikacje na wszelkie ewentualności.

Zadania na dziś:

  • Poczytaj o walidacji danych.
  • Popraw kod w swoich aplikacjach o obsługę sytuacji wyjątkowych.

Dzień 20

Język programowania to nie tylko pętle i if’y!
Zazwyczaj do dyspozycji mamy naprawdę dużo różnych bibliotek, które ułatwiają naszą codzienną pracę.

Dlatego dzisiejszy dzień przeznacz na naukę
o bibliotekach i frameworkach dostępnych dla twojego języka.

➡ ZOBACZ 👉: Spring oraz Spring Boot – Czym są? Oraz dlaczego MUSIMY je znać? 👻

Etap 10. Czas na komercyjne programowanie

Dzień 21

Dziś kończymy 3 tydzień naszych zmagań.
Nie wiem, czy zauważyłeś
– ale powoli wkraczamy w rewiry typowego komercyjnego programowania!

Pierwsza praca jako programista już coraz bliżej. 😍

➡ ZOBACZ 👉: 12 błędów przez które nie dostałem pierwszej pracy
➡ ZOBACZ 👉: CV Programisty – Twojego CV nikt nie czyta! Sprawdzone sposoby na zhakowanie rekrutacji i CV!

Jeżeli czujesz, że już czas –
naucz się o bazach danych i jak twój język łączy się z bazami danych.

To dość wymagający temat, ale niezwykle ważny.
Ostatecznie trudno dziś spotkań aplikację, która nie wykorzystuje bazy danych – gdzieś przecież te informacje trzeba przechowywać 🙂

➡ ZOBACZ 👉: Bazy Danych – SQL

Dzień 22

Praktyka! 🙂

Napisz program, który łączy się z bazą danych i wykonuje podstawowe operacje CRUD (Create, Read, Update, Delete).
Możesz np. zrobić prosty notatnik.

Dzień 23

Naucz się o API i jak twój język może komunikować się z API (ang. Application Programming Interface).

Zadanie na dziś:

  • Napisz program, który komunikuje się z zewnętrznym API.
    Możesz np. wykorzystać publiczne API Narodowego Banku Polskiego do pobierania informacji o kursach walutowych.

Dzień 24

Kontynuujemy przygodę z API.
Tym razem napisz własną aplikację, która udostępnia API typu REST dla zewnętrznego świata.

➡ ZOBACZ 👉: Spring Boot i wstrzykiwanie zależności – szybkie wprowadzenie
➡ ZOBACZ 👉: Idempotent – idempotentny, czyli jaki?

Etap 11. Twoje portfolio i jakość kodu!

Dzień 25

Zacznij uczyć się o Git i kontrolowaniu wersji kodu.

➡ ZOBACZ 👉: Git tutorial | stash, rebase, commit, merge, checkout, push i clone

Dzień 26

Załóż konto na GitHubie, naucz się podstawowych komend Git i opublikuj swój pierwszy projekt na GitHubie.

➡ ZOBACZ 👉: GitHub tutorial | GitHub desktop, GitHub actions

Dzień 27

Przejrzyj swój kod i naucz się podstaw refaktoryzacji.

Czy możesz usprawnić swoje projekty?
Praktyka! Zastosuj to, czego nauczyłeś się o refaktoryzacji, do swoich projektów.

Dzień 28

Piramida testów

Piramida testów

Dziś rozpocznij naukę o testach i testowaniu Twojego kodu.

Tak, programiści też testują swój kod 🙂
Nie tylko testerzy się tym zajmują.

Pisanie testów i dbanie o jakość kodu to taki papierek lakmusowy, którym często sprawdzani są początkujący developerzy…

  • W pierwszym kroku zazwyczaj zajmujemy się tym, by nasz kod „zadziałał”.
  • Gdy jednak piszesz testy, to znaczy, że jesteś już na całkowicie innym poziomie! 🚀

Dlatego też możesz spodziewać się pytań właśnie o testy i zapewnienie jakości na Twojej rozmowie rekrutacyjnej.
Warto się do tego przygotować

➡ ZOBACZ 👉: Testowanie oprogramowania

➡ ZOBACZ 👉: CV Programisty – Twojego CV nikt nie czyta! Sprawdzone sposoby na zhakowanie rekrutacji i CV!

Dzień 29

Dziś dopisz więcej testów do Twojego kodu.
Jestem przekonany, że przy okazji uda Ci się jeszcze coś w nim poprawić 🙂

➡ ZOBACZ 👉: JUnit – Testy jednostkowe » tutorial dla bystrzaków (testy jednostkowe Java w JUnit 5)

Kod gotowy?

To koniecznie przejdź przez proces code review! 👇

➡ ZOBACZ 👉: Code Review – Nie wiesz jak pisać lepszy kod? Skup się na code review (przegląd kodu)!

Dzień 30

Uff! 😀

Dzisiejszy dzień spędź na przeglądaniu tego, czego się nauczyłeś, i na identyfikacji obszarów, które wymagają dalszej nauki.

To ostatni dzień naszego wyzwania.
Ale czy ostatni dzień Twojej przygody?

O nie – zdecydowanie NIE!
Tak naprawdę to dopiero początek! 🚀🚀

Każdy nowy dzień w IT
to niezapomniana przygoda i możliwość dalszego rozwoju.

Masz już podstawowe narzędzia, wiesz jak to wygląda w praktyce.
Za Tobą też kawał – naprawdę niezłej pracy.
OGROMNE gratulacje! 🔥

Jako kolejne kroki:

  • Utwórz plan na następny miesiąc nauki.
  • Dołącz do naszych społeczności i kontynuuj naukę w najlepszym towarzystwie! 🤝

Zapraszam 👇

To co tutaj widzisz to tylko mały wstęp do materiałów,
które przygotowaliśmy dla Ciebie w ramach
społeczności KierunekProgramista oraz programu – 100 dni programisty!

Zapraszam 👇
KierunekProgramista.pl/100dni


20+ BONUSOWYCH materiałów z programowania

e-book – „8 rzeczy, które musisz wiedzieć, żeby dostać pracę jako programista”,
e-book – „Java Cheat Sheet”,
checklista – „Pytania rekrutacyjne”
i wiele, wiele wiecej!

Jak zostać programistą

No comments
Share:

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *