Istnieje obiegowa opinia, że praca programisty jest nudna i monotonna, nie mająca wiele wspólnego z kreatywnością. Wiele osób wyraża zdziwienie, że programista może spędzać wiele godzin nad jednym modułem, który albo działa nie tak, albo wcale, zanim zacznie pracować poprawnie. No bo jak można robić to przez cały dzień pracy bez znużenia?
Nic bardziej błędnego. Programowanie to nie tylko umiejętność posługiwania się danym językiem i dobra znajomość jego składni, umożliwiająca prawidłowe napisanie poszczególnych procedur. To także konieczność wypracowania umiejętności logicznego i analitycznego myślenia, aby procedury te były poukładane w określonej sekwencji i wynikały jedna z drugiej; w przeciwnym razie procedura nie będzie działać.
Umysł programisty różni się nieco od umysłu innej uczącej się osoby. W procesie uczenia się powstają w mózgu człowieka tzw. modele umysłowe, będące odzwierciedleniem sytuacji tworzonych przez umysł na podstawie wyobrażenia bądź rzeczywistości. Modele umysłowe, jakie powstają podczas nauki, kształtują sposób myślenia i rozwiązywania poszczególnych problemów. Dany umysł, przyzwyczajony do określonego modelu, może mieć kłopoty z wytworzeniem nowego modelu podczas nauki innego przedmiotu, a nawet innego tematu z tego przedmiotu. Natomiast w programowaniu nie da się skupić wyłącznie na jednym problemie i jednym języku. Programowanie wymusza wychodzenie poza schematy myślowe, bowiem polega na ciągłych zmianach. W ten sposób programiści wypracowują w ciągu wielu lat umiejętności analityczne i lepszą pamięć od innych.
Oczywiście możliwie jak najwcześniej. Nauka programowania dla dzieci przypomina naukę języka obcego; im wcześniej dziecko ją rozpocznie, tym szybciej i łatwiej ten język przyswoi. Warto też pomyśleć o profesjonalnym ośrodku edukacyjnym, prowadzącym zajęcia dla dzieci.
Jedną z propozycji jest malyinzynier.pl. Jest to ogólnopolska sieć ośrodków, oferująca pozalekcyjne zajęcia dla dzieci i młodzieży w wieku od 5 do 15 lat. W szerokiej ofercie znajduje się również nauka kodowania dla dzieci. Mały Inżynier dynamicznie się rozwija i obejmuje swoim zasięgiem coraz więcej miejscowości. Główna siedziba mieści się w Poznaniu, natomiast filie w Baranowie, Białej Podlaskiej, Luboniu, Markach, Nowej Iwicznej, Pile, Siedlcach, Suchym Lesie, Szczecinie, Świnoujściu i Warszawie. Dla zainteresowanych, którzy mieszkają w innych regionach i nie są w stanie brać udziału w kursach stacjonarnych, organizowane są zajęcia online.
Najmłodsze dzieci uczestniczą w zajęciach z programowania Junior, a wykorzystywany jest najlepszy do nauki podstaw programowania język Scratch Junior. Dzieci, które już miały do czynienia z grami komputerowymi, mogą uczyć się programowania w Minecraft, a z czasem tworzyć własne gry.
Do wyboru jest również programowania aplikacji mobilnych dla systemu Android w języku Java. Dzieci mogą się nauczyć tworzenia własnych miniaplikacji, np. kalkulatora lub krokomierza, zapisać je w swoich telefonach i normalnie używać. Mogą również tworzyć własne gry.
Umiejętność programowania i tworzenia różnych aplikacji oraz gier to oczywiście główny cel nauki kodowania. Ale oprócz tego u dziecka, a później dorastającego młodego człowieka rozwijają się cechy, które bardzo się przydają w dorosłym życiu, szczególnie w pracy zawodowej. Oto najważniejsze z nich:
Postęp technologiczny jest coraz bardziej dynamiczny, a to sprawia, że na rynku pracy liczba programistów jest cały czas niewystarczająca. Automatyzacja niemal wszystkich sfer życia generuje coraz większe zapotrzebowanie na specjalistów. Dlatego warto jak najwcześniej umożliwić dziecku naukę programowania. Jeżeli złapie bakcyla, z pewnością nie będzie w przyszłości mieć problemu ze znalezieniem pracy.