По поводу того, когда начинать.
Я считаю, что иожно начинать заниматься программированием с 9-10 класса и быстро добиться больших успехов - знаю по своим школьникам, да и сам такой же был...
Мне кажется, что слишком ранний упор на компьютерную, формальную алгоритмику может быть вреден. Задачки-то научить решать - это полдела, надо, чтобы это решение не становилось просто привычкой, быстрым решением достаточно надуманных задач на основе большого количества решенных аналогичных. Знаю одного очень способного олимпиадника, который из года в год занимал первые места и на школьных, и на студенческих олимпиадах. Всегда брал все возможные баллы. Достиг этого прорешиванием огромного количества задач с разных олимпиад. Однако ни одного серьезного проекта довести до конца никогда не мог... Так что, мне кажется, не нужно забывать о том, что ИТ-профессионал - это в первую очередь инженер-конструктор, разработчик технических систем. И все основные правила и подходы техники железной в полной мере распространяются и на софтвер.
Поэтому, мне кажется, для воспитания настоящего ИТ-инженера необходимо в средней школе прививать интерес к технике в целом. Кружок авиамоделирования может сыграть в судьбе будущего программиста не меньшую роль, чем факультатив формальной логики. (Вспомним, с чего начинал Никлаус Вирт...)
Не слишком ли рано теперь происходит виртуализация мышления, отвлечение от работы с реальным миром на жонглирование отвлеченными абстракциями?
По поводу ШАРа - намеки понимаюКаркас давно сделан, требуется доделать конкретику. Мой выпускник (теперь уже студент 1 курса ОГУ) сейчас с этим возится. Хотелось бы дать "стране угля" до 1 сентября...