User Tools

Site Tools


staff:work_automation_ideas

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
staff:work_automation_ideas [2017/10/18 07:26]
mark
staff:work_automation_ideas [2022/12/10 09:08] (current)
Line 7: Line 7:
  
  
-===== Автоматизация проверки лабораторных для курса "​Введение в нереляционные БД" =====+===== Эмулятор помещений для ROS / SLAM / CV задач ===== 
 + 
 +**Цель** - научится эмулировать данные от датчиков роботов (rgb и rgbd камеры,​ лидары), ​ в помещениях различной пространтсвенной конфигурации (заданные 3d-моделями),​ с разными параметрами источников света (мощность,​ расположение,​ цветовая температура),​ расположением специальных меток (aruco, qr). 
 + 
 +Задачи  
 +  * отображение 3d-моделей для помещений,​ 
 +  * конфигурация источников света,​ 
 +  * конфигурация расположения меток,​ 
 +  * конфигурация движения робота (в gui), 
 +  * конфигурация датчиков робота,​ 
 +  * экспорт измерений. 
 + 
 + 
 + 
 +Результаты 
 +- программа с графическим интерфейсом,​ позволяющая формировать ros-bag файлы данных для заданных конфигураций,​ 
 +- технология быстрого подключения новых датчиков к программе (снятие параметров датчика). 
 + 
 + 
 +===== [Done] ​Автоматизация проверки лабораторных для курса "​Введение в нереляционные БД" =====
  
 Цель: разработка системы автоматической проверки лабораторных работ для курса "​Введение в нереляционные БД". Цель: разработка системы автоматической проверки лабораторных работ для курса "​Введение в нереляционные БД".
Line 47: Line 66:
 ===== Генераторы задач ===== ===== Генераторы задач =====
  
-==== Программирование ====+==== [WiP] Программирование ====
  
 Прямые и обратные задачи на: Прямые и обратные задачи на:
Line 56: Line 75:
  
  
-===== Курс по инструментам отладки и профилирования (gdb, vallgrind, callgrind) =====+===== [WiP] Курс по инструментам отладки и профилирования (gdb, vallgrind, callgrind) =====
  
 Интерактивные задачи на дебаг: Интерактивные задачи на дебаг:
Line 90: Line 109:
   * Утчека памяти. Дан бинарный файл программы,​ в котором допущена утечка памяти. Задача:​ определить переменную,​ через которую утекает память. ​   * Утчека памяти. Дан бинарный файл программы,​ в котором допущена утечка памяти. Задача:​ определить переменную,​ через которую утекает память. ​
   * Производительность. Дан бинарный файл программы,​ в котором ооооочень много разных функций и их вызовов. Задача:​ определить самую часто вызываемую функцию. ​   * Производительность. Дан бинарный файл программы,​ в котором ооооочень много разных функций и их вызовов. Задача:​ определить самую часто вызываемую функцию. ​
-===== Система автоматической проверки наиболее частых формальных ошибок в научных статьях/​отчетах =====+  *  
 +===== [WiP] Система автоматической проверки наиболее частых формальных ошибок в научных статьях/​отчетах =====
  
 Вводная часть: Вводная часть:
Line 109: Line 129:
   - проверка выполнения больших наборов стандартизированных правил для текста на естественном языке   - проверка выполнения больших наборов стандартизированных правил для текста на естественном языке
  
-===== Kernel programming =====+===== [WiP] Kernel programming =====
  
 Цель: разработка проверяющих скриптов для заданий курса "​Программирование в ядре Linux"​. ​ Цель: разработка проверяющих скриптов для заданий курса "​Программирование в ядре Linux"​. ​
Line 125: Line 145:
  
  
-===== Сбор статистики курса "​Основы программирования в Linux" =====+===== [Done] ​Сбор статистики курса "​Основы программирования в Linux" =====
  
 Цель: доработка и расширение функционала статистического фронтенда Цель: доработка и расширение функционала статистического фронтенда
