Как получить правильную теорию по программированию?
В ответах несправедливо игнорируется CLR = Кормен, Лейзерсон, Ривест (+Штайн во втором издании) Алгоритмы. Построение и анализ.
Я бы начинал с CLR. 
А язык программирования изучал бы параллельно — это другое занятие.
А Раскина я бы вам посоветовал читать параллельно с книгами по алгоритмам, отдохнете от скучной теории ;))