A ja zaczynam mieć wrażenie, że to się robi podobny dylemat jak wśród osób początkujących ("jaki język mam wybrać" - i potem paraliż decyzyjny), tylko w innej odsłonie, bo OP wybiera nie dla siebie.
Mam wrażenie, że uważacie, że C++ jest za trudny na początek, bo chłopiec sobie sam nie poradzi. Ale ja cały czas będę przy nim, i jak tylko gdzieś się zatrzyma pomogę mu. Mam też wrażenie że mnożycie kolejne argumenty by poprzeć swoje tezy, ale nie chcecie wspólnie dojść do kompromisu.
Ja podzielam zdanie innych, że C++ to może nie być najlepszy wybór, ale whatever. Języków jest dużo, więc można sprawdzić, czy C++ będzie odpowiednim językiem, jeśli nie, to można zmienić na inny. Zresztą i tak nie wiadomo, czy chłopakowi się spodoba programowanie.
Pytanie też, jakie programy będzie pisać, bo obstawiam, że taka typowa konsolówka w C++ to będzie nudna. W ogóle jeśli już iść w C-podobne języki, to czemu nie np. Unity 3D? Można w tym gry robić, gdzie masz od razu podgląd, ale logikę sobie programujesz w C# (i w kilku innych językach).
W Unreal Engine podobnie, ale masz wizualne programowanie (układasz takie bloki na ekranie i łączysz strzałkami).
Jeszcze np. Godot jest. Tam też jest jakiś edytor, ale też można programować, z tego co czytam
https://en.wikipedia.org/wiki/Godot_(game_engine)
Ew. iść po prostu w JavaScript. Co prawda uważam, że ten język słabo się nadaje dla początkującego (za dużo rzeczy, które "nie wiadomo skąd się wzięły", jeśli się nie zna historii języka czy samych założeń), jednak w JavaScript można robić cudowne rzeczy. W CSS można wygląd robić. Albo pójść w stronę Canvasa - jest pełno bibliotek do tego - choćby Phaser, czyli biblioteka do robienia grafiki/gier 2D. Więc ma to niesamowity cool factor.
BTW podobny wątek ostatnio się pojawił odnośnie tych rzeczy, o których piszę:
Blender Game Engine.