
Jak zostać programistą? Jak nauczyć się programowania? Oczywiście istnieje kilka dróg do osiągnięcia tego celu. Oto one:
Studia informatyczne
To jedna z najbardziej standardowych ścieżek do kariery programisty/programistki. Nadal wiele firm, zwłaszcza większych, zagranicznych firm z USA, Niemiec czy Skandynawii wymaga od kandydatów ukończonych studiów wyższych. Niewątpliwą zaleta studiów informatycznych jest wszechstronny rozwój i możliwość zdobycia wiedzy z różnych dziedzin. Studia uczą też naukowego podejścia do studiowanej dziedziny, w tym przypadku informatyki. Absolwent studiów informatycznych z pewnością będzie mieć szeroką, naukową wiedzę o informatyce i innych pokrewnych dziedzinach. Zaletą studiów jest też możliwość nawiązywania kontaktów, między innymi z firmami, które współpracują z uczelnią. Również kontakty ze studentami mogą być w przyszłości źródłem owocnej współpracy. Studia są zdecydowanie dobrym wyborem dla osób, które planują naukową ścieżkę kariery.
Minusem studiów informatycznych może być długi proces zdobywania wiedzy. Studia trwają kilka lat i wiele osób uważa, że czas ten można wykorzystać w lepszy sposób. Przeciwnicy studiów informatycznych, jako ścieżki do zostania programistą za największą ich wadę uważają brak korelacji z rynkiem informatycznym. Informatyka rozwija się w niezwykle szybkim tempie, uczelnie nie zawsze za nim nadążają. Czasem wiedza przekazywana studentom nie jest uaktualniana i dostosowana do dynamiki rozwoju tej dziedziny, a studentom przekazywane są przestarzałe technologie. Oczywiście wszystko zależy od uczelni i wykładowców. Pytanie, czy studia dobrze przygotowują do zawodu programisty? Tutaj zdania są podzielone. Z pewnością bardzo ważna jest również samodzielna praca. Warto chłonąć wiedzę teoretyczną na studiach i samemu rozwijać się praktycznie, np. poprzez samorozwój czy praktyki zawodowe.
Szkoły programowania
Na rynku istnieje kilka szkół programowania, które oferują intensywne kursy różnych języków programowania, tzw. bootcampy informatyczne. Nauka na nich jest zdecydowanie krótsza, bardziej intensywna i bardziej praktyczna niż na studiach. Kursy te koncentrują się po prostu na nauce tworzenia kodu. Szkoły programowania chwalą się, że zdecydowana większość ich absolwentów znajduje pracę z IT. Program kształcenia bootcampów jest lepiej dostosowany do realnych potrzeb na rynku pracy. Natomiast kursant zdobywa na nich wiedzę z wąskiej specjalizacji, co może być zarówno plusem jak i minusem, w zależności od oczekiwań danej osoby. Na pewno szkoły programowania są zbawieniem dla wciąż rosnących potrzeb rynku, którym studia informatyczne nie są w stanie sprostać, ze względu na małą ilość i długi czas kształcenia studentów.
Minusem bootcampów może być słabe przygotowanie teoretyczne. Może okazać się, że sama wiedza praktyczna bez teoretycznej bazy jest niewystarczająca. Niektórzy poddają w wątpliwość jakość wiedzy zdobytej w tak krótkim czasie, czasami na kursach on-line. Zapewne jest to jednak kwestia indywidualnego zaangażowania. Szkoły programowania są dobrym rozwiązaniem dla osób, które chcą zmienić zawód. Pytanie, czy tak krótki czas nauki jest wystarczający, żeby się przebranżowić. Z pewnością po skończeniu bootcampu warto pomyśleć o stażu w firmie.jak nauczyć się programowania
Samodzielna nauka
Do samodzielnej nauki niezbędne będą materiały pomocnicze: książki, blogi specjalistyczne, tutoriale w internecie, fora (np. stackoverflow.com). Warto tworzyć swoje projekty w technologii, której chcemy się nauczyć, np. aplikację, z której będziemy potem korzystać. Bardzo rozwojowe jest branie udziału w pracy nad kodem Open Source. Dzięki wspieraniu projektów Open Source można nabrać doświadczenia, nauczyć się nowych rzeczy i czerpać wiedzę od bardziej doświadczonych. Dobrym pomysłem jest branie udziału w konferencjach informatycznych.
Minusem samodzielnej nauki jest to, że nie wszystkim będzie pasować ta metoda. Trzeba być typem samouka i nie potrzebować przewodnika w procesie nauki. Oczywiście niezbędna jest duża samodyscyplina oraz zaangażowanie i determinacja, żeby osiągnąć zamierzony cel.