Планировщик встреч (проект)
Ментор | Чичварина Екатерина |
Учебный семестр | Весна 2016 |
Учебный курс | 1-й курс |
Максимальное количество студентов, выбравших проект: 5 | |
Что это за проект?
Вопрос "когда всем удобно?" возникает в наши дни достаточно часто. На работе нужно синхронизировать большое количество людей из разных отделов для работы над общим проектом, в учебных заведениях - составлять расписание, в свободное время - планировать совместные встречи, конференции и другие мероприятия.
Предлагается написать свой инструмент с простым web-интерфейсом, который позволяет обрабатывать данные о занятости большого количества людей и подбирать подходящие варианты при заданных условиях (минимальное необходимое число участников, длительность встречи, даты, в рамках которых ее надо запланировать). Программа-максимум - применить к реальным данным (например, анализатор встреч друзей "вконтакте").
Чему вы научитесь?
- Алгоритмы нахождения пересечения множеств
- Проектирование интерфейсов, использование протокола HTTP, взаимодействие интерфейсной и серверной части
- Шаблонизаторы для python
Какие начальные требования?
Основы Python Желание познакомиться с html и другими средствами веб-разработки
Какие будут использоваться технологии?
- Стандартная библиотека Python
- HTML/XML шаблонизатор для Python (например, Python Template Toolkit, Jinja, Chameleon)
Темы вводных занятий
Направления развития
Можно развивать интерфейсную часть (начать со статического изображения таблицы занятости, а затем сделать ее интерактивной). Можно расширять область применения (учиться подгружать и парсить реальные данные, например, из соц.сетей, либо анализировать другие сущности, например, количество запущенных в системе программ).
Критерии оценки
4-5: написан скрипт, принимающий на вход tsv файл занятости участников и основные требования и выдающий возможные интервалы пересечения можно дернуть его из браузера, передав имя файла и ограничения, и получить ответ (статический текст или таблица с закрашенными ячейками)
6-7: улучшить интерфейс за счет добавления ввода данных и загрузки файла, можно не использовать шаблонизатор
8-10: Использовать шаблонизатор. Альтернативное направление - подключение реальных источников данных вместо статического файла.
Ориентировочное расписание занятий
ПН недоступен
ВТ недоступен
СР 10:00 - 13:00
ЧТ 10:00 - 13:00
ПТ 10:00 - 13:00
СБ 12:00 - 15:00