Архивы: по дате | по разделам | по авторам

Что такое вуз сегодня?

Архив
автор : ВЛАДИМИР СИГУНОВ    21.04.1997

Всему лучшему, что есть
во мне, я обязан книгам.

Максим Горький

Что такое вуз сегодня? Раньше ответ на этот вопрос звучал примерно так: "Наш институт - это просторные светлые аудитории, самые опытные преподаватели, среди которых много кандидатов и докторов наук, это самое современное оборудование, это...", - и так далее в том же ключе.

А что такое вуз сегодня, в смысле - сейчас? Увы, "светлые аудитории" полуразрушены "золотыми ручками" студентов, да и оборудование уже далеко не самое современное. Тем не менее учебный процесс в институтах идет. Мне хочется рассказать о том, чему и как учат в высшей школе на примере одного, отдельно взятого Московского авиационного института и может ли нынешний вуз подготовить начинающего программиста к самостоятельной работе.

Когда грянула перестройка, мы все оказались не подготовлены к ориентации на "маленького человека" в роли конечного пользователя - потребителя нашей продукции. Это относится ко всем областям науки и техники, начиная с автомобилестроения и заканчивая программированием. Тем не менее высшие учебные заведения довольно бойко отреагировали на изменение положения. Появились спецкурсы, ориентированные на последние новинки в области программного обеспечения персональных компьютеров. Я, студент начала девяностых, прекрасно помню с каким удовольствием ходил на курсы В. Н. Лукина и Л. Н. Чернышова по базам данных и по методам построения больших программных систем. Интересно было прежде всего потому, что читали эти курсы "живые" программисты, люди, непосредственно участвующие в разработках этих самых СУБД и больших программных систем.

Когда я сейчас задаю себе вопрос "а для чего, собственно говоря, я все это слушал, выкраивая время для посещения лекций между работой и активным отдыхом в теплой компании?", то отвечаю на него так: "Московский авиационный научил меня слушать, читать, сомневаться и самостоятельно думать". Это самое важное, что я вынес из института.

Есть определенная специфика в высшем техническом образовании. Оно, вообще говоря, не ориентированно на "высокую науку". Это образование призвано дать человеку в руки кусок хлеба. К сожалению, профессия инженера полностью девальвировалась, а ведь раньше инженер был и конструктором, и механиком, и немножко ученым.

В отличие от университетского образования, высшее техническое более специально, нет той широты охвата и погружения в глубины теории, но оно не хуже университетского учит думать. Основная цель, которую ставят перед собой вузы, - это заложить хорошую базу и научить принимать самостоятельные решения.

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

Прошло несколько лет после окончания вуза, и теперь я уже имею моральное право выступать от лица преподавателей. Не знаю как где, но Московский авиационный институт может заслуженно гордиться по-настоящему продуманными программами учебных курсов по информатике и программированию. (Речь идет о факультете прикладной математики и физики.) С первого семестра начинается чтение курса "Алгоритмические языки и программирование". Поскольку я некоторое время был активным участником этого мероприятия, то могу сказать, что преподаватели делают все, от них зависящее, чтобы жизнь студентам не казалась медом. Уже в первом семестре студенты узнают о машинах Тьюринга, причем на довольно высоком уровне. В литературе редко встретишь собранные вместе программы для машин Тьюринга в пятерках, схемы и диаграммы машин Тьюринга и теоремы Шеннона, поэтому необходимость такого сложного начала, с моей точки зрения, легко объяснима. Чем раньше студент начинает понимать, что программирование - это не просто умение набирать на клавиатуре некоторые операторы, а нечто более глубокое, тем лучше. Теоретический материал подкрепляется лабораторками на "реальной" машине Тьюринга. Еще одна похожая лабораторная работа связана с нормальными алгоритмами Маркова.

Затем начинаются лекции по Паскалю. Спорить о необходимости обязательного изучения этого языка можно долго. Но, как мне кажется, представление о нем должен иметь каждый уважающий себя программист. Обзорное изучение Паскаля в первом семестре тем более оправдано, что на старших курсах ребята пишут программы в основном на Си/Си++. На примере Паскаля студенты знакомятся с основными конструкциями императивного языка, учатся грамотно оформлять программы. Кстати, требования к оформлению предъявляются более чем жесткие. Охват тем в задачах на лабораторных и курсовых работах очень широк, от вычисления некоторой функции при помощи ряда до написания простейшей базы данных.

Практически весь второй семестр посвящен динамическим структурам данных и сортировкам. Изложение переводится с Паскаля на Модулу-2, желающие могут программировать на Модуле-3 (объектная версия Модулы). Такое построение обеспечивает последующий, практически безболезненный переход к программированию на языке Си++, изучение которого начинается на втором курсе.

Положительной стороной является и то, что преподавание языков программирования никогда не было в МАИ самоцелью. Обязательно уделяется должное внимание основным областям применения каждого изучаемого языка. Если читается курс SQL, то можно быть уверенным, что расскажут и про СУБД вообще, и про схемы хранения данных, и про технологии "клиент-сервер", и о реляционной алгебре не забудут.

