Общий форум

Доработка Moodle

 
Изображение пользователя Иван Недобойко
Доработка Moodle
 

Здравствуйте. Хочу немного "доработать" Moodle, который использую. Прежде всего оформление, но и не только. В этом вопросе полный профан. Что посоветуете почитать/посмотреть? С чего начать?

Изображение пользователя Alexandre Scherbyna
Re: Доработка Moodle
Группа Particularly helpful MoodlersГруппа Эксперт по Moodle

Начните с просмотра ста готовых тем оформления Moodle. Если ничего решительно не понравится, тогда начинайте делать свою или, для начала, изменять стили CSS существующих тем. Для этого многие из них имеют в настройках поле Пользовательский CSS.

Мне бы ваши заботы улыбаюсь

Изображение пользователя Дмитрий Макаров
Re: Доработка Moodle
 

тут задачи более глобальные стоят улыбаюсь оформление это меньшее из зол широко улыбаюсь

А по части доработки... в moodle нет как таковой по семестровой общей ведомости, зачетной книжки. Электронный деканат - хорошо, но для работы на новых версиях его нужно полностью допиливать самому, да и функционала там слишком много (это касательно договоров и прочих моментов).

Субкурс - хорошее решение, но это чисто информационный ресурс, который не позволяет вывести результат например в табличном виде. Хотя как база для разработки некоторого подобия зачетной книжки использоваться может. Вот как раз сейчас и озабочен данной проблемой. 

Руководство требует нечто подобное:


Семестр 1 2016/2017 год
Название дисциплины Фамилия 
преподавателя
Оценка Дата Комментарий
1
2

Причем помимо простого отображения в системе им нужна возможность распечатки всего этого дела именно в формате pdf улыбаюсь
В принципе особо сложного для разработки ничего нет, но все же улыбаюсь

Изображение пользователя Alexandre Scherbyna
Re: Доработка Moodle
Группа Particularly helpful MoodlersГруппа Эксперт по Moodle

В журнале оценок каждой дисциплины должна рассчитываться результирующая оценка, учитывающая успеваемость в течение семестра и ответ студента на экзамене (если он есть). Тогда в течение семестра субкурсы показывают текущую успеваемость, а после сессии - выставленные в зачетки итоговые оценки.

Если преподаватель хочет поставить не ту оценку, которую рассчитал Moodle, а что ему вздумалось, то он может внести любые правки прямо журнал оценок. Поэтому непонятно, кому и зачем еще и такая форма понадобилась.

Или у вас "тройная бухгалтерия": в журнале оценок Moodle - одно, в этой форме - другое, а в реальной зачетке - третье?

Изображение пользователя Дмитрий Макаров
Re: Доработка Moodle
 

да в том то и дело, что такой вариант не устраивает ) задача как раз таки создать элемент курса или блок, который бы выводил информацию по семестрам в одном головном курсе, с возможностью вывода этого всего дела на печать красивой формы идентичной классической зачетной книжке. 

то, что в курсах имеется возможность вывода информации и переопределения оценок - хорошо, и об этом я осведомлен прекрасно, но сбор статистики о том кто, когда, по какой дисциплине, какую оценку поставил весьма неудобен, в первую очередь для деканатов... нужны метакурсы, субкурсы чтобы как-то это реализовать. потому по крайней мере в моем случае стоит задача разработать элемент курса или блок, по принципу схожий с субкурсом, но предоставляющий информацию по предварительно сформированным спискам дисциплин, причем в приемлемом виде, чтобы эту информацию возможно было распечатать фактически как зачетную книжку, которая только заверяется на основании ведомостей. 

Изображение пользователя Alexandre Scherbyna
Re: Доработка Moodle
Группа Particularly helpful MoodlersГруппа Эксперт по Moodle

Эту задачу можно разделить на две части: 1) собрать информацию и 2) вывести (или распечатать) ее в нужном виде.

Субкурс, как раз и позволяет собрать информацию в одном головном курсе и по семестрам, и по любому списку дисциплин. Чем именно он вас не устраивает и что вы хотите сделать вместо него я так и не понял.

А что касается вывода в виде красивой формы, то тут, конечно, поле для творчества - огромное. Бог в помощь! Расскажите нам что получилось.

Изображение пользователя Дмитрий Макаров
Re: Доработка Moodle
 
