Inne (lepsze?) podejście do wyboru języka do nauki programowania

Inne (lepsze?) podejście do wyboru języka do nauki programowania

Każdy przyszły programista na początku swojej drogi staje przed dylematem jaki język wybrać. Wiele jest też poradników ułatwiających podjęcie tej decyzji. W tym artykule pokazuję trochę inne, praktyczne podejście do tematu.

Problem wyboru technologii na start w branży IT poruszany jest prawie na wszystkich stronach, forach, blogach i w innych publikacjach dotyczących nauki programowania.

  • Jedni polecają wybór języka najprostszego w nauce jako tego, który łatwiej będzie nam zrozumieć i zastosować.
  • Inni sugerują wybór technologii na które jest największe zapotrzebowanie na rynku pracy.
  • Inną metodą jest postawienie sobie pytania jaką dziedziną chcemy się zajmować i w ten sposób zawęzić obszar poszukiwań: inne języki są lepsze do programowania sterowników, inne do baz danych, jeszcze inne do interfejsów użytkownika i aplikacji mobilnych.
  • Można też wybrać technologię która ma największą społeczność i liczyć na to że pomoże nam ona w jakiś sposób w nauce.

Wszystkie te metody są oczywiście dobre. Problem tylko polega na tym, że nie biorą one pod uwagę jednego z największych problemów w nauce programowania, czyli….

Problem motywacji do nauki

Sam w życiu uczyłem się wielu języków. Zaczynałem od QBasica (ktoś go jeszcze pamięta?), potem był Basic, C i C++, a potem na pierwszych latach studiów VisualBasic. Ucząc się każdego z nich napotykałem na większe i mniejsze problemy, ale zderzając się z jakąś na prawdę dużą przeszkodą, po kilku nieudanych próbach pokonania jej poddawałem się i porzucałem temat. Myślałem sobie wtedy „w końcu nikt mi głowy nie urwie jeśli tego problemu nie rozwiążę”.

W ten sposób traciłem samo sedno nauki programowania, czyli umiejętność rozwiązywania trudnych zagadnień, sprawność szukania podpowiedzi, lub obchodzenia problemu w jakiś inny sposób.

Niestety tak to jest z kodowaniem, że aby nauczyć się programować trzeba po prostu programować i to „w warunkach bojowych”.

Nauka programowania w zasadzie niewiele różni się od nauki języka obcego i tak jak w przypadku przyswajania słownictwa i zwrotów – najlepiej jest uczyć się go „w terenie”.

Będąc za granicą, chcąc zrobić zakupy w sklepie musisz użyć lokalnego języka żeby dogadać się ze sprzedawcą. Inaczej nie będziesz miał co jeść. Jeśli nie umiesz się dogadać próbujesz wskazać coś paluchem, lub wytężając umysł lepisz jakieś zdanie po angielsku. Ale nie możesz się poddać.

Tak samo to działa w branży IT.

Dlatego ja polecam inny sposób wyboru języka od którego zaczniesz swoją przygodę z programowaniem…

Wybierz technologię w której będziesz mógł  realnie popracować

Nic tak nie uczy programowania jak rozwiązywanie rzeczywistych problemów które podczas kodowania się napotka.

Jeśli wybierzesz język w którym będziesz mógł rozwiązywać tylko ćwiczenia z kursu lub książki, w momencie napotkania problemu po prostu zamkniesz edytor kodu i zajmiesz się czymś innym. Jeśli poddanie się nie będzie miało żadnych konsekwencji, przy każdym napotkanym problemie będziesz czuł pokusę zrezygnowania… a przez to BARDZO DUŻO STRACISZ.

Niedawno napisałem post w którym sugerowałem wybranie języka w którym programuje się w Twojej firmie, lub tego który znają Twoi znajomi, lub którego uczy się w Twojej szkole. Po ciekawym feedbacku i kilku rozmowach na ten temat doszedłem do wniosku, że tamten temat muszę trochę rozwinąć.

Warto iść w technologię którą stosuje się w Twojej firmie jeśli będziesz mógł w niej pracować. Jeśli będziesz czuł że Twój wkład jest istotny i Twoje niewywiązanie się z zadań może mieć negatywne skutki.

Wybierz język który znają i stosują Twoi znajomi, jeśli nie tylko pozwolą Ci się przypatrywać jak pracują, ale też dadzą Ci jakieś zadanie do wykonania.

Ucz się technologii którą uczy się w Twojej szkole/uczelni jeśli będziesz musiał zrobić jakiś ciekawy projekt na zaliczenie.

Reasumując: zaangażuj się w jakiś projekt który będziesz musiał ukończyć choćby się waliło i paliło. Dzięki temu posmakujesz trochę życia programisty, zdobędziesz doświadczenie i… będziesz miał pierwszą pozycję do wpisania do CV.

Jeśli nie masz możliwości wzięcia udziału w jakimś komercyjnym projekcie wybierz język według jednego z kryteriów o których pisałem wyżej i realizuj własne dzielo. O zaletach tworzenia własnych projektów, czy warto je robić i jak się do nich zabrać napiszę wkrótce.

Dodaj komentarz