Chcę zostać programistką/programistą – jak się przekwalifikować?

Jak się przekwalifikować?

Czy, aby na pewno widzisz siebie siedzącego w nocy nad kodem strony (czyli tekstem jakim tłumaczymy komputerowi co ma zrobić)? 

Jeśli nie wiesz jeszcze to pamiętaj, że programowanie stron internetowych to niekończące się uczenie i „główkowanie” (nie zawsze będziesz wiedział jak coś zrobić). Zastanów się czy na pewno dasz radę spędzić przy tym dłuższy czas. Jeśli chcesz mieć tylko swoją stronę internetową i nie chcesz się uczyć programować to możesz skorzystać z gotowych rozwiązań. Pozwolą Ci one bez wiedzy programistycznej prowadzić własną stronę, np.: Blogger, WordPress.

Przekwalifikowanie wymaga nauczenia się nowych umiejętności, ale niezwykle ważne jest ich bieżące ćwiczenie. Czytając wpisy na blogu dowiesz się „jak”, ale tylko ćwicząc swoją wiedzę we własnych projektach nauczysz się programować strony internetowe. Nie muszą to być projekty dla kogoś, ważne żebyś nie kończył naukę na czytaniu! 90 proc. sukcesu… to ćwiczenia. 10 proc. to wiedzieć jak (witamy w świecie, gdzie wszystko wie wyszukiwarka Google ;-)). Nie jeden doświadczony programista zaczyna rozwiązywanie problemu od wyszukania w Google.

Czy moja płeć ma znaczenie?

Nie. Jeśli coś było trudne dla Ciebie to znaczy, że forma przekazania wiedzy nie była odpowiednia. Jeśli uważasz, że Kobiety nie potrafią programować to nigdy pewnie nie słyszałaś/słyszałeś o Pani Grace Hopper. Jeśli uważasz, że Mężczyźni nie potrafią programować to nigdy pewnie nie słyszałaś/słyszałeś o Panu Linusie Torvaldsie.

Czy jestem za stara/stary na naukę programowania?

Programista to człowiek, który bez względu na wiek potrafi się dokształacać. Programowanie stron internetowych wymaga ciągłego uczenia się nowych rzeczy, ponieważ powstają nowe standardy, narzędzia, obszary (np. jeszcze kilka lat temu nie tworzyło się stron dostosowujących się do telefonów). Szybkie uczenie jest kluczowe, aby być w czołówce najlepszych programistów.

Wiek nie jest ograniczeniem, a czasem potrafi pomóc. Pozwala on spojrzeć na pewne problemy z innej perspektywy, z wiekiem jest łatwiej nam analizować sytuację.

To co jest utrudnieniem to:

  • mniej czasu na naukę programowania (mamy rodziny, pracę, dzieci);
  • brak pasji (większość przekwalifikowujących się osób nie programuje, bo chce zrealizować jakiś cel, np. stronę o ukochanym klubie sportowym. Większość ludzi chce programować dla pieniędzy);
  • z wiekiem człowiek jest mniej chłonny, ponieważ mózg broni się przed zaśmiecaniem go zbędnymi informacjami (takimi, które nie sprawiają nam przyjemności).

Rozwój zawody jest bardzo trudny, jeśli jedynym motorem są pieniądze. Pasja do tego co się robi pozwala na skupienie się w dłuższym czasie (zarwanie nocy ;-)). Postaraj się znaleźć coś co sprawia Ci dużą frajdę, a programowanie potraktuj tylko jako narzędzie do osiągnięcia tej przyjemności, np. serwis o łowieniu ryb, ukochanym klubie czy pasji grania w gry planszowe.

I nie martw się jak coś nie wyjdzie tak jakbyś chciała/chciał. Programowanie stron internetowych to ciągłe błędy i ich poprawianie. Nawet najlepsi popełniają błędy.

Którego języka najlepiej się uczyć?

Nigdy język programowania (czyli tekst jakim tłumaczymy komputerowi co ma zrobić) nie zapewni Ci sukcesu. To co jest odpowiedzialne za sukces to wiedza, a język to tylko narzędzie. Tak jak młotek nie czynni Cię fachowcem, tak używanie danego języka nie czyni Cię profesjonalistą w informatyce.