Да меня то как раз все вполне устраивает улыбаюсь Ныть стали преподаватели, что мол, нужно заполнять ведомости, зачетки, плюс в системе делать отметку для деканата (писать отзыв в итоговой оценке). Вот потому и возникла необходимость в неком элементе курса, который подобно субкурсу выводил бы итоговый результат по курсам, но только результат переопределенный преподавателем со всеми данными улыбаюсь По сути им нужна типовая форма зачетки, которую можно в конце концов распечатать улыбаюсь 
Изображение пользователя Vadim Dvorovenko
Re: Доработка Moodle
Группа DevelopersГруппа Майнтейнер переводаГруппа Тестер MoodleГруппа Эксперт по Moodle

Дмитрий, Вы должны понимать, что чем более специфические требования возникают, тем более специальная система нужна. Более универсальная система, наоборот, подходит для широкого круга задач, но в части специфических требований всегда потребуется доработка. Есть некоторая грань, после которой дорабатывать универсальную систему под специфические требования становится уже нецелесообразно, потому что проще разработать новую систему. Вы сейчас находитесь очень близко к этой грани.

По своей философии Moodle - это система для обучения, а не для управления и контроля над обучением. Поэтому пришить к moodle принятые у нас механизмы контроля за обучением типа ведомостей и зачётных книжек не очень легко. При этом это вещи, нужные только персоналу, контролирующему процесс обучения (деканатам, учебной части и т.п.). Это упирается в очень непростую и непостоянную структуру учебных планов, зачётных единиц, практик, государственных аттестаций и т.п., которую просто невозможно формализовать в виде простых структурных элементов. Но при этом в moodle есть всё, чтобы сделать удобным процесс общения студента и преподавателя - главных участников образовательного процесса.

В moodle элементами структуры являются категория курсов, курс и элемент курса. Если вы придумаете, как в рамках этих структурных единиц представить вашу задачу, значит вам можно строить свою систему на базе moodle. Если не можете, то не пытайтесь, только сломаете moodle, родите систему, которой неудобно будет управлять, неудобно обновлять и которая в конце концов рухнет.

Теперь о главном. В большинстве известных мне удачных проектов функцию электронной зачётки, ведомостей, аттестационных листов и т.п. выносят в другую, отдельную систему, которую пишут максимально адаптированной под задачи управления. Электронный деканат от открытых систем не исключение - хоть он и сделан на базе moodle, там своя система плагинов, структуры данных, интерфейсы и т.п. Для простых пользователей совершенно необязательно, чтобы технически всё это было в рамках одной системы, главное, чтобы где нужно, были гиперссылки куда нужно. Я Вам бы советовал идти тем же путём. В moodle достаточно способов передать данные и туда, и обратно, чтобы сделать интеграцию moodle с  другими системами, не заставляя moodle делать несвойственные ему вещи

Изображение пользователя Дмитрий Макаров
Re: Доработка Moodle
 

в том и дело, что перенос данных из moodle в другие системы - это мартышкин труд, гораздо эффективнее представлять все материалы на месте.

Изображение пользователя Vadim Dvorovenko
Re: Доработка Moodle
Группа DevelopersГруппа Майнтейнер переводаГруппа Тестер MoodleГруппа Эксперт по Moodle

Непонятно, что вы имеете в виду под мартышкиным трудом. Раз вы сильны в разработке, что можете разрабатывать свои модули, то одна неделя вашей работы по интеграции систем приведет к тому, что сотни преподавателей потом смогут не вводить дублирующую информацию в разные системы. Другое дело, как такое дело спроектировать, чтобы после реализации не нужно было работать Вам, а работали только преподаватели.

Теперь смотрите. Разрабатывать на moodle - очень трудоёмкая задача. У меня, например, на разработку чего-то в moodle уйдёт в 10 раз больше времени, чем на другой платформе, на которой я обычно разрабатываю. Хотя я уже много лет разрабатываю для moodle. А всё дело в том, что каждый раз когда пишешь какую-то строку кода в moodle (пусть это даже будет вывести таблицу или форму на экран), приходится просматривать кучу кода в moodle и читать море документации, чтобы понять, как нужно делать правильно, чтобы модуль не перестал работать в следующей версии. Плюс все-равно, каждые несколько версий могут вылезать какие-то косяки, например, с внешнем видом при переходе на тему boost или с тем, что в каждой новой версии php возникает всё больше предупреждений по коду.

