Artykuł powstał przy współpracy z Coderspro

start

Często dostaję zapytania od młodszych kolegów: jaka jest dobra książka do nauki C#? Co byś polecił na start? Znasz może jakąś książkę o programowaniu krok po kroku? Postanowiłem zatem przygotować wpis, który, mam nadzieję, pomoże nowicjuszom wejść w deweloperski świat, nie czując się przytłoczonym mnogością możliwości.

No więc jaką książkę poleciłbym na start? Jest to dla mnie o tyle problematyczne, gdyż sam nie zaczynałem nauki programowania od książek. Ba, przez długi czas nawet ich unikałem, będąc w przekonaniu, że internetowe tutoriale w zupełności wystarczą. Pytanie, czy byłem w błędzie? I tak, i nie. Ale po kolei.

Poziom pierwszy: czas zacząć

Zaczynasz od zera. Czujesz, że chcesz się nauczyć programować, ale nie wiesz jak zacząć. Postanawiasz sięgnąć po książkę, najlepiej taką co ma 900+ stron… błąd! Tak, dobrze przeczytałeś. Będąc totalnym nowicjuszem, w ten sposób pogrzebałeś swoje chęci do nauki programowania. Dlaczego? Dlatego, że po przeczytani pierwszych 50 stron (o ile dotrwasz) stwierdzisz, że to nie dla Ciebie. Książki techniczne mają to do siebie, że jeśli uczysz się wszystkiego od początku, to w pewnym momencie na trafisz na ścianę, której nie przeskoczysz. Po którymś z rzędu przeczytaniu tego samego tekstu oraz bezskutecznej kilkugodzinnej walce z kodem motywacja po prostu wyparuje. Jak więc zacząć? Odpowiedź brzmi: ucz się od ludzi 🙂

Wideo-tutoriale

Dlaczego uważam, że lepiej zacząć od filmików? Po pierwsze, jeżeli jest to wprowadzenie, zostaniesz poprowadzony za rączkę i zobaczysz jak zainstalować potrzebne narzędzia, skonfigurować środowisko itp. Możesz powiedzieć, że w książce też byś to znalazł. Owszem, jednak instrukcja dotyczyłaby wersji X.2, a instalowałbyś wersję X.9, gdzie część rzeczy robi się inaczej. Po drugie, filmiki zachowują ciągłość. Tutaj szansa, że trafisz na punkt bez wyjścia, jest minimalna, wręcz niemożliwa. Po trzecie, nie będziesz jedynym, który będzie dany materiał oglądał, przez co rozwiązania na tzw. common problems znajdziesz, chociażby w komentarzach pod filmikiem.

No dobra, ale przydałyby się jakieś konkretne informacje. Jeżeli chcesz programować w C#, polecam zacząć od obejrzenia tego kursu. Zasadniczo MVA to dobre miejsce, żeby zacząć się uczyć technologii .NETowych. Kursy są prowadzone w sposób bardzo przystępny, są podzielone na poziomy 100, 200 i 300, z czego na tym etapie nauki 100 jest w sam raz.

Kursy profesjonalne

To intensywna droga, jednak niesie za sobą wartość. Uczysz się od programistów, którzy na co dzień kodują. A co za tym idzie — unikasz ślepych uliczek — nie marnujesz czasu. Dziś, gdy popyt na informatyków jest duży, ukończenie serii takich kursów, trwa około 8 tygodni i już możesz pracować jako Junior Developer. Oczywiście, zostanie Ci jeszcze sporo do nauczenia, jednak tak, jak na kursie, tak i w pierwszej pracy, będziesz pod okiem mentora, który odpowie na pytania i wskaże Ci drogę, jeżeli będzie taka potrzeba. A poza tym, Coderspro, z którymi ostatnio współpracuję, gwarantują Ci ten staż, więc polecam ich sprawdzić.

Poziom drugi: czas na pisanie

