+1.
Есть 2 способа учить программирование.
1. Instant gratification. Немного кода пописал, и сразу сделал что-то полезное и визуально осязаемое. И уже после получения результатов углубляешь знания. По такому принципу всякие школы и курсы часто делаются.
2. Building up - начинаем долго рассказывать с теории информации и того, как работает компьютер (фон Нейман, логические гейты, бинарная система счисления, все дела) и потом начинаем сверху наращивать - модель памяти, работа операционной системы, структурное, функциональное, оо, логическое программирование и тд и тп. Так учат в универах.
Для первого способа JS - самый идеальный язык сегодня. Сразу в браузере что-то нахимичить и хвастаться “я у мамы программист”
Для второго - Zig, C, Rust хорошие языки (чтоб сразу указатели, управление памятью и тд подхватить)
Python - ни там, ни там. По ходу рекомендуют его чсито из-за того, что всяких спецсимволов ({[&*]}) в нем мало. Но это преимущество только на первые минут 15-20. А дальше только недостатки.