Поэтому быстро разработать свою простую систему для решения задачи зачётки для деканата и потом не дорабатывать эту систему гораздо разумнее. Используя для обмена данными API moodle, которые точно будут стабильны, Вы избавите себя от головной боли при каждом обновлении. Кроме того, если в деканате используется своё решение для автоматизации (ну или будет использоваться, к этому все рано или поздно приходят), то всё равно деканат захочет работать только в своей системе, потому что moodle им по сути будет не нужен. Опять же Вам все-равно придется решать задачу по отбору данных из moodle в эту систему, а так эта задача у Вас уже будет решена.

Есть целые решения, когда на основе данных из внешней системы-деканата в moodle создаётся структура курсов, забираются оценки и т.п.

Кстати, делая своё решение на moodle, сразу подумайте, как вы будете решать проблему неизменности оценок. Ведь спустя какое-то время преподаватель может взять и поменять оценку студенту в moodle, тогда в moodle будет одна оценка, а в карточке студента в деканате и в зачётке - другая. В любых электронных деканатах такое может быть сделано только с ведома сотрудника деканата, который должен создать экзаменационную ведомость, но в moodle для решения этой проблемы вам придется городить отдельный огород

Изображение пользователя Дмитрий Макаров
Re: Доработка Moodle
 
по части API возможно вы и правы, в любом случае нужно думать над вариантами. мне, повторюсь, все равно, я отчетностью не занимаюсь, а реализую тот или иной момент упрощающий работу как преподавателя так и управляющих... была бы моя воля, поставил бы электронный деканат и не забивал себе голову... но электронный деканат руководство не хочет, им нужна только зачетная книжка, красивая зачетная книжка... 


з.ы. вообще я не понимаю откуда столько... негатива какого-то что ли широко улыбаюсь реально как не зайдешь в тему по улучшению moodle, так куча постов в которых всеми правдами и неправдами отговаривают от разработки улыбаюсь я теперь не удивляюсь, что все под себя подмяли открытые технологии улыбаюсь разработчиков то нет улыбаюсь 

з.з.ы так скоро сам moodle на территории России и СНГ платным станет широко улыбаюсь

Изображение пользователя Vadim Dvorovenko
Re: Доработка Moodle
Группа DevelopersГруппа Майнтейнер переводаГруппа Тестер MoodleГруппа Эксперт по Moodle

Сами понимаете, что не станет платным. Но очень сложно строить бизнес на платной поддержке бесплатного продукта в странах, где не принято платить за то, что можно взять бесплатно. Разработчики-то есть, просто moodle - это не joomla, не wordpress, и не bitrix, где любой школьник за месяц может научиться клепать сайты.

Решили таки разрабатывать в moodle - милости просим. Только сначала опишите свою структуру данных и определитесь, плагины какого именно типа вы собираетесь разрабатывать. Если вы хотите делать зачётку на базе журнала оценок, просто изменить его внешний вид - сделайте свой модуль типа Grade reports. Если вас устраивает субкурс, но не устраивает, что он забирает оценку без комментария - возьмите его за основу, но добавьте свой функционал, сделав fork на github.

Но плагины элемента курса (как, например, субкурс) хранят данные в привязке к курсу и элементу курса. Плагины отчетов вообще обычно данных не хранят. Если вам нужно хранить какие-то данные, общие для всей системы, например, учебные планы, списки дисциплин и т.п., стоит разработать плагин типа local. Можно для той же цели сделать ещё плагин для блока, но следует тогда сразу определиться, где этот блок вы будете отбражать

МГУ
Re: Доработка Moodle
 
По своей философии Moodle - это система для обучения, а не для управления и контроля над обучением.

Золотые слова. Сколько ни говоришь об этом — как об стену горох. Вынь да положь статистику, выборку, отчёты... Система из обучающей превращается в отчётную. Хотят не лучше и удобнее, а выше, дальше, сильнее.

Изображение пользователя Alexandre Scherbyna
Re: Доработка Moodle
Группа Particularly helpful MoodlersГруппа Эксперт по Moodle
Moodle - это система для обучения, а не для управления и контроля над обучением.

Пока да. Во-первых, потому что обучение первично, а управление и контроль им - вторичны. Сначала нужно обеспечить первое, а потом уже второе. Во-вторых, потому что учат во всем мире примерно одинаково, а контролируют и управляют по-разному. Поэтому сделать что-то одинаково подходящее для всех трудно, но и в этом направлении Moodle тоже развивается.

Это открытая система, и любой может если не построить под себя систему типа Электронного деканата, то импортировать в свою систему данные из Moodle, или хотя бы писать свои запросы к базе данных с помощью Configurable Reports или Ad-hoc database queries.