Line 143: Line 163:
 Результат:​ веб-сервис,​ который позволяет вести мониторинг статистики прохождения курса и отслеживать определенные события в логе. ​ Результат:​ веб-сервис,​ который позволяет вести мониторинг статистики прохождения курса и отслеживать определенные события в логе. ​
  
-===== LBS ===== 
  
-==== Сервис визуализации городской истории ==== +==== [Done] ​Инструмент мониторинга статистики прохождения outdoor-квестов ====
- +
-Веб-сервис/​мобильное приложение,​ которое позволяет с помощью открытых данных отслеживать/​визуализировать историю дома/​улицы/​площади/​района в различные временные периоды +
- +
-==== Простые отметки на карте ==== +
- +
-  - идея приложения g2t - простые отметки на карте (расставление границ участков) +
-    - грибники +
-    - личные участки в Финляндии +
-    - рыбаки и окуневые ямы +
-    - вариант потенциальной темы диплома/​НИР/​практики  +
- +
-==== Отображение исторических панорам ==== +
- +
-Мобильный сервис для ображения панорам с почти дополненной реальностью (отображение исторических фото, привязка к координатам). +
- +
-==== Инструмент мониторинга статистики прохождения outdoor-квестов ====+
  
 Цель: создать веб-приложения для исследования подробной статистики прохождения квестов + реализовать интерфейсы сбора подобной статистики для приложений. ​ Цель: создать веб-приложения для исследования подробной статистики прохождения квестов + реализовать интерфейсы сбора подобной статистики для приложений. ​
Line 193: Line 196:
  
  
-===== Тренажер публичных выступлений =====+===== [Done] ​Тренажер публичных выступлений =====
  
 Цель: сделать тренажер,​ позволяющий докладчику объективно измерить ​ Цель: сделать тренажер,​ позволяющий докладчику объективно измерить ​
Line 215: Line 218:
   - на экране отображается статистика выступления - общая и по отдельным слайдам   - на экране отображается статистика выступления - общая и по отдельным слайдам
  
-===== Виртуальный тренажер Arduino =====+===== [Done] ​Виртуальный тренажер Arduino =====
  
 Цель: реализовать набор автоматически проверяемых (не интерктивных) задач для обучения программированию Arduino. Цель: реализовать набор автоматически проверяемых (не интерктивных) задач для обучения программированию Arduino.
Line 231: Line 234:
 Результат:​ набор задач, опубликованных в курсе на Stepik.org. ​ Результат:​ набор задач, опубликованных в курсе на Stepik.org. ​
  
 +
 +===== Построитель схем для SimulAVR =====
 +
 +Цель - реализовать консольный редактор схем для SimulAVR с поддержкой простых компонентов:​
 +  * диоды,
 +  * резисторы,​
 +  * лампочки,​
 +  * конденсаторы,​
 +  * катушки,​
 +  * фоторезисторы и другие. ​
 +
 +Редактор должен позволять:​
 +  * редактировать,​ сохранять в файл и визуализировать схемы;
 +  * настраивать параметры элементов,​ в том числе задавать сигналы вручную;​
 +  * запускать программы в рамках этих схем;
 +  * визуализировать сигналы. ​
 +
 +Требования:​
 +  * Python
 +  * Bash
 +  * SimulAVR
 +
 +Результат:​ консольное приложение.
 +
 +===== [WiP] Эмулятор arduino для ArduinoIDE =====
 +
 +Тоже что и в предыдущей теме, но GUI + интеграция к IDE.
  
 ===== Мини-курсы Stepik ===== ===== Мини-курсы Stepik =====
Line 253: Line 283:
       * настройте права так, чтобы определенные пользователи/​группы имели/​не имели доступа       * настройте права так, чтобы определенные пользователи/​группы имели/​не имели доступа
  
-==== ssh-tricks ====+==== [Done] ​ssh-tricks ====
  
   * Интерактивные задачи (генератор среды + скрипты проверки):​   * Интерактивные задачи (генератор среды + скрипты проверки):​
