Чем занимались студенты?

В рамках курсовых работ студенты-программисты глубоко погружались в комбинаторные алгоритмы — исследовали их, проводили анализ и реализовывали на языках программирования. Кто-то работал с триангуляцией, кто-то использовал VK API, кто-то создавал алгоритмы для построения оптимальных маршрутов.

Какие были проекты?

Богдан Красильников

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

Пришлось приложить массу усилий,чтобы решение задачи не приводило каждый раз к комбинаторному взрыву и экспоненциальному росту сложности алгоритма. Для этого я придумал и реализовал немало оптимизаций, которые должны были облегчить решение без заметной потери точности. Самым приятным был момент, когда приложение впервые построило логически обоснованный маршрут до землянки на берегу Большой Кокшаги, а не зависло в очередной раз.

Даниил Долгоруков

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

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

Что думают преподаватели?

Керим Арнабердиев — заведующий кафедрой программных систем.

Темы проектов были интересными. Понравилось, что ребята работали с реальными данными: с реальной картой, с реальными даннымииз VK. Однако не все сделали всё, что планировалось в рамках курсовой, ещё есть к чему стремиться.

Алексей Малов
— ведущий архитектор iSpring.

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

Игорь Соколов
Автор статьи
Игорь Соколов
Как мы учим программированию
Как мы учим программированию
«Гонка данных» и «дедлок» – два «демона» Параллельного программирования
«Гонка данных» и «дедлок» – два «демона» Параллельного программирования
Чего нет в Институте iSpring?
Чего нет в Институте iSpring?
Как проходят пары по контролю качества ПО
Как проходят пары по контролю качества ПО