Я учился кодить сам. Вначале бейсик, потом паскаль по книжке, потом уже с++ по книжке.
На бейсике я освоил простейшие алгоритмы, циклы, ветвления. На паскале — функциональное программирование, структуры данных, рекурсию. На с++ — ООП.
Теперь есть знакомый, 70 лет, учится на финансиста, хочет освоить профессию программиста но не может подступиться (вы не смотрите что ему 70 лет! дедушка у меня ого-го!). Все книжки которые я знаю, дают скорее тонкости конкретного языка и платформы, а не сам навык программировать. Так, попытка изучить c# по рихтеру у него провалилась.
Вот думаю, какую стратегию и литературу ему порекомендовать?
Деньги на курсы есть, но на курсах, как я посмотрел, тоже учат скорее конкретным платформам и технологиям, и человеку с нулевыми знаниями там делать нечего.