beldmit: (Манул)
[personal profile] beldmit
Вот тут [livejournal.com profile] zabivator пишет о том, что надо бы читать в вузах для программистов. Я с этим категорически не согласен.

Оставим в стороне количество известных мне квалифицированных программистов без формального высшего образования. Вернемся к сути.

Вообще высшее образование предназначено для формирования у человека картины мира, более детальной в области дальнейшей специализации. На которой ему предстоит выращивать свои навыки, в том числе и трудовые. Еще одна задача высшего образования - умение работать с информацией (ага, на моей памяти три метода поиска помню, и не факт, что через пару лет не появится какой-нибудь новый).

Так вот, перечисленные Олегом вещи - это не куски картины мира. Навыки чтения и написания email - в чистом виде делопроизводство, уж простите. Курсы секретарей, 3 месяца без отрыва от труда. Task management - тоже где-то рядом на самом деле. Нужны не программистам, а каждому экземпляру офисного планктона. Да, способы работы с электронной почтой можно еще немного с психологией увязать, но тоже не в вузовском объеме.

А первые 2 пункта - про Release management и QA - более-менее IT-специфичные навыки. Но - проблема в том, что они не научные, а ремесленные. В лучшем случае - инженерные. Computer science там внутри тоже есть - в алгоритмах слияния изменений, например. Но этому учить надо явно не всех программистов. Как не всех надо учить лингвистике, но всех - правилам про жи-/ши.

На самом деле программирование - не отрасль математики. И не надо впустую тратить силы на подготовку программистов в ВУЗах. Готовить их (нас) по большей части надо в техникумах. Вбивая навыки ремесла: комментарии, автотесты, выравнивание кода, говорящие названия переменных - как вбивают технику безопасности работы на токарном станке.

Date: 2011-02-09 09:25 pm (UTC)
From: [identity profile] raccoon.livejournal.com
Лучшие программисты, которых я видела за свою довольно долгую жизнь, заканчивали:
ВМиК МГУ (3 человека)
Мехмат МГУ (2 человека)
РК МВТУ им. Баумана (3 человека)
Факультет кибернетики МИФИ (1 человек - это скорее счастливое исключение, чем правило, и факультет теоретической и экспериментальной физики МИФИ (3 человека - это скорее правило, чем исключение).
ФУПМ МФТИ (1 человек) и ФАЛТ МФТИ (1 человек).
Но - увы, никак не техникум.
На самом деле, именно основам, которые позволяют освоить профессию и неплохо писать на C++, дают в любой приличной физматшколе (в порядке углубленности проф. подготовки программиста номера будут располагаться примерно так: 18-я, 179-я, 91-я, 2-я, 57-я).
Без чего принципиально невозможен действительно хороший программист?
Без следующих дисциплин:
Теория множеств
Дискретная математика и математическая логика
Алгебра и функциональный анализ
Теория вероятностей
Где-то третий курс ВМиК и Мехмата, соответственно. Основы (т.е. первые два курса Мехмата) - это любая приличная физматшкола. Лично мне из приличных больше всего нравится 179-я: у них широкий естественнонаучный кругозор, и они легче ориентируются в окружающем пространстве.

Date: 2011-02-10 07:00 am (UTC)
From: [identity profile] beldmit.livejournal.com
У меня (без факультетов):

МГУ - Мехмат 1, Географический 1. ВМК-шников убедительных не встречал.
Бауманка - 2
Неоконченное высшее - минимум 2
МИЭМ - 2, считая меня.

Понятно, что с Физтеха должно быть много, но в мои сети они не попадались вообще. МИФИ-сты то же самое.

А соответствующих техникумов просто нет, вот и не встречаются оттуда программисты :-)
Про набор предметов скорее согласен, хотя и с оговорками, но это все нам давалось не позднее 3-го курса. То есть по-любому должно хватать "неоконченного высшего"...

Date: 2011-02-10 09:40 am (UTC)
From: [identity profile] raccoon.livejournal.com
ВМиК
наиболее яркие представители: [livejournal.com profile] gaperton, [livejournal.com profile] averros. Это те, кто здесь проявляется как-то.
В число лучших из всех, кого я знаю, они не включены: я считала только тех, с кем работала вместе.
МИЭМ - да, я видела очень хороших специалистов оттуда, но до ВМиК там (среди моих бывших коллег) там было очень далеко.

Date: 2011-02-10 11:50 am (UTC)
From: [identity profile] beldmit.livejournal.com
Кстати, вопрос по списку предметов.

Дискретка, видимо, включает графы?
Теория множеств - понимаю, РСУБД из нее растут. Логика - понимаю.

Остальное напрямую применяется только в специфичных областях (общая алгебра - в криптографии, линейная - в геймдизайне, матан ни разу не потребовался). Этот набор - для математической эрудиции или для чего? У меня сложилось впечатление, что связь математики и программирования сильно преувеличена.

Date: 2011-02-10 12:34 pm (UTC)
From: [identity profile] raccoon.livejournal.com
Да, разумеется, дискретка включает графы.
Алгебра и функциональный анализ - вообще в теории алгоритмов, не только в криптографии. Криптография - частный случай.
Математический анализ - пожалуй, в применении к численному моделированию. Задачи распознавания/обработки изображений, например, без знания математического анализа просто не решаются.
У меня, кстати, не математический анализ в списке был указан, а функциональный анализ. Тоже используется в разных алгоритмах, и гораздо чаще, чем математический анализ.

Profile

beldmit: (Default)
Dmitry Belyavskiy

December 2025

S M T W T F S
 123456
78910111213
14151617181920
2122 2324252627
28293031   

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Dec. 27th, 2025 05:27 am
Powered by Dreamwidth Studios