Организация проектов по C++: как это было
Одна из особенностей бакалаврской программы «Прикладная математика и информатика» — проектная деятельность. Студенты вовлекаются в работу над проектами с самого первого семестра: сначала они занимаются учебными, а затем и реальными задачами от IT-компаний. В организации проектной деятельности активное участие принимают студенты старших курсов. Например Наташа Мурашкина, студентка из набора 2016 года, была одним из идеологов командных проектов по C++ у первокурсников. В этой статье Наташа рассказала, откуда возникла такая идея, как она с сокурсниками координировала работу 80 человек и что в итоге получилось.
Наташа Мурашкина, студентка из набора 2016 года
Как все начиналось
На нашей программе проектной деятельности уделяется действительно большое внимание. Сейчас в первом семестре студенты могут попробовать свои силы в мини-проекте на Python, во втором — участвуют в обязательном командном проекте по С++, в четвертом — делают проект под Android. С третьего курса студенты работают над научно-исследовательскими задачами, которые плавно перетекают в диплом.
Мне нравится думать о проектной деятельности так: все студенты проходят одинаковые, хорошо структурированные курсы в университете, но именно проекты позволяют применить эти знания, развивают прикладные навыки и выделяют студентов из толпы. Проекты — это максимально приближенная к реальной профессиональной жизни деятельность.
Когда я училась на первом курсе, в нашей программе был проект по C++. К сожалению, опыт получился неудачным: уровень выданных проектов был довольно разным, у проверяющих не хватало времени, чтобы глубоко разобраться во всех возникающих вопросах. В итоге у следующих курсов эти проекты просто отменили.
Ситуация изменилось три года спустя. На нашей программе случились перемены: мы переехали в Питерскую Вышку. В воздухе ощущалось желание пересмотреть учебный план, и руководители нашей программы очень захотели вернуть проекты на первом курсе. Я загорелась этой идеей и записалась в команду организаторов.
Первый раз мы практически с нуля запустили проекты по C++ в весеннем семестре 2019/2020 учебного года. Два года мы работали командой, а сейчас, когда большинство процессов уже устоялись, и понятно, что нужно делать, организацией занимаюсь я одна. А моя коллега по этой работе Саша Орлова взялась за организацию проектов по Android для второкурсников.
Сложности, с которыми мы столкнулись
Наша команда организаторов состояла из шести человек: пятеро студенток четвертого курса и Егор Суворов, который на тот момент оканчивал магистратуру, а сейчас преподает С++. Мы проходили стажировки в российских и зарубежных компаниях, поэтому имели некоторые представления о построении процессов. Но несмотря на это, было страшно сделать что-то неправильно. Какие темы проектов придумать? Где брать проверяющих код?
В итоге после долгих обсуждений мы пришли к решению: это будут командные проекты по трое студентов, всего 20 команд. Ребята сами придумают себе темы, а мы каждой команде назначим ментора из индустрии, имеющего опыт работы на плюсах. Шестьдесят студентов и двадцать менторов, итого 80 человек, для которых мы взялись организовывать первоклассный опыт менторинга и работы над проектом. Страшно подумать! Мы еще никогда не организовывали столько человек.
Самая сложная задача, которая перед нами возникла — поиск менторов. В первый год было тяжелее всего: мы не могли похвастаться результатами проектов прошлых лет, бренд нашего бакалавриата был не очень известен. К счастью, в тот момент мы уже начали вести блог факультета на Хабре и рассказывать об успехах старшекурсников: их стажировках, проектах и опубликованных статьях. Это позволило показать уровень подготовки студентов и убедить менторов, что их время пройдет с пользой.
Мы стучались во все двери, писали о возможности поменторить в соцсети и тематические чаты по программированию и по С++, у кого была работа — предлагали коллегам. Добрая часть менторов — наши хорошие знакомые и друзья. Однако, на наше удивление, к нам приходили менторы через много рукопожатий. Невероятно приятно было видеть интерес совершенно незнакомых людей, живущих по всему миру.
В этом году первое поколение студентов, которым мы проводили проекты, учится на третьем курсе, и четверо из них впервые берут менторить свои команды первокурсников. Это бесценное ощущение!
Защита проектов
Мы очень серьезно подходим к проектной деятельности. Чтобы получить оценку, нужно провести значительную работу, и даже на тройку придется постараться. С началом научно-исследовательских проектов на третьем курсе необходимо не только выполнить работу, но ещё и обосновать актуальность и применимость работы, доказать целесообразность подхода, сравнить результаты с предыдущими работами.
Первые защиты у студентов начинаются как раз на наших командных проектах по С++. Практика показывает, что ребята совсем не подготовлены выступать с техническими презентациями. Часто их презентации выглядят как реклама функциональностей проекта и спецэффекты, а если они и рассказывают технические детали, то не всегда делают акцент на важных особенностях. Чтобы научить их, как правильно докладывать о результатах своих проектов, в середине семестра мы проводили тренировочные защиты.
На тот момент я уже защищала не один свой проект, но впервые оказалась по другую сторону процесса. Хочу сказать, что отслушать 20 студенческих проектов — это совсем не просто. Очень легко похвалить всех и поставить пять. Невероятно сложно дать релевантную обратную связь, выделить суть проекта, задать правильные вопросы, и самое главное — дать студентам понять, как изменить презентацию, чтобы их выступление стало лучше.
И немного полезной информации: рекомендации, как подготовить хорошую техническую презентацию, руководитель нашей программы Александр Владимирович Омельченко собрал в этом посте.
Что в итоге у нас получилось
За два года студенты сделали чуть больше 40 проектов, а в конце этого учебного года к коллекции добавится еще 20. Несколько команд написали лонгриды про свои проекты в блоге программы на Хабре (например, вот, вот и вот).
Помимо этого, студенты включают плюсовый проект в резюме, и некоторым удается попасть на стажировку мечты уже после первого-второго курса. Не смотря на то, что мы рекомендуем студентам младших курсов летом отдыхать, а не работать, нельзя не радоваться их достижениям.
В отзывах студенты в первую очередь пишут, что лучшее в проектах — общение с ментором и командная работа. А еще что они рады применить знания плюсов на своем, живом проекте, самостоятельно разбираться в технологиях, работать над непредсказуемой, по сравнению с домашками, задачей.
И мы рады за них, ведь такие проекты были мечтой всей команды организаторов на нашем первом курсе шесть лет назад, и мы смогли воплотить ее в реальность. К тому же, мы получили бесценные навыки и опыт в процессе организации. Очень здорово, что на нашей программе поощряется инициативность: можно брать дела в свои руки и менять их к лучшему. И это тоже является частью обучения: не для школы, а для жизни.