Dzieci często preferują granie od nauki. Można jednak połączyć przyjemność z pożytecznym. Przedstawię wam listę kilku gier, które będą świetnym wstępem dla młodych programistów:
7. TIS – 100

W TIS – 100 gracz programuje na komputerze z lat osiemdziesiątych używając języka podobnego do assemblera – jednego z niskopoziomowych języków programowania. Ma on tylko najprostsze instrukcje, które interpretuje maszyna. Dzięki temu gracz może lepiej zrozumieć jak działają komputery pod górą lodową, na którą składają się rozbudowane systemy operacyjne i języki programowania.
6. SHENZHEN I/O

W tej grze wcielamy się w rolę elektronika, który składa układy scalone. Do gry dołączony jest 30-stronnicowy podręcznik do nauki działania gry. Język programowania oraz interfejs są nieco bardziej przystępne niż w TIS -100.
5. SpaceChem

W SpaceChem gracz tworzy związki chemiczne. Zadaniem gracza jest wprowadzenie instrukcji, które zapętlone wielokrotnie stworzą oczekiwany związek. Operacje te wykonują się jak w linii produkcyjnej na siatce z kwadratów.
4. INFINIFACTORY

Infinifactory jest grą podobną do SpaceChem, ale rozbudowaną o dodatkowy trzeci wymiar linii produkcyjnej. Ciekawostką jest to, że Infinifactory i Minecraft mają wspólnego przodka. Obie te gry czerpały inspirację z Infiniminer’a – innej gry od Zachtronics.
3. Opus Magnum

W tej grze wcielamy się w alchemika. Gracz wprowadza instrukcje dla mechanizmów, które wytwarzają alchemiczne formuły. W SpaceChem planszą była siatka kwadratów, a w Opus Magnum jest to siatka z hex’ów (od angielskiego hexagon – sześciokąt).
2. Human Resource Machine

W grze HRM gracz wprowadza ciąg instrukcji dla pracownika. Operując na pudełkach w liczbami i literami pracownik ma zwrócić oczekiwane wyniki. Oprawa audiowizualna jest bardzo przystępna dla dzieci.
1. Seven Billion Humans

W SBH sterujemy wieloma pracownikami, co sprawia, że gra staje się nieco bardziej skomplikowana od jej poprzedniczki. Takie podejście uczy młodego informatyka programowania wielowątkowego, bo wszyscy pracownicy wykonują instrukcje w tym samym czasie.
Pozycje na tej liście od 3 do 7 są stworzone przez studio Zachtronics, zaś pierwsze dwie przez Tomorrow Corporation. Wszystkie te gry mają wspólne cechy:
– instrukcje są wprowadzane bloczkowo. Dzięki temu gry są bardziej przystępne i intuicyjne
– po ukończeniu poziomu wyświetlają się statystyki wskazujące czy można go przejść efektywniej.
-gra oczekuje danych wyjściowych po wprowadzeniu pewnych danych wejściowych. Zadaniem gracza jest stworzenie instrukcji, które będą w zapętleniu rozwiązywały dany problem. Solucja musi być więc powtarzalna i działać dla dowolnych danych wejściowych.
Takie cechy sprawiają, że młody programista będzie idealnie wprowadzony w świat informatyki. Zadaniem prawdziwego informatyka jest optymalny i niezawodny kod. Żałuję, że nie znałem tych gier zanim nauczyłem się programowania. Choć i dla zaawansowanego informatyka niektóre poziomy potrafią być wyzwaniem, więc polecam je każdemu kto pasjonuje się informatyką.