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

[PL] Od zera do developera

[PL] Od zera do developera

347a1b64f3a6e38981bc99b53919e2b1?s=128

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. Czy studia to jedyna słuszna droga?

  3. Skąd się tu wziąłem…

  4. Skąd się tu wziąłem… • Studiowałem nanotechnologię na Wydziale Chemicznym

    Politechniki Łódzkiej
  5. Skąd się tu wziąłem… • Studiowałem nanotechnologię na Wydziale Chemicznym

    Politechniki Łódzkiej • Programuję od lutego 2012
  6. 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 ;))
  7. Skąd taka zmiana?

  8. Skąd taka zmiana? • Środowisko akademickie nie sprostało mojej wyidealizowanej

    wizji
  9. Skąd taka zmiana? • Środowisko akademickie nijak się miało do

    mojej wyidealizowanej wizji • Wypalenie
  10. Burnout?

  11. Burnout…

  12. Skąd taka zmiana? • Środowisko akademickie nijak się miało do

    mojej wyidealizowanej wizji • Wypalenie • Chęć spróbowania czegoś innego
  13. Co znałem z programowania?

  14. Co znałem z programowania? • Podstawy HTML, CSS

  15. Co znałem z programowania? • Podstawy HTML, CSS • Podstawy

    PHP
  16. Początki z programowaniem

  17. Początki z programowaniem • Python

  18. Początki z programowaniem • Python • http://learnpythonthehardway.org

  19. Początki z programowaniem

  20. Co dalej?

  21. Co dalej? • Django framework

  22. Co dalej? • Django framework • Sklep internetowy od zera

  23. Wskazówki na początek

  24. Wskazówki na początek • Czytaj wszystko co się da (blogi,

    newslettery)
  25. Wskazówki na początek • Czytaj wszystko co się da (blogi,

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

    newslettery) • Google i StackOverflow to Twoi przyjaciele • Znajdź mentora?
  27. 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)
  28. 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
  29. 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
  30. 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
  31. Początki profesjonalnego kodowania

  32. Początki profesjonalnego kodowania • Koniec czerwca / początek lipca 2012

  33. Początki profesjonalnego kodowania • Koniec czerwca / początek lipca 2012

    • Rubiego zacząłem się uczyć pod koniec maja, Railsów w czerwcu ;)
  34. 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ć?
  35. Jak zacząć programować profesjonalnie?

  36. Jak zacząć programować profesjonalnie? • Problem: brak backgroundu w IT,

    mała wiarygodność?
  37. Jak zacząć programować profesjonalnie? • Problem: brak backgroundu w IT,

    mała wiarygodność? • Znajomości (np. z LRUGa ;))
  38. 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ą)
  39. 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
  40. Jak wyglądało to u mnie?

  41. Jak wyglądało to u mnie? • Mały, samodzielny projekt

  42. Jak wyglądało to u mnie? • Mały, samodzielny projekt •

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

    Nastawienie przede wszystkim na rozwój • Lol, estymacje na początku
  44. 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
  45. 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 ;)
  46. Jak wyglądało to u mnie?

  47. Jak wyglądało to u mnie?

  48. Jak wyglądało to u mnie? • Ale…

  49. Jak wyglądało to u mnie? • Ale… • Apkę trzeba

    zdeployować na VPSa
  50. Znajomość Linuxa do tej pory

  51. Znajomość Linuxa do tej pory • cd

  52. Znajomość Linuxa do tej pory • cd • mkdir

  53. Znajomość Linuxa do tej pory • cd • mkdir •

    mv
  54. Znajomość Linuxa do tej pory • cd • mkdir •

    mv • cp
  55. Znajomość Linuxa do tej pory • cd • mkdir •

    mv • cp • rm
  56. Znajomość Linuxa do tej pory • cd • mkdir •

    mv • cp • rm • sudo apt-get install
  57. Devops skillz?

  58. Devops skillz?

  59. Devops skillz

  60. Devops skillz • Udało się postawić serwer i zdeployować apkę

    po… 16h
  61. Devops skillz

  62. Cenne wnioski

  63. Cenne wnioski • Nie można bać się wyzwań

  64. Cenne wnioski • Nie można bać się wyzwań • Rób

    wszystko co możesz, żeby nauczyć się jak najwięcej
  65. 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 ;)
  66. Co dalej?

  67. Co dalej? • Czytaj jak najwięcej! (książki, blogi, newslettery)

  68. Co dalej? • Czytaj jak najwięcej! (książki, blogi, newslettery) •

    Konfrontuj swoją wiedzę (pair-programming, code reviews, exercism.io)
  69. 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ć
  70. 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)
  71. 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
  72. 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
  73. 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
  74. 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.
  75. 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
  76. 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/ ;)
  77. Studia vs samodzielna nauka

  78. Studia vs samodzielna nauka • Studia:

  79. Studia vs samodzielna nauka • Studia: • (+) Lepszy background

    techniczny (podstawy)
  80. Studia vs samodzielna nauka • Studia: • (+) Lepszy background

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

    techniczny (podstawy) • (+) Znajomość zagadnień do których ciężko samemu usiąść • (+) Łatwiejszy start w profesjonalnym programowaniu
  82. 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?)
  83. 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
  84. Studia vs samodzielna nauka • Samodzielna nauka:

  85. Studia vs samodzielna nauka • Samodzielna nauka: • (+) Ogromna

    efektywność nauki
  86. Studia vs samodzielna nauka • Samodzielna nauka: • (+) Ogromna

    efektywność nauki • (+) Można skupić się na tym, co Cię najbardziej interesuje
  87. 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
  88. 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)
  89. 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
  90. 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
  91. 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ść)
  92. 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?
  93. Dzięki i powodzenia ;)