Można tworzyć dobre strony w każdym języku internetu i można tworzyć słabe strony w gloryfikowanych językach (serdecznie pozdrowienia dla hejterów). Dobry programista zna ograniczenia języka i narzędzi oraz wie jak je omijać. Skup się na nauce i tym co sprawia Ci przyjemność. Poznasz dobrze jeden język/narzędzia i masz mieszane uczucia? Dopiero wtedy szukaj innego języka/narzędzia.

Co muszę umieć?

W programowaniu stron internetowych ważne jest opanowanie filarów internetu. W tym wypadku jest to język HTML (odpowiada za strukturę strony – czyli co w jakiej kolejności się wyświetli i czym jest – listą, tekstem czy nagłówkiem) i CSS (odpowiada za wygląd strony – czcionka, kolory itd.). Po opanowaniu tych języków ważne jest poznanie języka Javascript (odpowiada za wszelkie animacje na stronie, np. wysuwane menu). To są języki frontu strony (tzw. front-end) – czyli języki odpowiedzialne głównie za wygląd strony (prezentacje danych).

Oprócz języków frontu są języki zaplecza (tzw. back-end) – czyli takie, które dokonują obliczeń i pobierania danych. Tutaj dopiero masz do czynienia z językiem programowania (czyli takim, który wykonuje zadania, kontroluje jakie ma pobierać dane). Języków jest sporo, np.: PHP, Ruby, Java. Dane są przechowywane w bazach danych (do nich używamy języka SQL).

Uwaga 1: Początkujący często używają zamiennie nazw Javascript i Java. Są to zupełnie dwa różne języki (zupełnie inaczej piszemy kod dla komputera, aby zrozumiał co ma zrobić)! 

Uwaga 2: Na tym etapie uprościłem do czego można stosować dany język, aby łatwiej było początkującemu zrozumieć do czego służą. Jednakże w późniejszych lekcjach zobaczysz, że dany język można wykorzystać też do innych celów, np. język Javascript może być użyty na zapleczu (tzw. back-end).

Ważne jest także: testowanie stron, poprawa wydajności (szybkości uruchomiania się strony), dostępność dla osób niepełnosprawnych, spełnianie wymagań prawnych (np. o ochronie danych osobowych), tworzenie dokumentacji, właściwa komunikacja w zespole, poprawne tworzenie kodu.

Jeśli nie rozumiesz tych zależności – nie przejmuj się. W konkretnych wpisach będzie to lepiej wyjaśnione.

Jak wymawiać nazwy języków (HTML, CSS, Javascript itd.)?

W programowaniu język angielski jest międzynarodowym środkiem komunikacji i bardzo często podstawowym językiem danej firmy (zwłaszcza w zespołach międzynarodowych).

W polskich przedsiębiorstwach, gdzie wszyscy pracownicy mówią w języku polskim bardzo często się zdarza, że w komunikacji używane są słówka bezpośrednio zaczerpnięte z języka angielskiego. Programista szybciej zrozumie angielski odpowiednik od polskiego, np. „canvas” (po polsku „płótno” – jest to zazwyczaj obszar, gdzie za pomocą kodu Javascript rysujemy. Wykorzystywane  jest to w grach w przeglądarce internetowej).

Tak jak w biologii wszystko jest opisywane w języku łacińskim, tak w informatyce wszystko jest opisywane w języku angielskim. Programiści potrafią mieć bzika na punkcie używania angielskich słów, więc warto je znać.

Uważam, że podobnie jak w biologii także w informatyce powinno się używać łatwiejszych polskich określeń. Pomaga to w komunikacji, bo dziś świat informatyki styka się z każdą dziedziną biznesu, np.: sprzedaż, marketing, wsparcie techniczne, projektanci, kierownictwo itd. Profesjonalizm nie mierzy się ilością trudnych słów jakich używamy, a zdolnościami komunikacyjnymi z innymi. To właśnie ta umiejętność pozwala nam na dalszy rozwój w firmie (np. przejście na stanowisko kierownika projektu) czy rozwój firmy (jeśli klient nas nie rozumie to nie będzie chciał z nami pracować).

Czy chciałbyś u lekarza słyszeć, że dziecko jest chore na „varicella” (słowo z języka łacińskiego)? Chyba lepiej brzmi polska nazwa „ospa wietrzna” (łatwiej zapamiętać i wykorzystać informacje). Oczywiście bądź gotów na to, że będą krytykanci języka polskiego ;-).

