Comments 88
Я учился в CCCР.
Кафедра «Прикладная математика». Помню как на вводной лекции заведующий кафедрой сказал :«Вот смотрите есть шахматы. Кто-то делает доску. Кто-то раскрашивает фигуры. А вы будете придумывать правила игры.»
Как говорится: «Да, были люди в наше время. Не то, что нынешнее племя...»
Привет КАИстам ;-)
КАИ — пуп Земли ;-)
Кстати про фундамент:
Математический анализ, Функциональный анализ, Теория графов и комбинаторика, Математическая логика и дискретная алгебра, Системы Линейных алгебраических уравнений, Теория вероятностей и мат.статистика, Теории функций комплексных переменных, Дифференциальные уравнения.
«Математику уже затем учить надо,
что она ум в порядок приводит»
М.В. Ломоносов
Я учился в CCCР.
У преподавателей в СССР была киллер-фича: они зарабатывали не меньше, чем инженеры на производстве. Потому и могли знать не меньше, чем практикующие инженеры, т.к. толковые люди и на кафедрах оставались, и перемещались между ВУЗами и предприятиями. Сейчас же, когда разница в зарплатах трехкратная, редкий программист пойдёт в ВУЗ преподавать программирование. Искать их надо не в ВУЗах, а на профессиональных курсах.
Дело в другом.
Нам в СССР давали больше фундаментальных знаний.
А сейчас я как то спрашивал, в другой теме — проходят ли сейчас в ВУЗах Вирта, Кнута, Кодда, Йордана? Тишина.
Почему, то в последнее время считается, что программирование это ремесло и знание синтаксиса языка программирования.
Нас в те времена и учили по другому и другому.
А сейчас обучение это всего лишь услуга. А с точки зрения бизнеса — чем ниже издержки, тем выше прибыль. Вот и экономят.
Откуда сформировалось мнение, что описан средний вуз? Это отстойный вуз.
Не надо учиться в отстойном вузе.
Не надо учиться в 95% вузов
нормальных вузов на всех не хватит, кому то и в местные политехи приходится идти
На мой взгляд, лучше сходить в армию, чем в плохой вуз. В обоих случаях потеря времени, но терять 1 год лучше, чем терять 5.
У меня сын поступил в вуз который в первой десятке по рейтинге в России.
А впечатление у меня, что обучение фуфло. Причем, если раньше я помню когда на специалитете учился — на 5м курсе каждый день были занятия по 5 пар. А сейчас уже на магистерском курсе (то есть тот же 5й год обучения) 2-3 дня абсолютно пустых от занятий. Видимо подразумевается «самообучение»?
Причем есть знакомые ребята в других московских вузах и та же история. Много пустых дней.
Подразумевается стажировка в какой-либо компании с частичной занятостью.
Отчасти самообучение, да
Но также и время на выполнение дипломной работы (которую хоть и сдавать через два года, но начинать лучше пораньше(из своего опыта:)))
Но также и время на выполнение дипломной работы (которую хоть и сдавать через два года, но начинать лучше пораньше(из своего опыта:)))
Вы дипломную работу с кандидатской диссертацией не путайте :) Не бывает дипломных работ, которые нельзя с нуля хотя бы за три месяца написать (это занимаясь несколько часов в день, т.е. вполне сочетается и с работой, и с пьянками). Бывают студенты, которые на это кладут большой болт.
ну в вузе это время хотя бы можно потратить на то самое пресловутое самообразование, а также перевестись или вообще уйти. Сами бы в армию сходили, потом бы сказали что лучше
Ну, afaik всё ещё работает стратегия 25-летней давности: идти туда, где лучше преподают математику. Вузов с нормальным преподаванием математики всё-таки больше, чем с нормальным преподаванием программирования (и математики :-D), а Кнута и самому прочитать можно.
Вузов с качетсвенной программой и преподовательским составом можно по пальцам руки перичислить. По сути две столицы и Томск с Новосибом, а в остальном как пишет автор полная рулетка
Добро пожаловать во взрослый мир, где нет никаких Настоящих Взрослых, только мы, вчерашние дети.
Через пять лет Вы ещё и на менеджмент насмотритесь, который решения боится принимать. Через десять начнёте писать вот такие вот комментарии.
Пока в вузах преподают люди, которые боятся кода и ненавидят разработку — никакого фундамента и базы мы не получим
Я бы добавил, а если таких людей в вузе нет, то хотя бы не мешать коллаборациям с IT конторами, которые могут помочь.
Качество преподавания в вузах над оценивать индивидуально, причем по конкретной кафедре.
Тут все начали про то "зачем нужен ВУЗ" и что "а ВУЗы на самом деле для другого", но я позволю себе добавить свой комментарий.
Конечно, современное программирование — это уже давно не узкая дисциплина, а широкое направление, где есть и инжерены, и ученые, и "формошлепы" с низкой квалификацией. И вполне логично, что первых может готовить условный политех, вторых условный универ, третих — ПТУ (колледж).
Но в реальности никто никого из перечисленных специалистов не готовит.
В ВУЗах по CS учат кое-как — то строить схемы, то изучать ассемблер, то писать компилятор на C, и прочее. Общаться со студентами таких факультетов тяжело — а приходилось общаться с разными — от воронежского ВГУ до Иннополиса. Везде похожие проблемы — высокое мнение о своем образовании, трудность думать вне забитой им в головы профессорами концепции (вроде С — лучший язык, все можно написать на С, потому что программа должна быть оптимизированной), и почти полная неспособность работать в реальных проектах.
Конечно, программистам нужны и ученые, которые будут придумывать новые криптоалгоритмы и более эффективные деревья поиска в БД. Но большинство специальностей, которым обучают в ВУЗах — прикладные, и говорить, что, мол, ВУЗ не для этого — наивно. Если ВУЗ не для этого, то почему в программе курса и на дне открытых дверей ВУЗ не говорит, что вы станете крутым ученым в CS (не станете), а говорит, что станете программистом и будете заколачивать бабки?
На данный момент, все, чему может реально научить ВУЗ программиста (говорю про большинство, возможно есть прям очень крутые программы в отдельных ВУЗ) — это умение ориентироваться в потоке информации, искать ее и изучать, а также хорошую базу. Но базу не вида "я знаю, как построить блок-схему", а вида " понимаю устройство БД, понимаю работу CPU с данными, и знаю, как это использовать в своей работе". А также "я знаю, как строить современные распределенные системы, как управлять потоками данных в ней, и я могу прийти в компанию и задизайнить нужное решение, потому что меня 5 лет учили, как это правильно делать."
В реальности же выпускника от CS от не выпускника CS в большинстве случаев отличает знание ассемблера и C, ну и более упорядоченные базовые знания, но кроме этого куча мусора и вбитых в голову суждений професоров, писавших реальные программы лет 30 назад в последний раз.
Тоже зависит. Алгоритмы важны, но их тоже нужно правильно преподавать. Если они даются в виде "мы выучим за полгода 10 популярных алгоритмов, которые нужно зазубрить на экзамен в виде блок-схемы, и которые вам больше не пригодятся в остальном курсе ближайшие 4 года", то толку в этом немного, тупо забудется сразу же после экзамена.
1. Баланс ожидания автора и возможности ВУЗа выполнить эти ожидания.
Имхо автор забывает (хоть и упоминает это), что не все студенты, его окружающие, пришли с достаточно высоким уровнем знаний и ожиданий (как он сам). Система образования выстраивается под навыки, способности и ожидания среднего студента. я сам был похожим, с кучей желания учиться, но в отличие от автора, с худшими начальными знаниями. Если есть желание получить лучшие знания, то можно присоединиться к научно-исследовательской работе в одной из лабораторий университета. Там дадут больше, чем в среднем даёт университет. Только нужно понять как можно быстрей, делают ли в той лаборатории настояющую работу (с публикациями за границей, стажировками, работами по грантам и с кампаниями) или это лаборатория для отчётности перез МинОбриНауки или для пристраивания родственников сотрудников ВУЗа (с публикациями преимущественно в обязательных изданиях ВАКа). Если настоящая, то стоит там начинать сотрудничать с людьми. я именно так и поступил и они мне дали многое.
Другой вариант — параллельно с учёбой работать в IT кампании.
2. Качество преподавания
Имхо, оно резко упало в начале 90х и восстановится не скоро. И не в боязни кода дело. Меня после аспирантуры привлекли к преподаванию в одном из Харьковских ВУЗов. Там бесконечное число проблем, которые при желании преподавателя мешают ему сделать нормальный курс. Тут два варианта действий: а) ехать учиться за границу (не везде, но скорее в англоязычные страны) или б) повышать свои знания как уже описал в п.1.
И главное, понимать что это ВУЗ и по сравнению со школой больше материала отдаётся на самообучение.
Я, как проф программист интересующийся фундаментальными знаниями и систематизацией, пробовал закидывать удочки в разные вузы. Везде был либо игнор, либо отказ. У меня сложилось впечатление, что вузам попросту не нужны люди, которые действительно могут научить чему-то полезному. В итоге — пилю научпоп видосы на ютубе для самообразующихся.
Видосы на ютубе лучше, чем преподавание в вузе, и вот почему:
- больше охват, как в плане количества, так и в плане качества аудитории. Количество очевидно (100 человек потока одного города против натурально всего русскоязычного мира), качество — нет, потому что у человека есть мысль «раз я хотел и жаждал, то все остальные 99 человек с потока тоже хотели и жаждали, просто им не фартануло». Нет, многие таки не хотели. И в вузе вам придётся иметь дело с большим количеством таких людей а в итоге со своей совестью либо плохим КПД. Чтобы наблюдать этот эффект, нужно всего-то попринимать лабораторные работы ближе к концу семестра у какого-нибудь другого потока;
- значительно меньше проблем с формальностями. Вам не нужно даже знать о существовании ФГОС, разнообразнейшей отчетности и подковёрной борьбе, с которой имеют дело штатные сотрудники вузов.
Хотите личного контакта — вот вам Zoom, вот поезда и самолёты (когда их разрешат). На «Медузе» есть отличная статья про то же самое, только в медицине.
Расскажите подробнее, как именно закидывали удочки и что вам отвечали в отказах?
Я пробовал, правда в колледж. Мне сказали что-то в духе "ну подготовь программу обучения, а там посмотрим". До этой подготовки у меня как то руки не дошли, но требование вполне логичное.
Писал письма, откликался на вакансии. Отказы обычные без подробностей. Всё как обычно в общем.
А как они сейчас обучают без вашей программы?
Вузам то нужны специалисты и грамотные преподаватели. Но при этом, лично моё впечатление, что кафедральные сообщества довольно закрыты, туда неохотно принимают людей с улицы. Ещё одной причиной отказов может быть отсутствие в биографии аспирантуры или опыта преподавательской работы в вузе.
Без опыта работы можно пойти на ассистента, но ассистентов обычно набирают из аспирантов и магистров. А лектор, так тот по идеи должен иметь научную степень.
Традиционный путь в преподаватели, лежит через аспирантуру, когда аспирант, должен должен отвести какой-то минимум часов.
В этом деле результат работы видно в конце семестра, и исправить его не всегда есть возможность.
— Мануал, как установить VS 2003 (кажется).
— Курс «c++ c нуля» со скриншотами, где автор свой код под gentoo запускает.
— какой-то мануал по winforms ровесник VS на две страницы.
— Сами лабы (в основном простое, вроде ввод-вывод, сортировка массивов...), внезапно последняя работа — написать на c++ Gui-приложение — каталог книг.
При этом в половине лаб нужно было работать с кириллицей и никаких мануалов о кодировках консоли и перекодировании. Поиск в гугле показал, что подобный набор лаб используют еще по меньшей мере три десятка вузов.
То есть вместо расширения кругозора и систематизации вы просто форматируете людей под Ангуляр — фреймворк с худшей архитектурой, что я встречал.
У Angular конечно не все идеально с архитектурой, но а) у него есть структура, в отличие от React, б) он более распространен, чем Vue, в) он по архитектуре гораздо ближе к C# и к бекенд-коду в принципе. Но причины же вас скорее всего не интересуют, главное похейтить что-нибудь, верно?
человек сможет устроиться на работу после окончания ВУЗА
Это уровень ПТУ, всё же ВУЗЫ должны готовить не линейный персонал.
У Angular конечно не все идеально с архитектурой, но
Да и вакансии сейчас на 90% состоят из Реакта, так что знание Ангуляра не поможет устроиться.
главное похейтить что-нибудь, верно?
Довольно эгоцентрично воспринимать логичные выводы из ваших слов как личную нападку.
Да везде. Мне вот недавно Яндекс звонил:
- Нам порекомендовали вас как крутого фронтендера, вы ищете работу?
- Нет, но открыт к предложениям.
- Мы разрабатываем на Реакте.
- Я могу повысить эффективность вашей работы в несколько раз, но придётся отказаться от Реакта.
- Если мы заходим пересесть с Реакта, то мы вам перезвоним.
Эффективность отдельного человека вообще сложно замерить.
в) он по архитектуре гораздо ближе к C# и к бекенд-коду в принципе
Как будто что-то хорошее А почему вы считаете это преимуществом?
Вам правильно говорят, что "набор знаний с которым проще влиться в стандартный процесс разработки" это уровень ПТУ или колледжа.
Это полезно и правильно, многие делают спецкурсы с практическим уклоном. Но не надо называть это высшим образованием.
После таких статей укрепляется моё убеждение, что в университет надо идти на более фундаментальные и близкие к науке специальности по типу физика или прикладная математика, параллельно изучая область IT. Причина? Все просто. На факультетах по компьютерным наукам (в обычных провинциальных университетах, в топах всё совсем по-другому) вам не дадут знаний того, как устроен рынок сейчас. Вы в любом случае самостоятельно будете учить вещи типа гит, тестирование, ооп, шаблоны проектирования, сборщики проектов, современные языки как тайпскрипт и т.д. И тут возникает другой вопрос: а стоит ли поступать в университет на компьютерные науки ради "базы"? На мой взгляд — нет. Вся база там может уложиться в 2 года обучения. Это преимущественно основы программирования, алгоритмы и сопутствующие им дисциплины (дискретная математика, например).
С другой стороны, если вы осилили условный физфак, то с алгоритмами можете справиться самостоятельно
Просто зарплата удачного джуна в аутсорсе сильно отличается от джуна-физика, плюс ИТшники шире представлены на форумах и ИТ порталах, поэтому и разговоров про образование ИТ больше.
Вот у автора статьи:
При этом даже если предположить, что все они — невероятные спецы по самообразованию, то откуда тогда такая популярность этого самого самообразования.
А вы посмотрите кто двигает науку? Разве те, кто их этому учил? Кто учил Эйнштейна открывать теорию относительности? Кто учил Фейнмана математике?
Всем давали базу, но основную часть своих знаний — самостоятельно. В процессе работы над какими-то теориями, и так далее.
Кто-то преподает и просиживает штаны в учительской, а кто-то преподает и пишет свою монографию и пубикуется, и открывает новое.
До какой же степени чудовищно в точку все вышесказанное. Я человек которого турнули из вуза и сходивший в армию. Прихожу из неё с твёрдой решимостью что я точно обязан всеми силами скрипя зубами учиться. И точно уверен что хочу программировать. Выбираю специальность прикладная информатика (прикладная информатика карл!!!!) и вижу что в учебном плане все дисциплины действительно стоящие внимания — ооп, компьютерная графика и так далее быстро уходят и нас начинают пичкать сраным управлением персоналом! На кой черт я иду специально учиться и тратить 4+ года своей жизни (уже свободной от воинской обязанности) на то чтобы изучать то что мне не нужно и никогда не понадобится. Вот и приходится учиться самостоятельно смотреть лекции из MIT OCW да им уже по 5+ лет но все же это намного лучше того что нам преподают. Смотрю видосы и вот мне в голову пришла идея что чем жаловаться на систему — надо попробовать что-то сделать самостоятельно. И вот я пытаюсь — сейчас я на этапе того что мне приходится писать научную статью (чего я делать не умею от слова совсем) чтобы хоть как то хоть что-то сказать людям о гитхабе потому что это блин то что НЕОБХОДИМО для обучения особенно программированию особенно на самоизоляции говорю с преподавателями а они уде реально старые. Типа со преподша по основам программирования, дай бог здоровью Валентине Александровне, реально старая и она просто не вывозит того что на неё кинула система и у неё тупо нет времени чтобы самой научиться пользоваться гитхабом. И вот я вообще не знаю как это все исправить. Все что я могу сейчас понять это только то что чтобы «войти в айти» надо собственноручно грести говно лопатой а иначе ты нафиг никому не нужен. А уж о единомышленниках я и подумать не могу. Предлагаю идём, предлагаю проекты а тупых студентов 18 летних ничем не пронять тратишь время пытаешься что-то объяснить попробовать новое (зарегайся ты на гитхабе и скинь то что тебе не понятно — я там прямо тебе все объясню в комментариях) но в ответ слышишь только немое и тупое непонимание.
СПБ — ГУАП — 09.03.03
Вообще, информатика и программирование — две разные вещи. Не очень понятно, откуда у Вас были ожидания сильно продвинуться в программировании на специальности "прикладная информатика".
Автор не засветил ВУЗ, а зря. Можно было бы предметно обсуждать.
Как раз в КПИ неплохо ж учат, и актуальным технологиям тоже. Например Flutter не так давно в проде используется, а там уже учат.
Пруф https://www.youtube.com/playlist?list=PLB3Q3FfzbFkTM9WirwrkuE4I-6zBzjg8U
И относительно темы статьи несколько соображений:
1) читать отзывы о преподавателях на профильных сайтах
2) если есть видеозаписи лекций — вообще профит
Чтобы учить программированию не надо быть программистом
Учить, не понимая чему ты учишь… ну не знаю
Задача ВУЗа не научить программированию, а научить учится
В таком случае ВУЗ не нужен. Его можно просто заменить хорошо составленной программой обучения с прилагающимися учебными материалами. И это будет куда лучше.
Нужен или нет ВУЗ каждому решать за себя, просто надо понимать для чего нужен ВУЗ, а для чего ПТУ, разные учебные заведения, задачи у них разные. У автора нет понимания для чего нужен ВУЗ, а для чего ПТУ.
знать предмет который преподает, но это не значит что он должен быть профессиональным программистом
А что в вашем понимании значит «знать программирование»? Давайте более конкретно. Предположим мы говорим о преподаватели, который преподает какой-нибудь язык программирования. Что по вашему значит «знать язык программирования»?
Еще раз напишу есть методика преподавания конкретного предмета, надо методикой владеть, а не знать тонкости фреймворков. Вас могут научить пользоваться циклами с пред условиями и пост условиями, использовать рекурсию, покажут разницу между функциональными языками и декларативными, а ремеслом вы на лабах овладевайте.
автору предоставлялся такой шанс писать код для передовых проектов НАСА?
Человек который не окончил вуз нуда-нуда. Рассуждает о том как там плохо преподают вузе! Что такое база? Это основа, она как каркас у ёлки на которую пнавешивают иголки да игрушки. Основа у человека это набор теоретических знаний и умений. Поэтому преподователи начитывают теорию в большом объеме, что бы основа у человека была все сторонне развита. А уж далее человек сам куёт сви умения и навыки. Поэтому основная задача вуза научить студента искать информацию достраивать основу до конечных знаний. Однако после школы где ученикам все разжевали и в рот положили многие просто неготовы к самостоятельной работе. В результате просто теряются и забивают на учебу.
Знания меняются и задачи меняются.
В 60-тых занимались численными методами. Нужно было строить заводы, небоскрёбы и мосты. Делать станки, самолеты, лайнеры.
В 70-тых электроника и микроэлектронике. Тут на первое место выходит дизайн время развитие кадров и сапр. Появляется теория ООП и ЯП. Последние в прочем предназначены для трансляции мыслий программистов(и "домохозяик") в численные методы. Локальные сети и коммуникации… В 80-тых появляется теория ОС и управления потоками данных, теория алгоритмов и 3-х мерная графика. Время стоновления теории СУБД. В 90-тых теория медленно стоит на месте всё ушло в прикладные области. Появился UML. конец 90-тых начало 2000-ных ООП развивается в теорию шаблонов проектирования сложных систем. 2000-ные Теория управления программистами. Теория рефакторинга и качественного кода. Системы контроля версий. Программирование становиться гумонитарной наукой. 2010 новый веток в теории теории функциональных языков программирования и нейронных сетей в том числе для обработки естественного языков(NLP) и распознования образов. Теория распознавания образов плавно развивается с 70-тых годов.
Преподаватели не сильно успевают за прогрессом. А ещё вуз должен научить заниматься научными изысканиями.
Что касается того, что преподаватели боятся кода? Программисты тоже боятся кода. Никто толком не смотрит код другого. А уж поддерживать код коллег тем паче. Они говорят, что проще новый написать чем разбираться в чужом коде. Приходится бороться с их страхами. И преподавателй легко понять, когда студенты пишут код, то там чёрт ногу сломит. Всё из за того что в школе не преподают чистописание кода. Не учат дробить код на функции. Вот тут кто-то в курсе, что для этого есть метрики токсичности кода?
Вторая причина в программирование трудно сделать компактный и понятный код — по сравнению с физикой и математикой. Так что автоматическая проверка заданий рулит.
Лично мне хорошо преподавали вуз был если не в 10 то 12 номер по стране. Так сложилось что попались сильные преподаватели. Хотя конечно и не всё гладко.
Преподаватели тоже люди они тоже где-то должны учиться. Вот ученики их и учат.
«Преподаватели не сильно успевают за прогрессом» Бедные преподаватели, не могут никак научиться объяснять базовые вещи про ООП… Не могут на код ревью хотя бы сказать «не называй переменные транслитом и делай отступы нормальные». Бедные преподаватели ничего не могут сделать = оказывается ООП появилось месяц назад, а от них уже требуют что-то знать(о, ужас!).
Есть две ролевых ситуации, или игровые стратегии, в первую играет государство(общество), во вторую играет отдельный индивидуум.
С точки зрения, государства ВУЗ — это кузница кадров, который решает ряд проблем, от чисто гуманитарных, дает доступ к высшему образованию для населения, до стратегических — формирует человеческий потенциал для развития того же государства. В общем такая машина, которая выпускает эрудированных специалистов или бакалавров, магистров.
С точки зрения индивидуума. ВУЗ, или высшее образование, это личное конкурентное преимущество.
Глупо, в поисках лучших конкурентных преимуществ предъявлять претензии машине, которая прямо для этого не предназначена.
Если хочется более больших конкурентных преимуществ, так для этого нужно прикладывать личные усилия: самообразование, выбор лучшего вуза и т.д.
Так же глупо обижаться, на машину, на то что она выпускает брак. Да идеальных, машин не бывает, ни физических, ни социальных. Да есть брак, и самое не приятное, что какой-то процент брака является приемлемым, потому что ресурсы на его уменьшение превышают выгоду.
Вероятно, повезло. Ну или дисциплины, которые сложно сломать, потому что основы устоялись к моменту обучения самих преподавателей в вузе (как с каким-нибудь матаном/дифурами).
Я хотел бы видеть, чтобы в вузах на 4-м курсе уже была тематика типа такого. Пока что в основном если что-то и видишь за пределами "указатель этот как чужое имя в кармане пиджака", то фанфики по советской науке 50-летней давности.
Пока в вузах преподают люди, которые боятся кода и ненавидят разработку — никакого фундамента и базы мы не получим