Jump to content

Main Page: Difference between revisions

From Образование СП и КБ
mNo edit summary
Line 1: Line 1:
=Основные сведения=
=Основные сведения=
*Данный ресурс посвящён области высшего образования в области Системного программирования и Кибезбезопасности
*Ресурс посвящён области высшего образования в области Системного программирования и Кибезбезопасности
*С этим ресурсом связан [https://t.me/+EqkKR07sRC00OTUy телеграм-канал "Образование в системном программировании и кибербезопасности"]
*С этим ресурсом связан [https://t.me/+EqkKR07sRC00OTUy телеграм-канал "Образование в системном программировании и кибербезопасности"], состоящий из двух тем:
** Телеграм канал состоит из двух тем:
**'''Релевантные новости''', где любой участник может добавлять релевантные, по его мнению, ссылки и новости
***'''Релевантные новости''', где любой участник может добавлять релевантные, по его мнению, ссылки и новости
**'''Обсуждение''', где участники могут делится своими мыслями и участвовать в обсуждении
***'''Обсуждение''', где участники могут делится своими мыслями и участвовать в обсуждении
=Материалы по теме=
==[[Круглый стол «Cистемное программирование в высшем образовании: состояние и перспективы» (12.12.2025)]]==


=История возникновения=


=Предметы/области имеющие отношение к системному программированию=
=Предметы/области имеющие отношение к системному программированию=
Line 67: Line 67:


В качестве примера разницы классического преподавания и потенциально «модного» преподавания курса по компиляторам можно привести: преподавание «на пальцах» и «листочках» против преподавания в виде написания небольших программ с использованием компиляторной инфраструктуры LLVM. В чём-то эту разницу и уровень восприятия студентов можно сравнить с прикладным и системным программированием — наглядность против системности или создание вещи против понимания принципа такого создания.
В качестве примера разницы классического преподавания и потенциально «модного» преподавания курса по компиляторам можно привести: преподавание «на пальцах» и «листочках» против преподавания в виде написания небольших программ с использованием компиляторной инфраструктуры LLVM. В чём-то эту разницу и уровень восприятия студентов можно сравнить с прикладным и системным программированием — наглядность против системности или создание вещи против понимания принципа такого создания.
=Материалы по теме=
==Круглый стол «Cистемное программирование в высшем образовании: состояние и перспективы» (12.12.2025 )==
* Проходил в рамках Открытая конференция ИСП РАН
* В круглом столе приняли участие представители следующих ВУЗов
** МФТИ, МГУ, МИЭМ ВШЭ, МГТУ, МИРЭА, Академия ФСО, НовГУ, СГУ, СКФУ, ОГУ и др.
* А также компании заинтересованных в подготовке кадров
** ФОБОС-НТ, КСБСОФТ и др
* [https://vkvideo.ru/video-214485707_456239031?t=3m26s&ref_domain=isprasopen.ru Полная запись трансляции круглого стола]
** [https://vkvideo.ru/video-214485707_456239031?t=13m58s Директор ИСП РАН, Аветисян Арутюн Ишханович]
*** [https://vkvideo.ru/video-214485707_456239031?t=1h21m47s Фрагмент про необходимость ускоренной подготовки кадров]
*** [https://vkvideo.ru/video-214485707_456239031?t=3h10m8s Фрагмент про лаборатории]
** [https://vkvideo.ru/video-214485707_456239031?t=1h27m31s Владимир Макаров, НовГУ]
** [https://vkvideo.ru/video-214485707_456239031?t=1h33m54s Позин Борис Аронович, МИЭМ ВШЭ]
** [https://vkvideo.ru/video-214485707_456239031?t=1h55m0s Гринкруг Ефим Михайлович, МИЭМ ВШЭ]
** [https://vkvideo.ru/video-214485707_456239031?t=2h10m12s Лапина Мария, СКФУ]
** [https://vkvideo.ru/video-214485707_456239031?t=3h2m43s Инна Батраева, СГУ]
* Презентации
** [https://nextcloud.ispras.ru/index.php/s/qs8SgRDQA7RoT4j/download КСБСОФТ, Михаил Шипицын]
** [https://nextcloud.ispras.ru/index.php/s/wJLMgnpqrL4AyYg/download МГТУ, Екатерина Вайц, Егор Погорелко]
** [https://nextcloud.ispras.ru/index.php/s/mA7HYTTYcxCi5Ne/download МГТУ, Андрей Тихонов]
** [https://nextcloud.ispras.ru/index.php/s/a5qDn3zc3snB24p/download МИРЭА, Шамиль Магомедов]
** [https://nextcloud.ispras.ru/index.php/s/3oSYemAqmW5mNwH/download МИРЭА, Пётр Советов]
** [https://nextcloud.ispras.ru/index.php/s/2FXS6HHoskwnbjp/download МФТИ, Гетьман Александр]
** [https://nextcloud.ispras.ru/index.php/s/eaYNnGdpNskEPTw/download ФОБОС-НТ, Дмитрий Пономарев]


=Участие в наполнении ресурса=
=Участие в наполнении ресурса=

Revision as of 16:21, 15 February 2025

Основные сведения

  • Ресурс посвящён области высшего образования в области Системного программирования и Кибезбезопасности
  • С этим ресурсом связан телеграм-канал "Образование в системном программировании и кибербезопасности", состоящий из двух тем:
    • Релевантные новости, где любой участник может добавлять релевантные, по его мнению, ссылки и новости
    • Обсуждение, где участники могут делится своими мыслями и участвовать в обсуждении

Материалы по теме

Круглый стол «Cистемное программирование в высшем образовании: состояние и перспективы» (12.12.2025)

Предметы/области имеющие отношение к системному программированию

Список очень приблизительный и может пополняться

  • Разработка ядер ОС и драйверов устройств
  • Структуры данных и алгоритмы
  • Ассемблер и архитектура компьютера
  • Программирование на языке С
  • Компиляторные технологии: Языки программирования, Формальные языки, Оптимизации, Компиляторы
  • Разработка новых алгоритмов машинного обучения, подходов к оптимизации, защиты от атак
  • Разработка СУБД
  • Разработка распределённых систем
  • Параллельные вычисления
  • Компьютерные сети
  • Верификация ПО
  • Программирование на языке Rust
  • Функциональные языки программирования
  • Вычислительная математика
  • Криптография

Кибербезопасность, как специализация системного программиста

Важность вопросов кибербезопасности, т.е. безопасности программно-аппаратных информационных систем, в современном мире трудно переоценить. Одним из отражений этого факта является то, что в начале 2021 года в номенклатуру научных специальностей, по которым присуждаются учёные степени приказом Минобранауки была добавлена новая специальность 1.2.4 «Кибербезопасность» (Естественный науки/Компьютерные науки и информатика).

Паспорт новой специальности, помимо непосредственного описания научной области, содержит раздел «Смежные специальности», включающий следующие пункты:

  • 1.2.2. Математическое моделирование, численные методы и комплексы программ
  • 1.2.3. Теоретическая информатика, кибернетика
  • 2.3.6. Методы и системы защиты информации, информационная безопасность

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

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

Рис. 1. Предполагаемое изменение распределения тематики преподаваемых дисциплин по этапам высшего образования

Кроме вышесказанного необходимо принять во внимание, что помимо двухуровневой системы «бакалавриат-магистратура» существует одноуровневая система специалитета. Ещё важно учесть высокую потребность государства и рынка в специалистах по кибербезопасности и потенциальном механизме преодоления кадрового голода на основе ДПО. Таким образом, полная картина с учётом этих траекторий выглядит так, как представлено на рис. 2.

Рис. 2. Предполагаемое изменение распределения тематики преподаваемых дисциплин по этапам высшего и дополнительного образования

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

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

Учёт этой специфики (особенно второй части) — обязанность администрации. В идеальном случае, который, тем не менее, встречается на практике, администрация обеспечивает таких преподавателей как административной поддержкой для написания и актуализации рабочих программ, так и ассистентами, выполняющими проверку домашних заланий. Другим важным кадровым резервом по IT-специальностям, который на данный момент массово используется некоторыми ВУЗами являются студенты старших (3+) курсов, которые обычно ведут семинары, но, в ряде случаев (обычно это уже магистры и аспиранты), могут выступать и в роли лекторов (возможно, невполне оффициально). В определённых ситуациях это может быть более чем оправданно, так как зачастую эти студенты работают начиная с младших (иногда 1) курсов и имеют достаточно богатый практический и, что особенно важно, максимально актуальный, опыт. Это важно так как IT-область крайне быстро развивается - появляются новые ЯП, фреймворки, парадигмы и т.д., что имеет и отрицательную стороны — быстрое устаревание знаний, получемых в ВУЗе.

В то же время, важно отметить, что значительная часть сказанного выше относится в большей степени к «классическому» прикладному программированию. На данном этапе уровень развития и степень снижения порога вхождения таковы, что прикладное программирование можно сравнить с массовым производством. К предметам прикладной разработки можно отнести: ООП (С++, Java), Python, частично ML (фреймворки, DataScience), Web-разработка, ОС и СУБД (с точки зрения использования, а не их разработки).

В области системного программирования упомянутых положительных эффектов почти нет, и, в тоже время, есть ряд отрицательных. Среди причин можно упомянуть достаточно высокий порог входа в область (это объективный факт). Соответственно это гораздо менее не массовая история, чем прикладное программирование, как среди студентов, так и среди компаний-потребителей. Студенты на 1 курсах работающие в области СП — близкий или равный пустому класс. Соответственно, кризис кадрового голода в области СП гораздо более острый чем всреднем по IT. Причём, проблема в каком-то смысле усугубляется к старшим курсам. Приведём пример курса по разработке ядра ОС (~3 курс). Для его качественного усвоения необходимы хорошие знания по: ассемблеру и архитектуре компьютера, базового курса по ОС, программирования на языке С. Эти предметы читаются на младших курсах (1-2) и проблемы с преподавателями на этих курсах напрямую отражаются на проблемах усвоения предметов на старших курсах. Ещё одна проблема СП носит маркетингово-психологический характер. Студенты живут в мире высоких зарплат в области прикладного IT с гораздо меньшим порогом входа по сравнению с СП. Таким образом СП вынужденно конкурирует с прикладной разработкой и находится в невыгодной позиции журавля в небе по отношению к синице в руках (чей размер, визуально приближается к журавлю). Причём проблема заключается не только в выборе студентом карьерной траектории, но и в соответствующем изменении отношения к предметам, часть из которых ему для карьеры «нужны», а часть - «избыточная нагрузка». Это, в свою очередь, в значительной степени демотивирует преподавателей-профессионалов, т. к. противоречит одной из их целей — воспитание и обучение новых сотрудников для своих команд.

Фактор образа «высокодоходного» сектора с низким порогом входа у прикладного программирования имеет ещё один разрез — представления студентов о разработке ПО, в котором прикладное ПО это стильно, модно и молодёжно, а ОС и компиляторы — это что-то древнее, давно разработанное, «низкоуровневое» (читай «ущербное») и никому не нужное — тогда зачем этому учить и учиться? (Напрашивающийся у студента ответ: «Наверное по инерции администрации и преподавателей», которые не могут учить по новому, а студенты не хотят по старому) Для преодоления этого очень мощного тренда необходимы массовые просветительские лекции с примерами (вплоть до максимально простых — вот задача, вот зарплата за её решение) от авторитетных лиц. Сказанное выше ставит трудноразрешимую задачу для администрации — поиск профессиональных педагогов для закрытия необходимых дисциплин. Зачастую администрация идёт по лёгкому пути снижения требований к преподавателям («хоть кто-то лучше, чем никто»). Можно отметить, что в «топовых» (термин условный) ВУЗах этому могут препятствовать студенты и абитуриенты, которые преодолевают очень высокий проходной барьер и имеет соответствующие требования к содержанию и качеству преподавания предметов. Кроме того в среде азаимодействия абитуриетнов и «топовых» ВУЗов в момент совершения выбора имеется абсолютно рыночная ситуация, где и абитуриенты выбирают ВУЗы «получше» и ВУЗы стремятся заполучить абитуриентов «получше». У вторых это обусловлено как текущим, так и будущим KPI (количество олимпиадников, средний балл и т.д.). Будущий KPI — это KPI на будущий год, который является функцией от KPI текущего года, так как то как был закрыт KPI этого года (а это публичная информация) очень сильно влияет на выбор абитуриентами ВУЗа в следующем году.

Ещё один важный аспект сказанного выше — конкуренция среди ВУЗов за абитуриентов, которая выражается очень разнообразно: - улучшение условий проживания/обучения (например, общежития «квартирного» типа) - стипендии и единоразовые выплаты за высокие достижения при поступлении в соответствующий ВУЗ (100 за 100) - обилие информационных и развлекательных мероприятий, часто связанных с олимпиадами высокого уровня для попадания в целевую аудиторию - регулярное обновление и создание новых учебных планов — добавление новых (часто - «модных») дисциплин и переименование существующих с адаптацией под веяния времени

Всё вышеперечисленное приводит к обилию информационного «шума», который часто сурывает от абитуриентов реальную картину, которая на практике меняется мало (высшее образование всё таки достаточно консервативная область). Для преодоления этого эффекта необходимо проводить регулярные разъяснительные и профориентационный мероприятия в тех же условиях, что и указанные выше (привязанные к высокоуровневым олимпиадам)

Ещё одним очень важным фактором является географический. Условно «топовые» ВУЗы восновном находятся в двух столичных агломерациях, что приводит к «высасыванию» талантливых абитуриентов из регионов при том,что, оценочно, отдельные виды преподавания в регионах могут иметь более высокий уровень (см. тезис «образование — это люди»). Особенность связанная с «немодностью» части СП курсов у студентов, а также их высокие требования как к содержанию предметов, так и к формату преподавания приводят к тому, что для того чтобы заинтересовать студента соответствующим предметом (если такая задача ставится) приходится прилагать очень значительные усилия (подготовка и ведение курса становится очень ресурсоёмким по времени).

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

В качестве примера разницы классического преподавания и потенциально «модного» преподавания курса по компиляторам можно привести: преподавание «на пальцах» и «листочках» против преподавания в виде написания небольших программ с использованием компиляторной инфраструктуры LLVM. В чём-то эту разницу и уровень восприятия студентов можно сравнить с прикладным и системным программированием — наглядность против системности или создание вещи против понимания принципа такого создания.

Участие в наполнении ресурса

  • Для участия в наполнении страницы можно написать на почту sp-kb-edu@ispras.ru
    • Представиться
    • Указать название организации (если такова есть, или нескольких), которую вы представляете
    • Указать должность, если таковая есть
    • Кратко описать - почему данная тематика интересна/важна для вас
    • Указать контакт в телеграме (если есть)
    • Указать желаемый логин и почту, на которую после регистрации придёт письмо с паролем