Приказать себе творить так же невозможно, как обучить творчеству другого человека, призывая его к подражанию. Чтобы учитель вообще мог обучать, он должен понять мотивацию или, еще лучше, источник вдохновения ученика. Кроме того, учителю нужно приспособиться к манере мышления и текущей жизненной позиции ученика. Только в этом случае он сумеет построить такую систему преподавания, которая позволит ученику освободить свою волю от зажима мелких, сиюминутных страстей и от мелькающих целей. Тому, как всего этого добиться применительно к сфере ИТ-образования, и посвящен данный номер нашего журнала.
В условиях неисчерпаемости и многообразия информационных богатств ИТ-образование все больше становится способом повышения стоимости как компании, так и отдельных специалистов. Умение подчинять информационные ресурсы задаче достижения общей бизнес-цели сегодня весьма востребовано. Отвечающий за информационную инфраструктуру своей организации или фирмы-клиента ИТ-менеджер не может долго почивать на лаврах, довольствуясь когда-то успешно созданной конфигурацией: он должен быть всегда готов предоставить адекватные ответы на запросы бизнеса. Это и есть главное ученическое правило - всегда будь готов!
Каждый бизнес по-своему уникален, и большинство предназначенных для него ИТ-проектов индивидуальны — среди них трудно найти два одинаковых. Кроме того, мы живем в эпоху динамичной экономики, и планирование в современной России возможно не более чем на 12 месяцев. При организации отечественного ИТ-образования все это создает дополнительные трудности, например неясно, что первично — абстрактная идея или практика конкретного проекта. Навыки, полученные при обучении на основе опыта выполнения какого-либо успешного проекта, могут оказаться несостоятельными при работе над другим проектом. И даже отлично организованная на сегодняшний день система обучения не дает гарантий завтрашней успешности подготовленного в ее рамках ИТ-специалиста. Правда, если вам в жизни нужны гарантии, то вам не нужна сама жизнь, которая по своей природе не может иметь гарантий.
Тем не менее наши авторы предлагают ряд рецептов для организации системы эффективного (гибкого) ИТ-образования — например, ее создание на основе концепции критического осмысления практической деятельности, или рефлексивного мышления. Эта концепция ориентирует специалистов-практиков, в том числе программистов, на ревизию и переосмысление их работы. Она базируется на предположении, что подобная рефлексия повышает профессиональное мастерство и продуктивность деятельности ИТ-специалистов, особенно в условиях растущей сложности процесса разработки программных систем и повышения значимости коммуникаций между членами групп разработки и развития таких систем.
Первое из этих условий вызывает необходимость в более полном осознании наших умственных процессов, чего удается добиться за счет рефлексивного мышления, помогающего нам разобраться в самих себе. Второе подразумевает, что для улучшения коммуникаций в группе программистов ее члены должны научиться понимать мыслительные процессы друг друга (без чего вообще невозможна успешная коллективная работа). Несмотря на технический характер программирования, оно нацелено в первую очередь на решение гуманитарных проблем, поэтому большинство успехов и неудач программных проектов связано с человеческими, а не с техническими факторами.
Для преодоления общепризнанной когнитивной сложности процессов разработки ПО в информатике и программировании используются эвристики, в том числе абстракция. Помимо владения общим процессом абстрагирования программисты должны уметь мыслить в терминах разных уровней абстракции и в ходе создания программы переходить с одного из этих уровней на другой. Например, пытаясь понять требования клиентов на начальной стадии проекта, разработчики должны получить общее представление о приложении, что требует высокого уровня абстракции. При кодировании, наоборот, нужно придерживаться локальной точки зрения, находящейся на более низком уровне абстракции. Как считают наши авторы, между этими уровнями существуют и промежуточные, а само абстрагирование является нетривиальным когнитивным процессом, поэтому обучение абстракции представляет собой сложную проблему ИТ-образования.
Какой бы ни была концепция организации ИТ-образования, ясно, что необходимые знания всегда можно найти в специальной литературе или получить на курсах, методологию — почерпнуть у консультантов, но вот умений использовать эти знания удастся достигнуть только самостоятельно. К сожалению, наши нынешние системы ИТ-образования обычно ориентированы на забивание голов учеников «готовыми» мыслями и идеями (причем зачастую - устаревшими), а не на развитие их собственного мышления. Настало время изменить это положение, поскольку в противном случае мы не сумеем готовить специалистов, всегда готовых эффективно применять свои знания.