Почти в тему.

На одном форуме (Clarion) был задан вопрос. "Как программировать базу данных?" Ответ был дан примерно в том же духе. "Берешь программатор и программируешь, программируешь, программируешь"

Если серьезно, то на мой взгляд обучение программированию и составлению алгоритмов надо начинать с изучения русского языка. Именно так и никак иначе.  Ведь при написании программы нам приходиться описывать модель окружающей реальности с помощью формальной нотации (языка программирования). Но перед этим, окружающую реальность надо хотя бы по минимуму формализовать, "развернуть". Без владения языком, т.е. без нормального описания действий и потребностей пользователя на естественном языке программу не написать (алгоритм не составить).

А когда уровень владения языком как у Виктора Степановича"Эт сам, мы тут вот" О чем может идти речь? Я когда-то детей учил азам программирования. Так вот пришлось тратить несколько занятий, на то чтобы научить их развернуто описывать русским языком те явления жизни которые им кажутся вроде как понятными. А иначе условные и циклические операции (не говоря уж о каких то более сложных проектных схемах, как например "событийное управление") остаются для них голыми абстракциями.