Я посоветую замечательные игры от компании Zachtronics:
В этих играх вам придется проектировать устройства и писать программы на языке, похожем на Assembler. Игры построены по принципу "разгадай головоломку". Чтобы разгадать каждую, нужно написать небольшую программу.
Игры включают документацию и примеры, так что первые несколько "уровней" вы пройдете гарантированно. А сюжетная линия и интрига не дадут заскучать.
Это всего лишь игры, вы не научитесь писать настоящие программы, но вы научитесь создавать алгоритмы и думать как программист.