Без заголовка
Самая лучшая методика - два языка программирования, причём один из них "опасный". Лучше всего на real time системе.
Если человек научится, значит можно двигаться дальше.
Если не сможет решать задачи без ошибок, то и на более современных языках в основном будет делать мусор.