На старших курсах спектр обязательных и не очень курсов крайне широк: от баз данных, которые сейчас необходимо знать, если хочешь устроиться на мало-мальски приличную работу, до такой экзотики, как Пролог, Лисп и ряд других языков искусственного интеллекта. Изучаются системы логического вывода и распознавания образов, теория компиляции. Короче, по окончании института даже посредственный студент имеет достаточный багаж знаний и эрудиции и для того, чтобы поддержать заумный разговор на компьютерные темы, и для того, чтобы легко включиться в реальный проект в качестве разработчика.

Так что же, все здорово в отдельно взятом Московском авиационном институте? Конечно, нет. Конечно, старые VAX 11/750, на которых еще я учился, устарели и морально, и физически. Слава богу, удалось перейти на "Альфу". Конечно, хочется работать на шикарных персоналках с большими мониторами - и не под Unix, а под NT. Конечно, очень трудно практически за свои деньги ремонтировать вышедшую из строя технику. А просиживать ночами за экраном, чтобы привести систему в рабочее состояние, и не получать за это вообще никаких денег? Это как? Энтузиазм сейчас не в моде, однако встречается. Я преклоняюсь перед людьми, у которых вуз - постоянное и единственное место работы.

Систему высшего образования сейчас не ругает только самый ленивый из студентов. Особенно эта агрессивность проявляется в случае задержки стипендии. Это все естественно. Не естественно для меня другое. В последнее время я все чаще и чаще сталкиваюсь с таким подходом: "вот я умный, красивый соизволил дойти до твоей дурацкой лекции, где ты мне вместо модного VB какие-то деревья рассказываешь, так попробуй меня научить". Научить, тем более программированию, нельзя. Программированию можно только научиться. Преподаватель в этом процессе самообучения играет роль консультанта, более опытного коллеги и заказчика одновременно. И нет смысла тратить драгоценные годы в институте на подробное изучение систем, которые отомрут через пять-шесть лет. Ну кто сейчас вспомнит Turbo Vision от Борланда? А ведь еще четыре года назад это был последний писк моды! Программирование заключается не в перетягивании пиктограмм из окошка на рабочий стол и не в установке атрибутов кем-то созданного графического элемента. Программирование - это, в первую очередь, глубинное понимание концепций, понимание того, что происходит в системе и как части этой системы взаимодействуют между собой и с окружающим миром. Выдающийся российский математик, автор многих книг, в том числе и по программированию, профессор Александр Львович Брудно, который разрабатывал математическое обеспечение одной из первых отечественных шахматных программ, работал на клавиатуре компьютера одним пальцем, со скоростью символ в минуту. Но более блестящего алгоритмиста мне в своей жизни видеть не приходилось.

Именно понимание глубинных процессов (точнее, их основ) и дает институт. Все остальное изучается и понимается не больше чем за пару недель при наличии описания или непосредственно в процессе работы. Именно конкретная работа, конкретная задача является основной мотивацией изучения новых программных продуктов и новых методологий в программировании, а высшее инженерное образование как раз и позволяет все это легко освоить. И мне совершенно непонятна потребительская позиция многих сегодняшних студентов, которые считают, что институт должен их чему-то там научить, а они будут сопротивляться изо всех сил. Это, извините, совок. Человек должен всего достигать в жизни сам, и учиться он тоже должен самостоятельно, а задача института - предоставить человеку эту возможность. И максимально осложнить жизнь, поднимая планку требований на очень большую высоту.

В качестве последнего аргумента того, что институт способен подготовить молодого человека к конкретной работе, приведу следующий факт. Когда я готовил эту статью, то обзвонил своих институтских приятелей, с которыми проучился почти шесть лет на примате МАИ. Практически все они сейчас так или иначе связаны с программированием. Они работают в разных местах: несколько человек являются сотрудниками отдела программирования в банке, некоторые стали "свободными художниками" и участвуют в качестве вольнонаемных сотрудников в крупных программистских проектах, кто-то работает непосредственно в фирмах, занимающихся разработкой программного обеспечения. Больше всего меня поразило то, человек пять из моих однокурсников, продолжают работу на "ящиках" и в общем-то довольны жизнью, по крайней мере - ее нематериальной стороной. Все они пишут на разных языках и для различных платформ, кто-то из них пытается двигать науку и уже приближается к защите кандидатской диссертации. Совершенно разные люди, совершенно разные взгляды на жизнь и различные приоритеты. Все - профессионалы довольно высокой квалификации (двое из них самостоятельно руководят крупными программистскими проектами). Но все они сошлись на том, что, когда понятен принцип, все остальное - дело времени и опыта. А опыту научить нельзя.

© ООО "Компьютерра-Онлайн", 1997-2024
При цитировании и использовании любых материалов ссылка на "Компьютерру" обязательна.