Wymowa wyrazów branżowych bywa różna, bo np.:

  • wszyscy czytają po polsku „HTML” i „CSS”, choć mają one po angielsku inną wymowę;
  • wszyscy czytają po angielsku „Javascript” i „Java”, choć mają one po polsku inną wymowę;
  • wszyscy czytają po angielsku „Ruby”, choć mają one po polsku inną wymowę. Co ciekawe to słowo ma nawet polski odpowiednik (ang. „Ruby” po polsku oznacza „rubin”), ale jest niezwykle rzadko stosowany.

Ściągawka:

Google translator ma możliwość odtworzenia dźwięku  w danym języku. Należy kliknąć ikonkę głośnika (w polu, gdzie wpisujemy tekst po angielsku). Poniżej linki do translatora:

  • HTML i CSS (HTML – czytamy: „ejcz ti em el”, CSS – „si es es”);
  • Javascript („dżawaskript”);
  • PHP, Java, Ruby (PHP – „pi ejcz pi”, Java – „dżawa”, Ruby -„rubi”);
  • SQL („es kju el”);
  • Front-end, Back-end („frontend” i „bakend”).

Jak długo muszę się uczyć, aby pójść do pierwszej pracy?

Programowanie to ciągła nauka i zawsze będziesz czuł, że jeszcze musisz się pouczyć. To uczucie nie powinno Cię blokować, a wręcz powinno zachęcać do podjęcia pierwszej pracy (doświadczenie i praca z doświadczonymi programistami).

Musisz pamiętać, że na rynku coraz częściej obowiązuje podział na:

  • programistów frontu (tzw. front-end), którzy są odpowiedzialni za wygląd stron.
  • programistów zaplecza (tzw. back-end), którzy są odpowiedzialni za wykonywanie zadań i pobieranie danych.

Trzeba bardzo dobrze opanować front, aby móc programować na zapleczu (back-endzie). Pierwszą pracę powinieneś podjąć po opanowaniu frontu, aby w projektach komercyjnych (czyli takich, za które dostajemy pieniądze) powalczyć z występującymi tam problemami i błędami. Takie doświadczenie będzie procentować po przejściu do programowania na zapleczu.

Warto szukać pracy jeśli już potrafisz:

  • napisać z pamięci kod HTML i CSS, który tworzy choć zarysy strony internetowej (nie zawsze wszystkie problemy rozwiążesz z pamięci, np. niektóre występują tylko w określonych przeglądarkach internetowych);
  • korzystać z programów graficznych (np.: przycinanie obrazków, zmniejszanie ich objętości, cięcie obrazków na mniejsze kawałki itd.);
  • napisać prosty program w Javascript;
  • dołączyć i korzystać na stronie z bibliotek Javascript (czyli kodu napisanego przez innych);
  • tworzyć dostępne dla osób niepełnosprawnych strony internetowe;
  • analizować stronę pod kątem błędów;
  • korzystać z popularnych narzędzi dla programistów (np. GIT – oprogramowanie, które kontroluje zmiany w naszym kodzie);
  • tworzyć strony dostosowujące się do wielkości ekranu (tzw. responsywne czyli dobrze wyglądające na tabletach i telefonach oraz komputerach i innych urządzeniach z internetem).

Po zdobyciu wiedzy warto dalej obserwować tego bloga, aby móc rozwijać się w kierunku bardziej zaawansowanego programisty lub kierownika projektu.

Czy warto iść na studia?

Każde studia rozwijają, ale nie są warunkiem koniecznym osiągnięcia sukcesu w informatyce. Programowanie stron internetowych dynamicznie się zmienia i nie zawsze programy na studiach nadążają za zmianami. Są również specjalistyczne szkolenia krótsze od studiów, ale w podobnych cenach do studiów. W większości Twój sukces będzie uzależniony i tak od tego jak dużo serca włożysz w naukę.

Plusem studiów są kontakty (kluczowe w dzisiejszych czasach) i podstawy analitycznego myślenia, a specjalistycznych szkoleń kontakty i często organizowane targi pracy. Jeśli nie możesz sobie pozwolić na żadne z nich to warto pojawiać się na imprezach dotyczących informatyki… no i oczywiście warto czytać tego bloga, nawet na studiach :).

Jeśli mieszkasz w mieście, gdzie nie ma imprez informatycznych – staraj się obserwować relacje video, chodzić na otwarte wykłady na uczelniach itd. Jeśli jakaś relacja z imprezy Ci się spodoba to warto pojechać i zobaczyć jak to wygląda „na żywo”. Musisz pamiętać, że nie zawsze imprezy w największych miastach oznaczają wysoki poziom, a także nie zawsze pozwalają zdobyć wartościowe kontakty.

