[PL] Od zera do developera

[PL] Od zera do developera

347a1b64f3a6e38981bc99b53919e2b1?s=128

karol.galanciak

June 22, 2016
Tweet

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 ;)