На Stepik информация агрегирована так: курс состоит из модулей, модули из уроков, уроки из шагов, каждый шаг - это текст или тест (вопрос или задача на программирование
( Read more... )
М-м... На сколько я ничего не понимаю, явные ключи делаются для того, чтобы можно было что-то указать явно там, где возможна двусмысленность ИЛИ просто для лучшей читаемости. А вот требовать обязательно задавать ключ просто чтобы было - это плохо и негодно.
А еще люди придумали инклуды, аласы и оверрайды - это чтобы для уменьшения монстрообразности разных конструкций.
(Плохая новость состоит в том, что некоторые использую все упомянутое как раз для того, чтобы было как можно монстрообразнее и запутаннее. "А это чтобы Вы не расслаблялись и вообще эксплуатационщик Должнен Страдать!")
Я бы явно указал в каждом файле, для чего он, ну и принял бы, что файл урока имеет приоритет (то есть, как раз оверрайд всего остального). Так что указываем подряд сколько надо файлов, и все. Ну и ключи оставляем именно чтобы не запутаться, но не требуем.
Можно оставить предупреждения, если указано несколько файлов одного типа. "Будут использованы значения из xxx" - собственно, сам так и делаю.
Не поняла насчет нескольких файлов. Указываем или файл урока, или файл TOC. Оба сразу указывать бессмысленно. Если файл урока и конфиг, или ТОС и конфиг, то как различить, какой из них конфиг, а какой нет. То есть можно открыть и поразбирать структуру, но точно надо делать именно так?
Честно - я бы по возможности посмотрел в сторону GUI. Где есть окно редактирования настроек (который config.yaml) и мастер импорта, где по очереди задаётся, что и куда импортировать. Но при разработке выделить собственно логику исполнения в отдельный класс, чтобы можно было вызывать его методы и из GUI, и из командной строки. Заодно и набор параметров вызова устаканится, задача решится сразу в процессе.
Хочется такое раздавать свободно и быстро для кучи авторов курсов на Stepik. А там дофига гуманитариев. Я в пет-проекте готова сделать README и помочь найти на их компе вообще командную строку и далее помочь с установкой: pip install -r requirements.txt
Но вот гуи на питоне как-то не готова сделать такое, чтобы оно быстро и без проблем встало у кучи народа. Ибо далека я от гуи и дико его ненавижу. Любители гуи скорее всего будут делать уроки в онлайн редакторе и им мои скрипты деплоя не нужны.
Ну как-то они научились в GIFT тесты ваять. А тут тулза, которая тест может закинуть в кучу шагов. Там х10 по времени выигрыш против переноса через онлайн редактор руками.
Comments 21
М-м... На сколько я ничего не понимаю, явные ключи делаются для того, чтобы можно было что-то указать явно там, где возможна двусмысленность ИЛИ просто для лучшей читаемости. А вот требовать обязательно задавать ключ просто чтобы было - это плохо и негодно.
А еще люди придумали инклуды, аласы и оверрайды - это чтобы для уменьшения монстрообразности разных конструкций.
(Плохая новость состоит в том, что некоторые использую все упомянутое как раз для того, чтобы было как можно монстрообразнее и запутаннее. "А это чтобы Вы не расслаблялись и вообще эксплуатационщик Должнен Страдать!")
Reply
Reply
Я бы явно указал в каждом файле, для чего он, ну и принял бы, что файл урока имеет приоритет (то есть, как раз оверрайд всего остального). Так что указываем подряд сколько надо файлов, и все. Ну и ключи оставляем именно чтобы не запутаться, но не требуем.
Можно оставить предупреждения, если указано несколько файлов одного типа. "Будут использованы значения из xxx" - собственно, сам так и делаю.
Reply
Указываем или файл урока, или файл TOC. Оба сразу указывать бессмысленно.
Если файл урока и конфиг, или ТОС и конфиг, то как различить, какой из них конфиг, а какой нет. То есть можно открыть и поразбирать структуру, но точно надо делать именно так?
Reply
Честно - я бы по возможности посмотрел в сторону GUI. Где есть окно редактирования настроек (который config.yaml) и мастер импорта, где по очереди задаётся, что и куда импортировать. Но при разработке выделить собственно логику исполнения в отдельный класс, чтобы можно было вызывать его методы и из GUI, и из командной строки. Заодно и набор параметров вызова устаканится, задача решится сразу в процессе.
Reply
pip install -r requirements.txt
Но вот гуи на питоне как-то не готова сделать такое, чтобы оно быстро и без проблем встало у кучи народа. Ибо далека я от гуи и дико его ненавижу. Любители гуи скорее всего будут делать уроки в онлайн редакторе и им мои скрипты деплоя не нужны.
Reply
Мне кажется, гуманитарии с командами с ключами и .yaml файлами вообще вряд ли будут связываться. Это тогда командно-строчный диалог надо делать.
Reply
Reply
Leave a comment