Line 264: Line 294:
     * sshfs     * sshfs
  
 +==== Мат.модели работы ПО ====
  
-===== Автоматизация проверки заданий для XV6 по курсу ОС =====+у студентов часто возникает задача в дипломе / курсово исследовать типовые показатели работы программы:​  
 +- расход памяти 
 +- скорость работы 
 +- пропускная способность (скорость передачи данных по сети) 
 + 
 +При этом студенты демонстрируют очень низкий уровень понимания того как ставить эксперимент,​ обрабатывать данные и тд.  
 +Есть гипотеза что даже хорошее преподавание статистики/​метрологии не поможет сильно исправить ситуацию,​ так как там материал зачастую оторван от жизни.  
 + 
 +Хочется сделать курс, где на предельно прикладных задачах (буквально надерганных с дипломов/​курсовых) будет показано как применять мат. модели,​ но без слишком большого объема теории (а лучше - с минимумом).  
 +Например:​ 
 +- как построить зависимость скорости работы программы (дается студенту в виде бинарника/​исходника) от параметра А  
 + -- какие там будут источники погрешностей,​ как их исключить/​оценить/​проверить гипотезы про распределения 
 +-- какой метод интерполяции выбрать?​ 
 +-- как поставить эксперимент по измерению?​ 
 +-- как обрабатывать полученные данные?​ 
 +-- какие выводы можно, а какие нельзя делать по результатам?​ 
 + 
 +==== Курс по развитию внимательности ​==== 
 + 
 +Как известно,​ 90% проблем у учащихся возникает при невнимательном чтении заданий. Необходимо сделать такой курс, чтобы окончив его, человек умел читать тексты максимально внимательно + анализировать их содержимое. 
 + 
 +===== [Done] ​Автоматизация проверки заданий для XV6 по курсу ОС =====
  
 Цель: реализовать автоматически проверяемые задачи по системе XV6 на базе проверяющей системы "​Основы программирования в Linux"​. Цель: реализовать автоматически проверяемые задачи по системе XV6 на базе проверяющей системы "​Основы программирования в Linux"​.
Line 290: Line 342:
   * Запуск сложных конфигураций ВМ для job.   * Запуск сложных конфигураций ВМ для job.
  
-===== Плагины vagrant =====+===== [Done] ​Плагины vagrant =====
  
   * Диагностика запуска ВМ.   * Диагностика запуска ВМ.
