Из книжек:
SICP (есть на русском) + для каждого языка есть свой мастрид — найти можно влегкую.
Если есть понимание, то начинать можно с любого языка. Но рекомендую параллельно (или до) читать о том, как программировать грамотно: изучить шаблоны и антишаблоны, уяснить правила.