===== Список проектов ===== ==== 1. Помощник фотографа ==== Приложение облегчает создание красивых фотографий путем отображения сеток поверх видоискателя, то есть перед тем, как делать кадр, фотограф сможет совместить объекты в кадре с линиями сетки (центром кадра, центральным квадратом/прямоугольником, спиралью Фибоначчи и тд). Функции: Рисование реального уровня горизонта и вертикали поверх кадра. Отображение сеток поверх кадра по схемам: * http://fototips.ru/teoriya/zolotoe-sechenie-i-proporcii-fibonachchi/ * http://fototips.ru/praktika/9-sovetov-po-kompozicii-ot-stiva-makkarri/ * http://fototips.ru/praktika/kak-rabotat-s-kompozicionnymi-liniyami/ Реализация под IOS https://github.com/moevm/adfmp18-photo-assistant Необходимо реализовать аналог на Android+Kotlin. **Ожидаемый результат**: Android приложение на Kotlin. ==== 2. Кастомный клон игры Каркассон ==== Реализуйте клон игры Каркассон Правила: https://gaga.ru/gaga/files/pdf/rules/ru/1.pdf Описание: https://gaga.ru/game/carcassonne/ Что необходимо изменить: - плитки шестиугольные - картинки для игры http://pousse.rapiere.free.fr/tome/ Мультиплеер - только hotseat **Ожидаемый результат**: Android приложение на Kotlin. ==== 3. Озвучивание активности на гитхабе ==== Цель: Необходимо реализовать аналог приложения http://listen.hatnote.com/ для актуальной статистики Github в реальном времени. Задачи: - получение актуальной статистики из github в реальном времени - воспроизведение / синтез звуков - работа в фоновом режиме **Ожидаемый результат**: веб-приложение на языке Python3, которое на бакенде получает данные о статистике Github, а на фронтенде - визуализирует и озвучивает её. ==== 4. Автоматизация работы преподавателя в курсах по программированию и информатике ==== Требуется реализовать веб-приложение, позволяющее: * Авторизоваться через Stepik * Проверить факт прохождения курсов на Stepik у студентов * Графики среднего прогресса группы (количество решенных всеми задач/количество всех заданий курса)*количество человек в группе. * Графики среднего прогресса группы по каждой лабораторной работе. * Статистика по прохождению студентами курса. Статистика включает: дату первого удачного решения на степик, дату первого неудачного решения на степик, даты первого решения для каждой лабораторной работы. Список студентов указывается через ссылку на гугл-таблицу в конфиг файле, список курсов - через конфиг файл. **Ожидаемый результат**: веб-приложение на языке Python3, которое позволяет посмотреть статистику по студентам и курсам. ==== 5. Информационная система кафедры: учёт студентов ==== Требуется расширить функционал компонентов информационной системы кафедры, которые обеспечивают: * Управление студенческими данными * Импорт/экспорт данных * Рейтинги по предметам, курсовые, практики. * Генерация отчетов. **Ожидаемый результат**: веб-приложение на языке Python3/Flask + MongoDb. ==== 6. Информационная система кафедры: научная работа ==== Требуется портировать на Flask и расширить функционал компонентов информационной системы кафедры, которые обеспечивают возможность ввода/обработки/хранения/предоставления информации о: * публикациях/научных трудах (группировка по годам/людям) * участии (достижениях) в конференциях/конкурсах/НИОКР и т.д. * численности аспирантов, докторантов, соискателей и стажеров * Также приложение должно обеспечивать разные уровни доступа к информации для различных пользователей. **Ожидаемый результат**: веб-приложение на языке Python3/Flask + MongoDb. ==== 7. Информационная система кафедры: индивидуальный план преподавателя ==== Требуется портировать на Flask и расширить функционал компонентов информационной системы кафедры, которые обеспечивают управление индивидуальными планами преподавателей: * Планирование учебной нагрузки * Переподготовка и повышение квалификации * Участие в мероприятиях, конференциях, * Руководство НИР * Генерация отчетов * … и другие параметры индивидуального плана **Ожидаемый результат**: веб-приложение на языке Python3/Flask + MongoDb. ==== 8. Автоматический вырезатель пауз из видео ==== Очень часто при записи онлайн-курсов авторы видео делают много пауз для того, чтобы собраться с мыслями/обдумать следующее слово. Задача - найти и удалить их. Цель - разработать инструмент, автоматизирующий монтаж видео для онлайн-курсов. Требования: Linux, Python Задачи и Технические требования - поддерживаемые форматы - TS, MKV - разметить паузы (по звуковой дорожке) длинной более N мс в видео, дать монтажный план - визуализировать вырезаемое - смонтировать видео без пауз **Ожидаемый результат**: консольное / Gui приложение для Linux на Python3. ==== 9. Расширение Chrome - вспомогательные инструменты по Stepik ==== Цель: создать вспомогательные инструменты для администраторов курсов на Stepik. Задачи: - создание расширения для Google chrome - внедрение своего кода в HTML Stepik - работа со stepik API Фичи: - показывать в комментарии ссылку на последнее неудачное решение автора, его прогресс по курсу, даты последних решений - график, статистика решений Требования: HTML, JS, CSS **Ожидаемый результат**: расширение для Google Chrome, внедряющее дополнительную информацию на страницу. ==== 10. Генератор контрольных на Stepik + составитель черновиков учебных программ по Stepik ==== Требуется реализовать веб-приложение, позволяющее: * Авторизоваться через Stepik * Сгенерировать контрольную работу по заданной теме * Составлять черновик учебной программы по степам с описанием * Обновлять курс на степик **Ожидаемый результат**: веб-приложение на языке Python3. ==== 11. Scratch ==== Цель: сделать форк https://scratch.mit.edu/projects/editor/?tip_bar=home с возможностью использования в MOOC обучении. Задачи: - разобраться, где живут исходники (https://github.com/LLK/) - обернуть код в Docker-контейнер - добавить интерфейсы для создания задач и создать несколько задач - добавить интерфейсы для оценивания пользователей - добавить интерфейсы для подключения к Stepik через Grader* Требования: NodeJS, Linux **Ожидаемый результат**: NodeJS приложение с интерфейсами для создания задач. ==== 12. Online курс-тренажер для задач на языке Си ==== Цель: разработка задач для курса на платформе Stepik “Тренажер для языка Си”. Варианты задач: * Задачи на синтаксис * Задачи на простейшие алгоритмы * Задачи на массивы, линейные списки * Задачи на сборку программ * ... Ответы к задачам должны быть запушены в отдельный приватный репозиторий, степы - в публичный. **Ожидаемый результат**: набор автоматически проверяемых заданий, интегрированных в Stepik. ==== 13. Простой планировщик туристической активности ==== Приложение, которое составляет подробный план отпуска (с возможностью оффлайн-работы) в незнакомом городе/стране с учетом интересов пользователя, бюджета на отпуск, местоположения отеля, параметров начала/конца отпуска, желаемого темпа, климатических условий. **Ожидаемый результат**: веб-сервис на языке Python3.5/Flask + MongoDb с функциями: регистрации, планирования, корректировки и сохранения планов отпуска. ==== 14. Бакэнд для курса по информатике ==== Цель: разработка задач для курса на платформе Stepik “Информатика”. Варианты задач: * Интерактивные задачи, в которых визуализируется положение некоторого робота на прямоугольной сетке + препятствия + объекты. Робот должен обойти препятствия или собрать какие-то объекты в сетке. Вариант решения может быть на Си и Python. Робот может шагать в любом направлении на одну клетку, видеть объекты с дальностью 1 клетка. * Задача для Linux для моделирования работы машины Тьюринга. Решение может быть на Python. * Задача для Linux для моделирования работы указателей реального режима. Решение может быть на Python. * ... Ответы к задачам должны быть запушены в отдельный приватный репозиторий, степы - в публичный. **Ожидаемый результат**: набор автоматически проверяемых заданий, интегрированных в Stepik.