Line 301: Line 353:
 Дано - исходный код в git репозитории. Дано - исходный код в git репозитории.
 Задача - найти другие репозитории,​ в которых есть такие же комментарии в исходных кодах. ​ Задача - найти другие репозитории,​ в которых есть такие же комментарии в исходных кодах. ​
 +
 +===== Расширения для хрома, упрощающие работу со Stepik =====
 +
 +  * Фильтрация по табелю успевеамости.
 +  * Отображение процента прохождения курса участником в комментарии:​
 +    * сколько прошел всего,
 +    * сколько было попыток решить данный степ,
 +    * ссылка на последнее решение.
 +  * 
 +
 +===== [Done] Автоматизация ответов на вопросы в рамках онлайн-программы =====
 +
 +
 +Цель: создать инструмент,​ ускоряющий ответы на вопросы участников онлайн-программы.
 +
 +Задачи:​
 +  - экспорт данных из задач Redmine
 +  - индексация ​
 +  - выделение ключевых слов
 +  - построение рекомендаций
 + 
 +===== [Done] Поиск/​автоматическое удаление словестных пауз из видео =====
 +
 +Очень часто при записи онлайн-курсов авторы видео делают много пауз для того, чтобы собраться с мыслями/​обдумать следующее слово. ​
 +Задача - найти и удалить их. 
 +
 +===== Расширение для Google Chrome, подсчитывающее статистику изменений задач в Trello-доске =====
 +
 +
 +
 +===== Интеграция задач на Scratch в Stepik =====
 +
 +  * Портировать веб-фронтенд Scratch в удобную/​контролируемую форму.
 +  * Создать (скорректировать) интерфейсы для проектирования задач.
 +  * Связать фронтенд со Stepik, так, чтобы решение задач во фронтенде приводило к соответствующим отметкам на Stepik. ​
 +
 +
 +===== Задачи для курса по ядру / программированию в Linux =====
 +
 +
 +===== Онлайн-курс для аспирантов =====
 +
 +Идея - дать представление об общих основных этапах подготовки к защите и улучшить понимание следующих разделов:​
 +  * соответствие паспорту специальности,​
 +  * научные результаты,​
 +  * в целом что можно и нельзя писать.
 +
 +
 +===== Автоматизация заполнения шаблонов документов =====
 +
 +Цель - инструмент,​ который позволит автоматически заполнять шаблоны документов (docx, odt, pptx, odp ....)  данными из таблицы (каждая колонка - отдельное подставляемое поле, каждая строчка - новый документ). ​
 +
 +Выходные данные: ​
 +  * CSV-файл со значениями подстановок, ​
 +  * путь к шаблону в формате docx, odt, pptx, odp,
 +  * текстовый шаблон именования файла.
 +
 +Пример CSV-файла:​
 +
 +<​code>​
 +FirstName,​LastName,​Adress,​City,​State,​ZIP-code
 +John,​Doe,​120 jefferson st.,​Riverside,​ NJ, 08075
 +Jack,​McGinnis,​220 hobo Av.,Phila, PA,09119
 +"John ""​Da Man""",​Repici,​120 Jefferson St.,​Riverside,​ NJ,08075
 +Stephen,​Tyler,"​7452 Terrace ""​At the Plaza""​ road",​SomeTown,​SD,​ 91234
 +,​Blankman,,​SomeTown,​ SD, 00298
 +"Joan ""​the bone"",​ Anne",​Jet,"​9th,​ at Terrace plc",​Desert City,​CO,​00123
 +</​code>​
 +
 +Соответственно,​ полями для подстановки являются:​ FirstName, LastName, Adress, City, State, ZIP-code.
 +
 +В файле docx, odt, pptx, odp содержатся указанные выше поля подстановки в виде меток следующего вида:
 +
 +<​code>​
 +{{ Adress }}
 +</​code>​
 +
 +Текстовый шаблон именования файла содержит комбинацию полей подстановки:​
 +
 +<​code>​
 +{{ FirstName }}{{ LastName }}.docx
 +</​code>​
 +
 +В результате работы должны появится 6 файлов,​ по одному для каждой строчки CSV файла.
 +
 +
 +Фреймворки:​
 +
 +  * https://​docxtpl.readthedocs.io/​en/​latest/​
 +  * https://​pypi.org/​project/​python-pptx-templater/​
 +  * https://​pypi.org/​project/​pptx-template/​
 +
 +
  
 ====== Кирилл Кринкин ====== ====== Кирилл Кринкин ======
Line 306: Line 451:
   * Генерация отчетных форм по лабораторным и курсовикам   * Генерация отчетных форм по лабораторным и курсовикам
   * Автоматическая проверка отчетов присылаемых на заданный емайл и сортировка их по папкам (по мотивам http://​se.moevm.info/​doku.php/​start:​report_submission)   * Автоматическая проверка отчетов присылаемых на заданный емайл и сортировка их по папкам (по мотивам http://​se.moevm.info/​doku.php/​start:​report_submission)
 +===== Интеграция задач на Scratch в Stepik =====
 +
 +  * Портировать веб-фронтенд Scratch в удобную/​контролируемую форму.
 +  * Создать (скорректировать) интерфейсы для проектирования задач.
 +  * Связать фронтенд со Stepik, так, чтобы решение задач во фронтенде приводило к соответствующим отметкам на Stepik. ​
 +
 +
  
  
staff/work_automation_ideas.1508311608.txt.gz · Last modified: 2022/12/10 09:08 (external edit)