Реализация собственного проекта
Последнее задание подразумевает реализацию собственного проекта. Для проекта можете выбрать любую задачу, решить которую для вас было бы интересно (не обязательно, чтобы идея была новой). Постарайтесь использовать разные технологии. Результат вашей работы должен быть выложен на github'е или bitbucket'е (в зависимости от используемого вами репозитория).
Следующие технологии являются обязательными для всех проектов:
- Создание виртуального окружения для вашего проекта (virtualenv).
- Использование системы контроля версий (git). Коммиты должны быть регулярными.
- Тестирование проекта на разных стадиях разработки (unittest).
В своих проектах постарайтесь использовать технологии, с которыми вы плохо знакомы или не знакомы вообще - изучите что-то новое, например, django-channels (модуль позволяющий работать с веб-сокетами в Django), celery (Celery is an asynchronous task queue/job queue based on distributed message passing), rabbitmq, mongodb (документоориентированная система управления базами данных), asyncio, tornado (Tornado is a Python web framework and asynchronous networking library), skikit-learn (набор инструментов для анализа данных и машинного обучения).
Вот небольшой список идей для проектов:
- Написание своей социальной сети (Твиттер/ВК/Instagram и т.д.)
- Сбор данных по хештегу в социальной сети ВК в режиме реального времени (вывод статистики и графиков по собираемым данным)
- Проложение безопасного маршрута по городу