http://blog.infogens.com/2010/05/blog-post.html

Авторы известны книгами по Delphi; являются опытными промышленными программистами, разработчиками крупной САПР СБИС - и одновременно преподавателями БГУИР.

> -- Цитата:
> Д.А. Сурков, К.А. Сурков, Ю.М. Четырько.Школа программирования вместо службы персонала21 мая 2010 годаДанная статья представляет собой текстовый вариант выступления на Международном Форуме по инженерии программного обеспечения SEF-2010, прошедшем в Минске 19-20 мая 2010 года. Доклад готовился коллективом из 3-х единомышленников, поэтому в ходе выступления звучит местоимение "мы"....Содержание нашего доклада будет следующим: сначала мы поговорим о том, сколько программистов требуется нашим ИТ-компаниям, и какие программисты им нужны; потом мы рассмотрим, как ИТ-компании осуществляют поиск программистов, и с какими проблемами они при этом сталкиваются; затем мы покажем проверенную на практике альтернативу, раскроем понятие "школы программирования" и сформулируем задачу для наших ИТ-компаний на долгосрочную перспективу.......Радикально увеличить количество выпускаемых из вузов программистов мы не можем в силу объективных причин. ...Как ни крути, количественно мы не можем конкурировать на рынке ИТ с Индией и Китаем.Решение кадровой проблемы наших ИТ-компаний и обеспечение им конкурентоспособности на мировом рынке мы видим не за счет количества, а за счет качества - путем подготовки самых лучших, высококвалифицированных, программистов. И это наш ответ на вопрос -Именно высококвалифицированные программисты!...Высококвалифицированные программисты обладают намного более высокой производительностью труда, чем программисты низкой и средней квалификации. Порой она отличается в разы, иногда на порядок. ... Высококвалифицированные программисты создают на порядок более качественные программы, обеспечивая компаниям существенную экономию средств на этапе сопровождения программ. ... Высококвалифицированные программисты являются центрами, вокруг которых создаются коллективы, способные реализовывать проекты. Это бесценное качество, без которого невозможно создать программную систему.Итак, нам нужны именно высококвалифицированные программисты. Именно они, за счет своих уникальных качеств, способны решать задачи, стоящие перед ИТ-компаниями. Однако мы должны отдавать себе отчет в том, что высококвалифицированные программисты всегда малочисленны (как и высококлассные специалисты других профессий). Из 15-летнего опыта преподавания базовых специальных дисциплин на кафедре ПОИТ в БГУИР мы знаем, что на потоке из 150 человек лишь приблизительно 5 человек потенциально способны стать системными архитекторами и генеральными конструкторами, вокруг которых можно строить коллективы и точки роста. Именно за эти "крупицы золота" и ведут охоту службы персонала ИТ-компаний. Посмотрим, как осуществляется поиск программистов и что он дает....Отчаявшись найти программистов в нужном количестве и нужной специализации, ИТ-компании занялись созданием курсов программирования, на которых изучаются новые технологии. ... На курсы ходят в основном студенты, поэтому у компаний появляется хорошая возможность перехватить их, пока они еще не устроились в другие компании. Однако и здесь есть вопрос: ходят ли на такие курсы лучшие из лучших?...И наконец, еще один способ поиска программистов - олимпиады по программированию. Крупные ИТ-компании организуют или спонсируют олимпиады по программированию с предложениями о трудоустройстве для победителей. Олимпиады - очень хороший способ выявить интересующихся, увлеченных молодых людей, влюбленных в программирование. Однако успехи на олимпиадах свидетельствуют об умении мыслить нестандартно и быстро, но не могут быть критерием отбора лучших программистов. Связано это с особенностями олимпиадных задач. Мы рассмотрели известные нам способы поиска программистов. Их эффективность невысока. Чтобы получить значительно лучший результат, необходимо изменить подход к решению кадровой задачи. ИТ-компаниям следует проводить подготовку и отбор программистов в учебных заведениях.Подготовка и отбор программистов в учебных заведениях - самая верная стратегия для решения кадрового вопроса, расчитанная на долгосрочную перспективу. Она требует от ИТ-компаний некоторых инвестиций, но очень хорошо окупается. ИТ-компаниям выгодно делегировать своих сотрудников для проведения занятий со студентами. ... Что за это получает ИТ-компания? Доступ к "месторождению" программистов. Наше "месторождение" называется кафедра Программного обеспечения информационных технологий Белорусского государственного университета информатики и радиоэлектроники. Разрабатываем его уже более 15-ти лет. Собираем "крупицы золота" и приносим в те компании, в которых работаем сами. Создание школы программирования следует начинать в вузе. Главное внимание следует уделять преподаванию базовых специальных дисциплин. Это те дисциплины, которые составляют суть специальности, фундамент, на котором строятся знания специалиста. Не следует увлекаться созданием отдельных курсов по различным новым технологиям, появляющимся сейчас в большом количестве. На сегодняшний день время жизни новой технологии приближается к времени обновления рабочей программы в вузе. Поэтому вместо создания в большом количестве новых дисциплин следует чаще обновлять рабочие программы и темы лаборато-практических занятий, чтобы адаптировать существующие дисциплины к новым технологиям. Новые же дисциплины должны соответствовать новым аспектам программирования. Например, недавно появился такой аспект, как информационная безопасность, и сейчас ему в вузе соответствует отдельная дисциплиплина.Чтобы завоевать доверие студентов и заставить их поверить в свои силы, преподавателю необходимо быть "играющим тренером", практиковаться, работая над реальными масштабными коммерческими проектами. Для этого необходимо создать условия, при которых преподаватели будут работать по совместительству на предприятиях, а сотрудники предприятий будут работать по совместительству в вузах....Как мы выявляем лучших студентов? Оцениваем на протяжении нескольких лет обучения. Мы заметили, что лидеры в программировании среди студентов меняются со временем. Некоторые студенты приходят на первый курс с большим багажом знаний, другие студенты, особенно из глубинки, значительно им проигрывают. Но эта ситуация меняется на старших курсах. .Следует пойти дальше - начинать обучение программированию в школе одновременно с математикой. Вы спросите - зачем обычному человеку программирование? Мы убеждены, что программирование это такая же базовая дисциплина, как математика. Причем, программирование проще математики, поскольку в программировании все имеет физическую интерпретацию или аналогию....Программирование в школе должно быть выделено из информатики в отдельный предмет, как алгебра и геометрия выделены из математики. Кроме того, необходимо внести корректировки в учебные задачи. Мы обнаружили, что школьников учат программированию на примере решения математических задач: вычисления корней квадратных уравнений, поиска наибольших общих делителей, наименьших общих кратных и т.п. Однако те, кто добиваются успехов в математике, не всегда преуспевают в программировании, и наоборот (вы обнаружите намек на это даже в притче Эдгара Дейкстры о железнодорожных вагонах и туалетах). ...Для массового обучения программированию было бы полезно организовать хорошую еженедельную телевизионную передачу. ...Следует активно популяризировать программирования среди детей, молодежи и взрослых, чтобы снять в обществе психологический барьер перед кажущейся сложностью программирования.Школа программирования составит основу конкурентного преимущества белорусской отрасли ИТ на мировом рынке. Чтобы создать школу программирования, нам следует поставить амбициозную задачу обеспечения стопроцентной программистской грамотности населения Республики Беларусь в ближайшие 10-15 лет, и сделать это частью национальной идеи.Програмистскую грамотность нельзя сводить к компьютерной грамотности. Компьютерная грамотность стимулирует потребление зарубежных программных продуктов. Программистская грамотность стимулирует производство собственных программных продуктов.При стопроцентной программистской грамотности инновации не заставят себя ждать, причем в самых разных отраслях: от медицины и электроники до машиностроения, нефтепереработки и сельского хозяйства.Впервые вопрос о том, что программирование является второй грамотностью, поставил академик Андрей Петрович Ершов в 1981 году на проходившей в Швейцарии 3-й всемирной конференции по применению ЭВМ в обучении. Его идея опередила время на 30 лет - лишь сейчас созрели условия для воплощения ее в жизнь. Мы верим, что, обладая всего лишь 10-миллионным населением, Республика Беларусь способна завоевать мировой рынок ИТ не числом, а умением.Как и в любом деле, нужно с чего-то начать. Мы видим следующие конкретные шаги:- Создать инструментальные средства для обучения основам программирования и предоставить их в свободный доступ через интернет.- Создать учебник по основам программирования для средних школ и предоставить его в свободный доступ через интернет.- Создать цикл телепередач "Азбука программирования". Он должен быть построен таким образом, чтобы любой человек со средним образованием смог понять суть программирования и был способен обсуждать программы с профессиональными программистами.- Задействовать налоговый инструмент для привлечения людей и ИТ-компаний к преподаванию программирования. Этот шаг необходим для того, чтобы ИТ-компаниям было выгодно привлекать в свои коллективы профессиональных преподавателей, и чтобы профессиональным программистам, работающим в ИТ-компаниях, было выгодно преподавать в учебных заведениях.