Также необходимо научиться решать логические задачи. На моем первом курсе программирования первым заданием было определить, как заварить чайник. Есть много других примеров такого подхода.

Это касается ЛЮБОГО языка программирования.

Подумайте, создайте и протестируйте как отдельные функции, а затем соберите целое.

Вы смотрели на Коджо?

(https://en.wikipedia.org/wiki/Kojo_(обучающая_среда)