Jeżeli już załapałeś podstawy i wydaje Ci się, że wiesz, o co w tym chodzi, możesz (czy raczej: powinieneś) zrobić parę kroków do przodu. Jest to dobry moment, by podjąć się jakiejś tematycznej lektury. Zastanów się, jaką ścieżką chciałbyś pójść (aplikacje mobilne, webowe, desktopowe itp.) i zacznij działać w tym kierunku. W dalszym ciągu zalecałbym tutoriale online, z podniesieniem poziomu zaawansowania (np. 200 na MVA).

Gdy już zaczniesz tworzyć swoją pierwszą aplikację, na pewno napotkasz wiele miejsc, gdzie będziesz chciał znaleźć sposób na rozwiązanie konkretnego problemu. Zaczniesz przeszukiwać sieć i oprócz StackOverflow (które w większości przypadków rozwikła twoje wątpliwości) natrafisz na wiele stron i blogów technicznych. Zalecałbym kolekcjonowanie tych miejsc, które będziesz odwiedzał najczęściej. Sam posiadam specjalny folder w zakładkach, gdzie obecnie znajduje się kilkanaście mniej lub bardziej popularnych blogów. I nie chodzi tylko o to, aby szukać tam rozwiązań, ale o to, by od czasu do czasu spojrzeć tam i przeczytać coś tak po prostu. Jest to początek wyrabiania sobie nawyku ciągłego samokształcenia, który w tym zawodzie jest niezwykle ważny.

Jeszcze jedna rada. Bardzo krótka. Pisz. Po prostu pisz dużo kodu, próbuj przekształcać pomysły na działające systemy. I choć nic z tego, co stworzysz prawdopodobnie nie przerodzi się w milionowy startup, to praktyka zostanie i nabierzesz dzięki temu wprawy.

Materiały, jakie poleciłbym na tym etapie: jeżeli interesujesz się webówką, to książka C# 6.0 i MVC 5 jest całkiem spoko. No i tak jak wcześniej wspomniałem, Microsoft Virtual Academy poziom 200 😉

Poziom trzeci: czas na praktyki

professional

Kolejny etap to już dążenie do osiągnięcia poziomu wystarczającego na rozpoczęcie pracy w zawodzie. Musisz pamiętać, że samo nauczenie się języka programowania nie zrobi z Ciebie programisty. Liczy się także (a może: przede wszystkim?) sposób, w jaki podchodzisz do rozwiązywania problemów. Styl, w jakim piszesz kod. Sposób,  w jaki posługujesz się narzędziami oraz to, czy potrafisz z nich w pełni korzystać. Dlatego w tym miejscu polecam wziąć do ręki takie książki jak Czysty Kod oraz Pragmatyczny Programista. Gdyby programowanie było religią, to Czysty Kod byłby Biblią. Z kolei Pragmatyczny programista pokazuje, w jaki sposób radzić sobie w określonych sytuacjach.

Jeśli chodzi o kwestie techniczne, warto zapoznać się z podstawowymi wzorcami projektowymi i architektonicznymi. Ponadto należałoby także zacząć pisać testy. Znajomość tych aspektów jest znacząca, gdyż pokrywa się z tym, co będziesz robił przyszłości w pracy. Jeżeli już jesteśmy przy tym temacie: jest to idealny moment na znalezienie praktyk. Dla mnie osobiście praktyki były jednym z najważniejszych momentów w karierze zawodowej. Po pierwsze, były weryfikacją tego, czego się do tamtej pory nauczyłem. Po drugie, dały mi spojrzenie na to, jak funkcjonuje świat IT od środka. No i po trzecie, był to sprawdzian, czy potrafię pracować w zespole. Dlatego nie podchodź do tego tematu na zasadzie „byle by odbębnić”, tylko staraj się wycisnąć z praktyk tyle, ile się da.

Na tym etapie MVA może okazać się niewystarczające. Jest to dobry moment, aby zacząć korzystać z takich portali jak PluralSight. W jednym z moich poprzednich artykułów opisałem, jak można zdobyć 3-miesięczna licencję na dostęp do materiałów za free 😉

Share