Upgrade to Pro — share decks privately, control downloads, hide ads and more …

[PL] Od zera do developera

[PL] Od zera do developera

karol.galanciak

June 22, 2016
Tweet

More Decks by karol.galanciak

Other Decks in Programming

Transcript

  1. Od zera do developera czyli jak zostać programistą bez studiowania

    informatyki Karol Galanciak Full Stack developer at Twitter: @Azdaroth Github: Azdaroth https://karolgalanciak.com
  2. Skąd się tu wziąłem… • Studiowałem nanotechnologię na Wydziale Chemicznym

    Politechniki Łódzkiej • Programuję od lutego 2012
  3. Skąd się tu wziąłem… • Studiowałem nanotechnologię na Wydziale Chemicznym

    Politechniki Łódzkiej • Programuję od lutego 2012 • Profesjonalnie od czerwca / lipca 2012 (koniec sesji letniej ;))
  4. Skąd taka zmiana? • Środowisko akademickie nijak się miało do

    mojej wyidealizowanej wizji • Wypalenie • Chęć spróbowania czegoś innego
  5. Wskazówki na początek • Czytaj wszystko co się da (blogi,

    newslettery) • Google i StackOverflow to Twoi przyjaciele
  6. Wskazówki na początek • Czytaj wszystko co się da (blogi,

    newslettery) • Google i StackOverflow to Twoi przyjaciele • Znajdź mentora?
  7. Wskazówki na początek • Czytaj wszystko co się da o

    języku / frameworku / ekosystemie (blogi, newslettery, książki) • Google i StackOverflow to Twoi przyjaciele • Znajdź mentora? • Forum (np. https://forum.rubyonrails.pl)
  8. Wskazówki na początek • Czytaj wszystko co się da o

    języku / frameworku / ekosystemie (blogi, newslettery, książki) • Google i StackOverflow to Twoi przyjaciele • Znajdź mentora? • Forum (np. https://forum.rubyonrails.pl) • Czytaj kod pisany przez innych developerów
  9. Wskazówki na początek • Czytaj wszystko co się da o

    języku / frameworku / ekosystemie (blogi, newslettery, książki) • Google i StackOverflow to Twoi przyjaciele • Znajdź mentora? • Forum (np. https://forum.rubyonrails.pl) • Czytaj kod pisany przez innych developerów • Przyzwyczaj się, że jest masa rzeczy, których nie wiesz i wszystko nowe jest wyzwaniem
  10. Wskazówki na początek • Czytaj wszystko co się da o

    języku / frameworku / ekosystemie (blogi, newslettery, książki) • Google i StackOverflow to Twoi przyjaciele • Znajdź mentora? • Forum (np. https://forum.rubyonrails.pl) • Czytaj kod pisany przez innych developerów • Przyzwyczaj się, że jest masa rzeczy, których nie wiesz i wszystko nowe jest wyzwaniem • Jak najszybciej zajmij się kodowaniem profesjonalnie
  11. Początki profesjonalnego kodowania • Koniec czerwca / początek lipca 2012

    • Rubiego zacząłem się uczyć pod koniec maja, Railsów w czerwcu ;)
  12. Początki profesjonalnego kodowania • Koniec czerwca / początek lipca 2012

    • Rubiego zacząłem się uczyć pod koniec maja, Railsów w czerwcu ;) • Jak to się mogło udać?
  13. Jak zacząć programować profesjonalnie? • Problem: brak backgroundu w IT,

    mała wiarygodność? • Znajomości (np. z LRUGa ;))
  14. Jak zacząć programować profesjonalnie? • Problem: brak backgroundu w IT,

    mała wiarygodność? • Znajomości (np. z LRUGa ;)) • Na początku pieniądze nie mają żadnego znaczenia (staż za free też jest dobrą opcją)
  15. Jak zacząć programować profesjonalnie? • Problem: brak backgroundu w IT,

    mała wiarygodność? • Znajomości (np. z LRUGa ;)) • Na początku pieniądze nie mają żadnego znaczenia (staż za free też jest dobrą opcją) • Priorytet: rozwój, wyrobienie sobie marki
  16. Jak wyglądało to u mnie? • Mały, samodzielny projekt •

    Nastawienie przede wszystkim na rozwój
  17. Jak wyglądało to u mnie? • Mały, samodzielny projekt •

    Nastawienie przede wszystkim na rozwój • Lol, estymacje na początku
  18. Jak wyglądało to u mnie? • Mały, samodzielny projekt •

    Nastawienie przede wszystkim na rozwój • Lol, estymacje na początku • Więcej czytania tutoriali i czytania StackOverflow niż kodowania
  19. Jak wyglądało to u mnie? • Mały, samodzielny projekt •

    Nastawienie przede wszystkim na rozwój • Lol, estymacje na początku • Więcej czytania tutoriali i czytania StackOverflow niż kodowania • Po 2 tygodniach udało się skończyć pierwszy projekt ;)
  20. Znajomość Linuxa do tej pory • cd • mkdir •

    mv • cp • rm • sudo apt-get install
  21. Cenne wnioski • Nie można bać się wyzwań • Rób

    wszystko co możesz, żeby nauczyć się jak najwięcej
  22. Cenne wnioski • Nie można bać się wyzwań • Rób

    wszystko co możesz, żeby nauczyć się jak najwięcej • Nie przejmuj się, jeśli wydaje Ci się, że się nie nadajesz do programowania, miałem tak długo ;)
  23. Co dalej? • Czytaj jak najwięcej! (książki, blogi, newslettery) •

    Konfrontuj swoją wiedzę (pair-programming, code reviews, exercism.io)
  24. Co dalej? • Czytaj jak najwięcej! (książki, blogi, newslettery) •

    Konfrontuj swoją wiedzę (pair-programming, code reviews, exercism.io) • Czytaj kod opensourcowych projektów, spróbuj się w któryś zaangażować
  25. Co dalej? • Czytaj jak najwięcej! (książki, blogi, newslettery) •

    Konfrontuj swoją wiedzę (pair-programming, code reviews, exercism.io) • Czytaj kod opensourcowych projektów, spróbuj się w któryś zaangażować • Załóż bloga (najlepszy sposób na wyrobienie sobie marki)
  26. Co dalej? • Czytaj jak najwięcej! (książki, blogi, newslettery) •

    Konfrontuj swoją wiedzę (pair-programming, code reviews, exercism.io) • Czytaj kod opensourcowych projektów, spróbuj się w któryś zaangażować • Załóż bloga (najlepszy sposób na wyrobienie sobie marki) • Nie nastawiaj się na dużo $$$, na to przyjdzie pora później
  27. Co dalej? • Czytaj jak najwięcej! (książki, blogi, newslettery) •

    Konfrontuj swoją wiedzę (pair-programming, code reviews, exercism.io) • Czytaj kod opensourcowych projektów, spróbuj się w któryś zaangażować • Załóż bloga (najlepszy sposób na wyrobienie sobie marki) • Nie nastawiaj się na dużo $$$, na to przyjdzie pora później • Priorytet: rozwój
  28. Co dalej? • Czytaj jak najwięcej! (książki, blogi, newslettery) •

    Konfrontuj swoją wiedzę (pair-programming, code reviews, exercism.io) • Czytaj kod opensourcowych projektów, spróbuj się w któryś zaangażować • Załóż bloga (najlepszy sposób na wyrobienie sobie marki) • Nie nastawiaj się na dużo $$$, na to przyjdzie pora później • Priorytet: rozwój • Ucz się innych języków: JavaScript, C, Elixir
  29. Co dalej? • Czytaj jak najwięcej! (książki, blogi, newslettery) •

    Konfrontuj swoją wiedzę (pair-programming, code reviews, exercism.io) • Czytaj kod opensourcowych projektów, spróbuj się w któryś zaangażować • Załóż bloga (najlepszy sposób na wyrobienie sobie marki) • Nie nastawiaj się na dużo $$$, na to przyjdzie pora później • Priorytet: rozwój • Ucz się innych języków: JavaScript, C, Elixir • Nadrób zaległości z podstaw CS: algorytmy, struktury danych etc.
  30. Co dalej? • Czytaj jak najwięcej! (książki, blogi, newslettery) •

    Konfrontuj swoją wiedzę (pair-programming, code reviews, exercism.io) • Czytaj kod opensourcowych projektów, spróbuj się w któryś zaangażować • Załóż bloga (najlepszy sposób na wyrobienie sobie marki) • Nie nastawiaj się na dużo $$$, na to przyjdzie pora później • Priorytet: rozwój • Ucz się innych języków: JavaScript, C, Elixir • Nadrób zaległości z podstaw CS: algorytmy, struktury danych etc. • Strzeż się Impostor Syndrome
  31. Co dalej? • Czytaj jak najwięcej! (książki, blogi, newslettery) •

    Konfrontuj swoją wiedzę (pair-programming, code reviews, exercism.io) • Czytaj kod opensourcowych projektów, spróbuj się w któryś zaangażować • Załóż bloga (najlepszy sposób na wyrobienie sobie marki) • Nie nastawiaj się na dużo $$$, na to przyjdzie pora później • Priorytet: rozwój • Ucz się innych języków: JavaScript, C, Elixir • Nadrób zaległości z podstaw CS: algorytmy, struktury danych etc. • Przeczytaj: https://karolgalanciak.com/blog/2015/07/12/embarking-on- programming-journey/ ;)
  32. Studia vs samodzielna nauka • Studia: • (+) Lepszy background

    techniczny (podstawy) • (+) Znajomość zagadnień do których ciężko samemu usiąść
  33. Studia vs samodzielna nauka • Studia: • (+) Lepszy background

    techniczny (podstawy) • (+) Znajomość zagadnień do których ciężko samemu usiąść • (+) Łatwiejszy start w profesjonalnym programowaniu
  34. Studia vs samodzielna nauka • Studia: • (+) Lepszy background

    techniczny (podstawy) • (+) Znajomość zagadnień do których ciężko samemu usiąść • (+) Łatwiejszy start w profesjonalnym programowaniu • (-) Uczenie "od końca" (czy pisząc API do Railsowej apki potrzebujesz wiedzieć jak działa kompilator?)
  35. Studia vs samodzielna nauka • Studia: • (+) Lepszy background

    techniczny (podstawy) • (+) Znajomość zagadnień do których ciężko samemu usiąść • (+) Łatwiejszy start w profesjonalnym programowaniu • (-) Uczenie "od końca" (czy pisząc API do Railsowej apki potrzebujesz wiedzieć jak działa kompilator?) • (-) 3,5 roku studiowania - jeżeli nie pracujesz w trakcie studiów to tracisz dużo czasu
  36. Studia vs samodzielna nauka • Samodzielna nauka: • (+) Ogromna

    efektywność nauki • (+) Można skupić się na tym, co Cię najbardziej interesuje
  37. Studia vs samodzielna nauka • Samodzielna nauka: • (+) Ogromna

    efektywność nauki • (+) Można skupić się na tym, co Cię najbardziej interesuje • (+) Dużo szybsza możliwość rozwoju
  38. Studia vs samodzielna nauka • Samodzielna nauka: • (+) Ogromna

    efektywność nauki • (+) Można skupić się na tym, co Cię najbardziej interesuje • (+) Dużo szybsza możliwość rozwoju • (+) Przyzwyczaja do wychodzenia z comfort-zone (wszystko jest wyzwaniem przed długi czas)
  39. Studia vs samodzielna nauka • Samodzielna nauka: • (+) Ogromna

    efektywność nauki • (+) Można skupić się na tym, co Cię najbardziej interesuje • (+) Dużo szybsza możliwość rozwoju • (+) Przyzwyczaja do wychodzenia z comfort-zone (wszystko jest wyzwaniem przed długi czas) • (-) Wymaga dyscypliny
  40. Studia vs samodzielna nauka • Samodzielna nauka: • (+) Ogromna

    efektywność nauki • (+) Można skupić się na tym, co Cię najbardziej interesuje • (+) Dużo szybsza możliwość rozwoju • (+) Przyzwyczaja do wychodzenia z comfort-zone (wszystko jest wyzwaniem przed długi czas) • (-) Wymaga dyscypliny • (-) Trzeba nadrobić kiedyś brak podstaw
  41. Studia vs samodzielna nauka • Samodzielna nauka: • (+) Ogromna

    efektywność nauki • (+) Można skupić się na tym, co Cię najbardziej interesuje • (+) Dużo szybsza możliwość rozwoju • (+) Przyzwyczaja do wychodzenia z comfort-zone (wszystko jest wyzwaniem przed długi czas) • (-) Wymaga dyscypliny • (-) Trzeba nadrobić kiedyś brak podstaw • (-) Trudniejszy start (mniejsza wiarygodność)
  42. Studia vs samodzielna nauka • Samodzielna nauka: • (+) Ogromna

    efektywność nauki • (+) Można skupić się na tym, co Cię najbardziej interesuje • (+) Dużo szybsza możliwość rozwoju • (+) Przyzwyczaja do wychodzenia z comfort-zone (wszystko jest wyzwaniem przed długi czas) • (-) Wymaga dyscypliny • (-) Trzeba nadrobić kiedyś brak podstaw • (-) Trudniejszy start (mniejsza wiarygodność) • (-) Impostor Syndrome?