Основы программирования в Python (Политология 2020)

Материал из Wiki - Факультет компьютерных наук
Перейти к: навигация, поиск

О курсе

borderless


Курс читается для студентов ОП "Политология" в 1-2 модулях 2020-2021 уч. года и реализуется в формате blended learning: студенты прослушивают лекции в режиме онлайн и посещают очные семинары.



Полезные ссылки

Карточка курса и программа

Основной используемый онлайн-курс на платформе DataCamp

Преподаватели семинаров

Группа Преподаватель Учебный ассистент Расписание
БПТ181 Жучкова Светлана Васильевна Анна Букреева, @ann_bukreeva (Telegram) понедельник, 9:30 - 12:30 (возможны изменения, следите за расписанием)
БПТ182 Жучкова Светлана Васильевна Руслан Сулейманов, @rus_slm (Telegram) суббота, 11:10 - 14:20 (возможны изменения, следите за расписанием)
БПТ183 Филатов Михаил Михайлович Файн Егор, @feinegor (Telegram) понедельник, 9:30 - 12:30 (возможны изменения, следите за расписанием)
БПТ184 Филатов Михаил Михайлович Файн Егор, @feinegor (Telegram) суббота, 11:10 - 14:20 (возможны изменения, следите за расписанием)

Формула оценки

Результирующая оценка по дисциплине рассчитывается по формуле:

Oитог = 0.2 * Oкр + 0.15 * Oдз + 0.15 * Oтесты + 0.1 * Oонлайн + 0.4 * Oпроект

Контрольная работа (20%)

Контрольная работа проводится в конце первого модуля и рассчитана на 80 минут. Контрольная работа состоит из двух частей: теоретической (40 минут) и практической (40 минут). Теоретическая часть включает несколько тестовых вопросов и вопросов с развернутым ответом по базовым фактам о языке программирования Python (типы данных, изменяемость объектов, особенности работы с разными объектами Python), а также задания с небольшими отрывками кода, в которых необходимо найти ошибки или пояснить, что будет выведено на экран при исполнении кода. Практическая часть включает три задачи по программированию (по темам первого модуля), выполняемые на компьютере. Во время выполнения теоретической части пользоваться какими-либо материалами нельзя, во время выполнения практической части можно использовать материалы курса, а также интернет. Во время контрольной запрещается общаться с другими студентами, использовать мобильные телефоны, открывать социальные сети и создавать новые вопросы на компьютерных форумах и ресурсах по типу stackoverflow. В случае нарушения правил проведения контрольной работы студент удаляется с контрольной работы с оценкой «0». К нарушениям правил проведения контрольной работы относятся: коммуникация с другими студентами во время выполнения работы, использование социальных сетей/телефона во время работы (с любой целью), списывание. Оценка за аннулированную контрольную работу не может быть восстановлена с помощью устной защиты. Оценка за контрольную работу рассчитывается как доля набранных баллов из всех возможных баллов, домноженная на 10 (без округления).

Домашнее задание (15%)

Домашние задания предполагают решение задач по программированию по пройденным темам. С учетом разного уровня подготовки студентов домашние задания представляют собой набор задач разной сложности, которые весят разное количество баллов. В начале каждого домашнего задания указано общее число баллов, которое нужно набрать, чтобы получить оценку 10. Таким образом, студент может выбирать, какие задачи ему решать. Например, если за все домашнее задание нужно набрать 8 баллов, чтобы получить оценку 10, студент может решить 8 задач по одному баллу или 4 задачи по одному баллу и одну задачу на 4 балла. Кроме того, студент может решить больше задач, чтобы потренироваться. Все задачи будут проверены и оценены, но получить оценку выше 10 за домашнее задание невозможно. Итоговая оценка за блок домашних заданий, которая подставляется в формулу оценивания, представляет из себя среднее арифметическое оценок за домашние задания (без округления).

При обнаружении списывания в домашних работах (под списыванием понимается идентичное или близкое к идентичному решение заданий, в т.ч. с переименованием используемых переменных и объединением нескольких строк кода в одну или наоборот и т.п.) оценка за работу обнуляется. Работа студента, предоставившего свою работу для списывания, также аннулируется. По желанию студента и решению преподавателя может быть назначена устная защита аннулированной домашней работы для восстановления оценки. Устная защита работы предполагает ответы на вопросы преподавателя по случайным фрагментам кода. Устная защиты работы для восстановления оценки может быть назначена не более трех раз в течение курса для каждого студента.

Тесты (15%)

Тесты представляют собой набор открытых вопросов и вопросов с выбором ответа по пройденным темам (разобранным очно или онлайн на платформе DataCamp). Тесты направлены на проверку теоретических знаний студентов по программированию в Python: назначение и особенности работы операторов, устройство управляющих конструкций и циклов, особенности типов и структур данных, типы ошибок. Тесты проводятся в начале семинара и рассчитаны на 15 минут. Во время теста пользоваться какими-либо материалами нельзя. Оценка за тесты, которая подставляется в формулу оценивания, представляет собой среднее арифметическое за все тесты (без округления).

Онлайн (10%)

Эта часть предполагает выполнение блоков из онлайн курсов на платформе DataCamp по разбираемым темам. Перед семинаром на платформе DataCamp вывешивается задание с фиксированным дедлайном – просмотреть материалы по определенной теме и выполнить предложенные в блоке задачи. Оценка за онлайн часть, которая подставляется в формулу оценивания, представляет собой долю выполненных студентом блоков от общего числа заданных блоков, домноженную на 10 (без округления).

Проект (40%)

Проект представляет собой написание корректно работающей программы прикладного назначения с последующей устной защитой в виде презентации. Проект включает в себя следующие части: план работы (описание идеи, функциональности, источников данных для будущей программы), программа Python (файл с расширением .py или файл Jupyter Notebook с расширением .ipynb), pdf-файл с описанием назначения и принципов работы программы (документация) и презентация, включающая публичную демонстрацию работы программы. Проект обязательно должен включать использование навыков, полученных в результате прохождения тем второго модуля, а именно выгрузку данных с веб-страницы или с помощью API, сохранение данных в датафрейм pandas с последующей их обработкой. Программа, выполняемая в рамках проекта, должна иметь возможность принимать данные от пользователя, в ней должны быть обработаны встретившиеся во время разработки исключения, и она не должна выдавать никаких ошибок во время пользовательской сессии. Проект выполняется индивидуально или в группе из 3-4 человек. При коллективной защите проекта все члены группы должны быть подготовлены и готовы ответить на вопросы по проекту, каждому участнику группа ставится индивидуальная оценка за защиту.

Оценка за проект определяется по следующей формуле (без округления):

Oпроект = 0.15 * Oплан + 0.4 * Oпрограмма + 0.15 * Oдокументация + 0.3 * Oпрезентация

Материалы семинаров

TBA