Даже самые поверхностные тенденции на рынке труда заставляют задуматься о пользе математики. Зачем годами просиживать над решением дифференциальных уравнений, если эти знания окажутся мертвым грузом? Стоит ли проходить все круги «математического ада», если в дальнейшем придется конкурировать с каким-нибудь доморощенным кулхацкером?
Автор одного из учебников по такому сложному языку программирования, как С++, Ален Голуб, так говорит о роли гуманитарного и, в частности, лингвистического знания в процессе создания программ: «Программирование требует организаторских способностей и языковой подготовки, а не абстрактного мышления, необходимого для занятий математическим анализом». Далее Голуб развивает мысль в следующем направлении: зачастую в процессе подготовки специалистов в этой области слишком большое количество времени отводится предметам математического цикла, в то время как для проектирования необходимо как раз иное — «уметь написать последовательность действий на английском языке»[Цитата по php-coder.livejournal.com/22620.html, там же ссылка на оригинал в PDF]. И наконец делается вывод: «тот тип организационного мастерства и аналитических способностей, который нужен для программирования, связан полностью с гуманитарными науками».
Со времен Ломоносова нам известно, что «математика ум в порядок приводит». Однако этот аргумент напоминает больше хрестоматийную фразу. Почему нельзя шлифовать умы «компьютерщиков» чем-нибудь другим, скажем, изучением языков? Ведь сам процесс программирования — это написание кода.
Доступно и просто обосновать ценность математического образования — задача непростая. С ней сталкиваются еще школьные учителя математики, которым приходится втолковывать нерадивым ученикам, что без умения считать им — никуда. И если с младшими классами «прокатывают» примеры с деньгами, которые всем приходится считать во время похода в магазин, то со старшеклассниками, взявшимися за матанализ или геометрию, эта схема начинает давать осечки. Такому самоуверенному народу, как студенты, объяснить мировоззренческую ценность математики, как правило, вообще не удается. Поэтому никто особо и не пытается, следуя старой истине: вырастет — сам поймет.
Большинство удачливых «компьютерщиков», на самом деле, рано или поздно приходят к тому, что никакая математика в их жизни лишней не бывает. Знание это, похоже, чисто интуитивное, однако именно математическая броня есть основополагающее различие между «тяжелой артиллерией» и «криворукой пехотой». Сами преимущества, конечно, не в фундаментальных знаниях математики, а в том, что на этой почве выросло — умение решать нестандартные задачи, упорядоченный взгляд на вещи, склонность к универсальным решениям.
Математика в ИТ оказывается еще и предметом, который полезно изучать «про запас». Никогда не знаешь, когда в предстоящей работе возникнет необходимость в каких-нибудь экзотических математических познаниях. Многие потом с благодарностью вспоминают добросовестно отсиженные «бесполезные» лекции, прежние знания вдруг начинают «всплывать» и перестают казаться откровенным бредом.
Один знакомый чистосердечно признался, что в студенческие годы был не силен в дифференциальном исчислении. Став веб-программистом, он даже представить не мог, что пыльный университетский курс потребуется в одном из проектов. Так жизнь заставила его не просто воспользоваться «непрактичной» математикой, но и разобраться наконец в ее тонкостях.
Хотя, конечно, математика математике рознь. Какие-то разделы этой обширной науки жизненно необходимы в практике программирования, другие — складываются на «депозит», где и покоятся до поры до времени, пока очередной проект не вытащит их на поверхность.
Многие выпускники терзаются подозрением, что учили их не так и не тому. Однако предложить собственное противоядие затрудняются даже опытные айтишники, взирающие на преподавательскую возню с высоты своего практического опыта.
Хотя разрозненные мысли все-таки есть. Понятно, что абитуриенты, не способные мыслить логически, отсеются еще на этапе вступительных экзаменов. Тем не менее в число студентов попадают люди, по-разному знакомые с железом. Кто-то с детства паяльник из рук не выпускал, а кто-то боялся заглянуть в пыльные внутренности компьютера. Просвещать же «темный народ» в университете никто не собирается, а ведь любой мало-мальски квалифицированный человек понимает, что железо — это отдельная и бесконечная песня. Причем успех программ подчас сильно зависит от того, насколько эффективно они используют аппаратные ресурсы компьютера.
Вообще, отечественное ИТ-образование чрезвычайно гордится собственной абстрактностью (называя это фундаментальным характером). Конечно, преподавать основы на все случаи жизни — цель благородная, только именно в этом, быть может, и кроется причина его практической хромоты. Теоретико-математическая конечность ИТ-специалиста достигает должной длины, благодаря традиционным стимулам вроде зачетов и экзаменов, а вот практическая «нога» вырастает точно по логике «жизнь заставит». Вот и выходят в свет как уверенно стоящие на двух ногах профессионалы, так и хромые теоретики, вынужденные срочно осваивать инструменты, среды программирования и даже самые обычные утилиты.
Последний тезис особенно справедлив в отношении узких специалистов, для которых мир ограничен рамками небольшого числа программ. Почему бы не учить будущего консультанта-внедренца основам «1С»? Пусть это плохо вяжется с декларируемой фундаментальностью, зато очень хорошо — с его будущей работой.
Сами же выпускники взирают на профильное образование с привычным фатализмом: мол, при всем богатстве выбора другой альтернативы нет. Знаний не хватает, актуальность некоторых курсов оставляет желать лучшего, но идеал недостижим, это аксиома.
Потому-то ИТ-специалисту и приходится, подобно школьнику, грызть гранит науки, пользуясь одними и теми же раз и навсегда заложенными основами.
Учиться за пределами университета приходится еще в студенческие годы, иначе как предъявить работодателю солидный послужной список по окончании последнего курса?! То есть главным учебным заведением для отечественного айтишника оказывается не университет, а то, что называется «школой жизни», — подработки, шабашки и совместительства.
Кстати, обучать плаванию путем бросания в воду чуть ли не традиция в ИТ-среде. Работодатель охотно берет молодого (зато дешевого!) и подающего надежды специалиста, выдает ему проект и ждет результата. Новичок делает как умеет. Частенько невысокое качество первой работы остается незамеченным, поэтому «состоявшийся» специалист продолжает «клепать» дальше. Либо, если «религия не позволяет», он подключает мозги и жгучее желание сделать лучше и начинает действительно расти профессионально. При этом немало таких самоучек успевают застрять (из-за природной лени или упрямства) в одной из точек кривой, откуда сдвинуть их в более зрелом возрасте почти нереально.
Думаю, сейчас многие воскликнут: но ведь это же в любой области так! Стоит врачу перестать интересоваться медициной, и он станет врачевать на уровне Парацельса. Стоит переводчику забыть о развитии языка, и его переводы, оставаясь понятными, будут звучать старомодно. Принципиальное отличие ИТ, как известно, в том, что знания успевают устаревать в пределах одного человеческого поколения не один, а бессчетное количество раз. Разработчику приходится в буквальном смысле жить в рабочей реальности, иначе она обгоняет его.
Наверное, именно поэтому наша пожилая система образования топчется вокруг компьютера в полнейшей нерешительности. И ведь хочется тряхнуть стариной, запустить какой-нибудь новый курс или программу, да боязно: уж больно непредсказуемая это вещь. А математика — она стабильная, основательная и всегда актуальная, поэтому ей надолго гарантирован царский трон среди многообразия айтишных наук. Конечно, сказанное вовсе не отменяет ее метафизического статуса основы основ, дело лишь в том, что господство математических курсов для ИТ-специальностей — это еще и следствие обыкновенного человеческого консерватизма. Если же добавить сюда отсутствие внятных альтернатив, то картина становится вполне объяснимой.
Люди, у которых есть «моск», имеются и среди гуманитариев до мозга костей, и среди прирожденных математиков. Соответственно, и те и другие способны вырастить из себя неплохих айтишников. Первые, лишенные университетских основ, будут всегда оставаться немножко дилетантами, поэтому либо достигнут своего потолка, либо повернут в креативное русло, превратившись в постановщиков задач, технических писателей, менеджеров проектов. Для вторых же все зависит от «практической ноги» (не костыля!), от умения учиться и переучиваться, эффективно используя университетский базис.
фирма выпускает видеорегистраторы для автомобилей. В них уже встроен GPS-приемник, имеется циклическая запись, поскольку использовался жесткий диск, но для просмотра необходим дополнительный прибор.
Автор одного из учебников по такому сложному языку программирования, как С++, Ален Голуб, так говорит о роли гуманитарного и, в частности, лингвистического знания в процессе создания программ: «Программирование требует организаторских способностей и языковой подготовки, а не абстрактного мышления, необходимого для занятий математическим анализом». Далее Голуб развивает мысль в следующем направлении: зачастую в процессе подготовки специалистов в этой области слишком большое количество времени отводится предметам математического цикла, в то время как для проектирования необходимо как раз иное — «уметь написать последовательность действий на английском языке»[Цитата по php-coder.livejournal.com/22620.html, там же ссылка на оригинал в PDF]. И наконец делается вывод: «тот тип организационного мастерства и аналитических способностей, который нужен для программирования, связан полностью с гуманитарными науками».
Собака, которая зарыта слишком глубоко
Все это математическое богохульство наверняка уже вызвало у читателей-математиков желание отправить автора «фтопку». Программисты-математики в большинстве своем не мыслят жизнь вне «гимнастики ума», тем не менее со стороны эта уверенность кажется мало обоснованной.Со времен Ломоносова нам известно, что «математика ум в порядок приводит». Однако этот аргумент напоминает больше хрестоматийную фразу. Почему нельзя шлифовать умы «компьютерщиков» чем-нибудь другим, скажем, изучением языков? Ведь сам процесс программирования — это написание кода.
Доступно и просто обосновать ценность математического образования — задача непростая. С ней сталкиваются еще школьные учителя математики, которым приходится втолковывать нерадивым ученикам, что без умения считать им — никуда. И если с младшими классами «прокатывают» примеры с деньгами, которые всем приходится считать во время похода в магазин, то со старшеклассниками, взявшимися за матанализ или геометрию, эта схема начинает давать осечки. Такому самоуверенному народу, как студенты, объяснить мировоззренческую ценность математики, как правило, вообще не удается. Поэтому никто особо и не пытается, следуя старой истине: вырастет — сам поймет.
Большинство удачливых «компьютерщиков», на самом деле, рано или поздно приходят к тому, что никакая математика в их жизни лишней не бывает. Знание это, похоже, чисто интуитивное, однако именно математическая броня есть основополагающее различие между «тяжелой артиллерией» и «криворукой пехотой». Сами преимущества, конечно, не в фундаментальных знаниях математики, а в том, что на этой почве выросло — умение решать нестандартные задачи, упорядоченный взгляд на вещи, склонность к универсальным решениям.
Математика в ИТ оказывается еще и предметом, который полезно изучать «про запас». Никогда не знаешь, когда в предстоящей работе возникнет необходимость в каких-нибудь экзотических математических познаниях. Многие потом с благодарностью вспоминают добросовестно отсиженные «бесполезные» лекции, прежние знания вдруг начинают «всплывать» и перестают казаться откровенным бредом.
Один знакомый чистосердечно признался, что в студенческие годы был не силен в дифференциальном исчислении. Став веб-программистом, он даже представить не мог, что пыльный университетский курс потребуется в одном из проектов. Так жизнь заставила его не просто воспользоваться «непрактичной» математикой, но и разобраться наконец в ее тонкостях.
Хотя, конечно, математика математике рознь. Какие-то разделы этой обширной науки жизненно необходимы в практике программирования, другие — складываются на «депозит», где и покоятся до поры до времени, пока очередной проект не вытащит их на поверхность.
— Математика — это не физкультура, чтобы была «сакцесс стори» о том, как умение подтягиваться помогло работать смотрителем крокодилов. Математические дисциплины необходимы, чтобы человек научился правильно думать. Если ты этому научиться не можешь, то с большой вероятностью не сможешь и разрабатывать софт.
Андрей, технический директор
— Научить программированию вообще очень затруднительно, то есть это скорее склад мышления. Математика закладывает основы, без которых очень сложно. Можно привести кучу примеров, когда программисты или еще кто в сфере ИТ, проучившись на матфаке, за всю свою жизнь потом ни разу не решат ни единого дифура. Но можно привести и обратные примеры.
Денис, системный администратор
Единственно возможное из реально доступного
Меж тем град упреков, который по привычке обрушивают на голову консервативной системы образования, вполне возможно, порожден отсутствием ясных альтернатив. Ведь искать виноватого чаще всего начинают тогда, когда ответа на вопрос «что делать?» попросту не существует.Многие выпускники терзаются подозрением, что учили их не так и не тому. Однако предложить собственное противоядие затрудняются даже опытные айтишники, взирающие на преподавательскую возню с высоты своего практического опыта.
Хотя разрозненные мысли все-таки есть. Понятно, что абитуриенты, не способные мыслить логически, отсеются еще на этапе вступительных экзаменов. Тем не менее в число студентов попадают люди, по-разному знакомые с железом. Кто-то с детства паяльник из рук не выпускал, а кто-то боялся заглянуть в пыльные внутренности компьютера. Просвещать же «темный народ» в университете никто не собирается, а ведь любой мало-мальски квалифицированный человек понимает, что железо — это отдельная и бесконечная песня. Причем успех программ подчас сильно зависит от того, насколько эффективно они используют аппаратные ресурсы компьютера.
Вообще, отечественное ИТ-образование чрезвычайно гордится собственной абстрактностью (называя это фундаментальным характером). Конечно, преподавать основы на все случаи жизни — цель благородная, только именно в этом, быть может, и кроется причина его практической хромоты. Теоретико-математическая конечность ИТ-специалиста достигает должной длины, благодаря традиционным стимулам вроде зачетов и экзаменов, а вот практическая «нога» вырастает точно по логике «жизнь заставит». Вот и выходят в свет как уверенно стоящие на двух ногах профессионалы, так и хромые теоретики, вынужденные срочно осваивать инструменты, среды программирования и даже самые обычные утилиты.
Последний тезис особенно справедлив в отношении узких специалистов, для которых мир ограничен рамками небольшого числа программ. Почему бы не учить будущего консультанта-внедренца основам «1С»? Пусть это плохо вяжется с декларируемой фундаментальностью, зато очень хорошо — с его будущей работой.
Сами же выпускники взирают на профильное образование с привычным фатализмом: мол, при всем богатстве выбора другой альтернативы нет. Знаний не хватает, актуальность некоторых курсов оставляет желать лучшего, но идеал недостижим, это аксиома.
Если есть «моск», научишься
Большинство выпускников ИТ-специальностей заведомо не соответствуют требованиям работодателей. Интересно, что эта мысль многим кажется вполне естественной. ИТ-зависимый начальник хочет взять «программиста», который разом избавит его от всех «проблем с компьютером». А круг таких проблем частенько оказывается необъятным: тут бы и в железе разбираться надо, и сеть администрировать, и в «1С» ковыряться… А еще у шефа есть бредовая идея быстренько написать программку, по функциональности не уступающую ведущим CRM— или ERP-продуктам отрасли.Потому-то ИТ-специалисту и приходится, подобно школьнику, грызть гранит науки, пользуясь одними и теми же раз и навсегда заложенными основами.
Учиться за пределами университета приходится еще в студенческие годы, иначе как предъявить работодателю солидный послужной список по окончании последнего курса?! То есть главным учебным заведением для отечественного айтишника оказывается не университет, а то, что называется «школой жизни», — подработки, шабашки и совместительства.
Кстати, обучать плаванию путем бросания в воду чуть ли не традиция в ИТ-среде. Работодатель охотно берет молодого (зато дешевого!) и подающего надежды специалиста, выдает ему проект и ждет результата. Новичок делает как умеет. Частенько невысокое качество первой работы остается незамеченным, поэтому «состоявшийся» специалист продолжает «клепать» дальше. Либо, если «религия не позволяет», он подключает мозги и жгучее желание сделать лучше и начинает действительно расти профессионально. При этом немало таких самоучек успевают застрять (из-за природной лени или упрямства) в одной из точек кривой, откуда сдвинуть их в более зрелом возрасте почти нереально.
Думаю, сейчас многие воскликнут: но ведь это же в любой области так! Стоит врачу перестать интересоваться медициной, и он станет врачевать на уровне Парацельса. Стоит переводчику забыть о развитии языка, и его переводы, оставаясь понятными, будут звучать старомодно. Принципиальное отличие ИТ, как известно, в том, что знания успевают устаревать в пределах одного человеческого поколения не один, а бессчетное количество раз. Разработчику приходится в буквальном смысле жить в рабочей реальности, иначе она обгоняет его.
Наверное, именно поэтому наша пожилая система образования топчется вокруг компьютера в полнейшей нерешительности. И ведь хочется тряхнуть стариной, запустить какой-нибудь новый курс или программу, да боязно: уж больно непредсказуемая это вещь. А математика — она стабильная, основательная и всегда актуальная, поэтому ей надолго гарантирован царский трон среди многообразия айтишных наук. Конечно, сказанное вовсе не отменяет ее метафизического статуса основы основ, дело лишь в том, что господство математических курсов для ИТ-специальностей — это еще и следствие обыкновенного человеческого консерватизма. Если же добавить сюда отсутствие внятных альтернатив, то картина становится вполне объяснимой.
Люди, у которых есть «моск», имеются и среди гуманитариев до мозга костей, и среди прирожденных математиков. Соответственно, и те и другие способны вырастить из себя неплохих айтишников. Первые, лишенные университетских основ, будут всегда оставаться немножко дилетантами, поэтому либо достигнут своего потолка, либо повернут в креативное русло, превратившись в постановщиков задач, технических писателей, менеджеров проектов. Для вторых же все зависит от «практической ноги» (не костыля!), от умения учиться и переучиваться, эффективно используя университетский базис.
— О качестве обучения тоже можно говорить много, только нужно ли? Я считаю, что нереально в этой области преподавать то, «что нужно народу». А причина все та же — слишком активное развитие этой области.
Считаю, что такое образование — лучшее из того, что можно получить. В смысле, не очень представляю себе другое.
Денис, системный администратор
— Не хватает преподавателей-практиков, которые экспрессом подтащили бы народ к текущему уровню индустрии.
Еще, пожалуй, следовало бы учить правилам взаимодействия в профессиональной среде. Тогда бы вот этих много думающих о себе неучей меньше стало бы.
Андрей, технический директор