Warto w swoim środowisku szukać opcji na fundamenty przyszłych biznesów (np. gmina, która chcę zmodernizować stronę, sąsiad posiadający firmę i słabą stronę internetową). Pamiętaj, że nie jesteś jedynym człowiekiem, który szuka w informatyce sposobu na życie. Zawsze musisz starać się robić więcej niż inni, aby wygrywać z nimi konkurencję. Nie spodziewaj się tych samych rezultatów co inni osiągają, jeśli ich tylko naśladujesz. Masz mniejsze doświadczenie i sieć kontaktów, więc musisz pracować ciężej.

Czy łatwo zarabiać duże pieniądze?

Pamiętaj, że w każdym mieście panują inne warunki. Jest duże prawdopodobieństwo, że w miastach niewojewódzkich nie osiągniesz zarobków porównywalnych do stolic regionów (mniejsza ilość podmiotów zgłaszających zapotrzebowanie na nowych pracowników, mniejszy sektor publiczny itd.).

Pamiętaj również, że w Polsce co roku na rynek pracy wychodzi kilka tysięcy informatyków (2013 r. było ich prawie 14 tys.). W moim rodzinnym Włocławku do niedawna trzy szkoły wyższe szkoliły informatyków! Pomimo wzrostu zapotrzebowania na informatyków nie zawsze umiejętności początkującego informatyka będą się pokrywały z jego aspiracjami zarobkowymi.

Od lat rosną wymagania i ta tendencja będzie się utrzymywać. Ważne jest, aby mieć właściwe podejście do pierwszej pracy (idziesz, aby się uczyć). Nauka jest kluczowa, aby zarabiać lepsze pieniądze. Do tego nieustanny monitoring rynku pracy. Nawet, jeśli nie chcesz zmienić pracy to powinieneś chodzić na rozmowy kwalifikacyjne, aby poznawać wymagania i warunki panujące na rynku pracy. Relacje w mediach nie zawsze pokrywają się ze stanem faktycznym.

Co dalej robić?

Przeczytaj wpis: Jak stworzyć swoją pierwszą stronę internetową?

Podsumowanie

  • Jak się przekwalifikować? – Czytając bloga naucz się jak coś zrobić, a we własnych projektach wykorzystuj wiedzę. Dużo ćwicz. 90 proc. sukcesu… to ćwiczenia. 10 proc. to wiedzieć jak (witamy w świecie, gdzie wszystko wie Google ;-)).
  • Czy moja płeć ma znaczenie? Nie. Jeśli czegoś nie rozumiesz to znaczy, że masz słabego nauczyciela.
  • Czy jestem za stara/stary na naukę programowania? – Nie, to nie ma znaczenia. Kluczowe jest zaangażowanie (ile możesz poświecić, aby zmienić swój los?).
  • Którego języka najlepiej się uczyć? – Język to tylko narzędzie i nawet najlepszy język nie zapewni dobrej jakości. To od Ciebie zależy jak dobre produkty będziesz tworzył.
  • Co muszę umieć? – Języki odpowiedzialne za wygląd strony HTML, CSS, Javascript (pierwszy etap nauki) oraz języki odpowiedzialne za obliczenia (PHP lub Java lub Ruby) oraz za dane (SQL).
  • Jak wymawiać nazwy języków (HTML, CSS, Javascript itd.)? – HTML i CSS (?ejcz ti em el?, ?si es es?), Javascript (?dżawaskript?), PHP, Java, Ruby (?pi ejcz pi?, ?dżawa?, ?rubi?), SQL (?es kju el?), Front-end, Back-end (?frontend?, ?bakend?).
  • Jak długo muszę się uczyć, aby pójść do pierwszej pracy? – Programowanie to ciągła nauka i zawsze będziesz czuł, że jeszcze musisz się pouczyć. To uczucie nie powinno Cię blokować. Pierwszą pracę powinieneś podjąć po opanowaniu frontu, a szybkość uczenia jest zależna od Twojej determinacji i zdolności przyswajania nowych rzeczy.
  • Czy warto iść na studia? – Nie jest to warunek konieczny, aby zostać dobrym programistą.
  • Czy łatwo zarabiać duże pieniądze – Początki to przede wszystkim zdobywanie doświadczenia. Z czasem rośnie wynagrodzenie.
  • Podziel się na:

Zobacz również:

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *