Czy przemknęło Ci kiedykolwiek przez myśl aby pracować w IT? Śniło Ci się rozwijanie ekstremalnie popularnych aplikacji z milionem pobrań na liczniku? Rozwiązywanie zawiłych problemów przy wtórze fajerwerków i muzyki Mozarta? Pisanie przezabawnych artykułów, które będą miały więcej share’ów niż kot grający na fortepianie? Stop, stop. Chyba mnie trochę poniosło...
A jednak, tak właśnie pracuję! A skoro mi się udało, Tobie również może. Dlatego z nieukrywanym zażenowaniem opowiem nieco o swoich perypetiach, okraszając je przydatnymi materiałami do nauki. Pewnie masz już takich historii po uszy, ale będą obrazki. Nie przejmuj się także, jeżeli nie umiesz jeszcze zbyt wiele, bo aby zacząć w IT wystarczy jeden mały…
KAPRYS
Wiem, to frazes, ale frazes prawdziwy.
Moją pierwszą przygodą z programowaniem był kurs języka C++ realizowany w ramach programu studiów. Co prawda byłem studentem fizyki, nie informatyki, lecz w naszym kraju stopień powiązania przedmiotów z kierunkiem bywa różny. Nie mając uprzednio styczności z programowaniem (świecąco-mrugającej strony w HTML-u nie wliczam do rozrachunku) udało mi się zdać przedmiot bez większych obrażeń. Pomyślałem wtedy: “Cóż, nie było tak źle. Ale przecież nie będę do końca życia pisał kodu!”. Widzicie, miałem ambicje.
Będąc na studiach drugiego stopnia (kiedy zacząłem zdawać sobie sprawę jak bardzo nieprzydatną społeczeństwu osobą jest magister inżynier fizyk) zdecydowałem, w przypływie ciekawości, zapisać się na pierwszy rok informatyki. Już od samego początku zapoznano nas z narzędziami do walki — poznawaliśmy chociażby podstawy programowania w Pythonie. Nagle okazało się, że kodzić można łatwo i przyjemnie. I aby zacząć programować, trzeba po prostu zacząć pisać kod.
Nie przejmuj się na razie wyborem języka, spróbuj i sprawdź, czy to w ogóle Ci odpowiada. Wystarczy ten 15-minutowy kurs Ruby. Może kilka tutoriali z Codecademy albo Codeschool na dokładkę. Dla tradycjonalistów natomiast książka o C++. Było fajnie? To teraz —
DAJ SIĘ KARNĄĆ
Przykro mi tak szybko psuć zabawę, ale dotarliśmy do najgorszego etapu. I to nie dlatego, że już nachodzi mnie już uczucie żałosności własnego pisarstwa, ale dlatego, że najwyższy czas na dokonanie wyborów i zaangażowanie się w naukę. Bo teraz wiesz już co nieco. O uszy obiła Ci się nazwa stack overflow, nauka git’a to pierwsza rzecz jaką planujesz w wolny wieczór, ktoś na pewno doradzał zainstalowanie linux’a, a niekończąca się dyskusja o wyższości jednego języka programowania nad innymi sprawia, że czujesz się jak ten bardzo znany pies.
Niestety, ja również utknąłem w tej bagnistej fazie. Uczyłem się stale, trochę tego i owego, zainstalowałem Ubuntu, stworzyłem profil na Github’ie i wciąż nie wiedziałem, który język jest do czego i po co. Poradniki dla początkujących wydawały się zbyt początkujące. Początek miałem już za sobą. Więc jak, do licha, ruszyć dalej?
Z pomocą przyszedł przypadek. Przyjaciel zaczął uczyć się Ruby on Rails i polecił mi świetny kurs. To było to. Humor Pana Hartl’a tak przypadł mi do gustu, że przerobiłem kurs dwukrotnie. I podążając za jego radą rozpocząłem własny projekt.
Czasami tyle wystarczy. Dlatego warto ciągnąć za języki, pytać o radę przyjaciół czy forumowych samarytan. Oczywiście, materiału w sieci jest ogrom: na udacity każdy napewno znajdzie coś dla siebie, djangoproject linkuję dla tych, co wolą węże od klejnotów. Wszystko sprowadza się jednak do jednego: zacznij swój własny projekt.
PRAKTYKA CZYNI RZEMIEŚLNIKA
Nie przesadzę, stwierdziwszy, że 90% developerów rozwijało swoje umiejętności głównie poprzez pracę nad indywidualnymi projektami. Niektórzy implementowali własne pomysły, inni ulepszali istniejące rozwiązania, jeszcze inni próbowali odtworzyć gotowe produkty. Dla każdego coś miłego, ważne, aby lekcja została odrobiona.
Wszystko to brzmi pięknie, zakładając, że masz niewyczerpane pokłady motywacji i wystarczająco nieustępliwości by wciąż szukać nowych rozwiązań napotkanego problemu, który na pewno jest banalny, tylko jak go, u diaska, rozwiązać?
Mam dobrą i złą nowinę.
Okej, kłamałem, mam tylko złą. Każdy musi przejść przez to piekło sam (tak też mnie to denerwuje). Ale taka sytuacja.