We tend to forget that many many millions of people are born every year, and there are always people who genuinely get to hear about a well-known thing for the first time every time it's mentioned.
The post itself with no further context about what the OP wants us to see about Moodle, is fodder for moderation.
It's not a new project, so if it's a TIL this is a thing, then post that, if its "Moodle releases x.0" then post that. The focus of the page seems to be mostly on an upcoming conference in Europe, is that what the OP wants us to see? I'm clicking on it wondering if there's something new to see?
That's not the title. It's just Moodle, with zero context. I'm left wondering if there is something on the page the OP wants us to see, like the upcoming conference, some new release, etc.
If its new, usually you put a Show HN: in front of it. If it's new to you, put TIL as you mentioned, nothing at all is just confusing and I feel like I'm missing something.
This is coming from someone who tried out a Moodle server at a college I worked at in 2003-5. I get new people are discovering it, but that's like me posting a link to Debian's homepage, or Apache with no context because it's new to me.
None of the responses have been the OP clarifying their intention, which is who the question was for anyway. What does OP want me to see on their page?
A post with just the name/description of some old software is simply the HN vernacular for "I just found out this existed" (which is the real "news" being shared).
From what I've seen, I suspect the SCORM standard shoehorns LMSes into some unfortunate limitations. But the standard is so widespread, it's probably pretty hard to significantly evolve as well.
SCORM is so limiting, one probably wont be making any modern interactive online courses with that. Focusing on that standard will most likely render a project useless or so boring, that no one will learn anything from using the system. If anyone is making another LMS and hears some distant call for SCORM from anyone not directly involved in making content or learning from the content they should run. It is likely to be just a silly checkbox some management wants to tick off, because at some point they heard about a term and now think it is relevant.
>It is likely to be just a silly checkbox some management wants to tick off, because at some point they heard about a term and now think it is relevant.
Is it one of those checkboxes that would be required or heavily weighted while doing an evaluation/bidding process?
When I was in college, a lab needed to replace some equipment and had to go through the bidding process. They had to develop objective criteria that the bids would be judged against with a scoring system and requirements.
It took some real effort to write the criteria such that they would not end up with a really awful system from a vendor who was known to have awful support, but not write it in an exclusionary fashion.
It is a standard that works for classical "here you got some text to read" and "here is a quiz" kind of online courses. If you want anything more like say interactive programming exercises, forget SCORM.
> Is it one of those checkboxes that would be required or heavily weighted while doing an evaluation/bidding process?
It might be, yes. But only heavily weighted by those entities, who peddle such very basic learning material and don't have interactive components, except for maybe some very basic quiz. When you develop a new LMS and try to make a business out of it, you will probably sooner or later get in contact with such entities, who would like to push their content into your newly developed platform and have some SCORM artifact. So they ask you whether your platform is SCORM compatible.
But anyway, mostly it will not be worth it, if you want modern courses with nice interactive features. SCORM will only slow you down.
Could you explain why not? Technically speaking it's nothing special as Moodle is completely built on the LAMP stack (although WAMP is also supported, as well as PostGreSQL, Oracle, MariaDB and MS-SQL).
Moodle was popular over a decade ago; and is designed for large organizations. It is primarily self-administrated by non-technical users and tries to deliver video heavy content. These combined to make it a hard introduction to scaling LAMP for many.
These guys were pioneers, bringing out the first LMS pre-popular-web (Aug/2002). The founder lives right here in sunny Perth (also the birthplace of the founder of Canva)!
LMS - A learning management system is a software application for the administration, documentation, tracking, reporting, automation, and delivery of educational courses, training programs, materials or learning and development programs
What meaning does this even have if all the high severity vulnerabilities are from <2010 and in 1.x versions when it's 2023 now and we have Moodle 4.2?
For what it's worth, it works quite well. Yes it does suffer from over-configurability and feels quite dated here and there, but if you focus on what you need, it just works.
All colleges I ever went to used moodle and when I was teaching college courses, I was using it too. We even had an integrated Java code runner to automate programming exercise hand ins. Learning curve is gentle.
Moodle is awful in many ways, but it's well known, has a decent ecosystem, and I've yet to interact with something I didn't find substantially more awful.
I suspect, much like ticketing and project management systems, LMS software is always going to be awful -somehow- because of competing desires from different users, and that as such "the least amount of awful amongst the ones I've dealt with" should probably be considered a (qualified) endorsement.
The setup processes to build courses, enroll alumns and place contents are slow, complex and involve many repetitive steps.
However, that doesn't seem to be any better in any other web CMS, and Moodle is extendable with lots of open source plugins for any imaginable purpose, so overall it's a powerful Swiss army knife, and it has all the advantages of a self-hosted, open source project.
CMS software definitely also seems to be in the category I was talking about.
I suspect the 80/20 rule is in play, wherein each of the 80% of users is using a different 20% of features so your choices are to end up with something nearly feature free (think early github issues for a ticketing example), something specialised to a specific vertical subset of the potential use cases, a complex and usually clunky GUI, or programmatic style configuration that requires a level of time investment that rules out the people whose jobs will be to actually use it being the ones to set it up.
Moodle goes the lots-of-features GUI route and does a less annoying job of it than average - like I say, I think the problems are kinda inherent if your goal is to support as many different purposes as it does, and that's a trade-off that's often worth making.
I'd add ELN/LIMS in the same category. At first they just look like some CRUD app, but each uses a slightly different data model, different plugin system and (often outdated) scripting language built-in the system.
I'll talk about how it's implemented in my university. YMMV of course.
1. There's no common area for teachers. I cannot have common resources. For example, I like to have some ground rules for all my courses; cannot have them stored in a common space to import them to any course opened.
2. So many steps are repetitive and cumbersome without any possibility of automating them. For example, I can devise an activity and set up a carefully crafted rubric for grading. There's no way to store that rubric elsewhere so I could reuse it for another, similar activity either in that same course or in another.
3. No possibility of mass uploading files except when in a folder.
4. No possibility of customizing an activity or resource per-teacher. If any, is either school-wide or nothing.
5. I need a custom Web font (for some language I teach) but it's extremely difficult to configure that school-wide. Teacher-specific it's just impossible.
and the laundry list could go on and on and on. These are little details, but enormous time wasters.
Ticketing systems are only awful if they try to model everything. … Which is something that ticketing systems tend to evolve towards over time. Maybe it’s some organizational phenomenon vaguely related to Conways law…
In practice, I tend to find ticketing systems almost invariably exist either in a superposition of modeling too much and modeling too little, or as you say, have tried to model everything to the point where you can't find anything.
The 'almost' is because e.g. RT or JIRA -can- be configured such that they provide exactly the details and workflow that each team/queue wants and end up being almost pleasant to work with, but putting in the necessary business analysis time and having somebody learn their configuration and scripting facilities sufficiently to actually achieve that is something I only encounter very occasionally.
Once, I heavily used an internal ticketing system that wasn’t awful. It only did ticketing and nothing else. There were no sprint views or folders or custom fields. The data model was exceedingly simple: Title, 3-level hierarchy, a priority, an open/closed/pending status, a summary, and a correspondence log (comments).
There was a separate system that would handle paging on user defined rules based on priority and aforementioned hierarchy.
As a former commercially employed Moodle / LMS dev, Moodle just needs a refresh of the CSS frontend theme, maybe add htmx for more fluid interactivity.
The back end is still quite competitive and mostly just works. Classic PHP advantages at play here. The project won't die anytime soon.
I don't think it matters- The patterns have been fine to scale Moodle this far, and are relatively simple and easy.
PHP is the gold standard for "it will run forever" in web- new patterns with the goal of faster iteration speed often doesn't pan out the way devs expect. (probably the reason why another language hasn't overtaken the LMS space yet).
I really like it, and I can see how powerful it could be. If only we could personalize it a little more, and avoid repetitive tasks with templates or similar...
At my university there were 3 platforms competing, an internal one made by IT, the moodle, and SWAD (https://openswad.org/info/) at that time (2010-2011) SWAD was by far the best of all three, being a pleasure to use as an student compared to the other two.
Moodle is a landmark open source project, alongside other very influential php based platforms of the early "dynamic web" era. Still works "fine" in certain contexts.
But it is very dated by now. Not so much in its look and feel (which definitely does not chase every hip refresh of the frontend world) but in terms of its overall backend design, its technical debt and ability to evolve as a platform (API's, content generation, plugin development etc).
With dramatic developments as we move into the Web 3.0 era (federated platforms, ML/AI) there is a question mark if the initiative and community have the vision, resources and execution ability to transform it into something that will be relevant ten years from now.
I hope it does. It would certainly be tremendous added value on top of everything that its has delivered so far.
I was asking since I’m not very familiar with neither Moodle nor ML. I couldn’t see the connection between the two, so I was curious to know more about it.
My college uses moodle, some might say that it's fine, perhaps. It sure does the job but I always hated it for some reason. Could it be the lack of organization from my college or is it the limitation of the interface I am not sure.
Moodle 4, for me, was even more complicated to use than Moodle 3. But I'm blind so it may be better for sighted people. I have to edit and create courses, so I'm not the usual blind person that just has to go through a course as a student. Honestly if I could just hook up courses to some kind of Git repo and edit things as folders and files, I'd be happy. The closest we've gotten is setting up a Github Pages repo and setting a lesson URL to the lesson on github, so I can just push changes to Github and it'd change in Moodle. But Moodle wants you to know the lesson is a URL, so shows it in an embedded frame. Also I never could get it to where I'd recieve emails when a student finishes an assignment. I could get it to work on individual lessons sometimes, but I have like 5 to 10 courses I manage. I ain't going through all that.
in my opinion Moodle is the epitome of PHP crapware, which most of us thought had been banished a long time ago... It's kept afloat by predatory and relatively inept consulting businesses which advertise the weird (to me...) idea that every course needs an externally "developed" (aka coded in PHP) module and the teacher has no agency over how that will be structured.
Case in point: I had a course and wanted to publish my excel-grading-sheet to a moodle course:
1) there is hardly any documentation on how to do that...
2) from the one paragraph I pieced together the primitive XML-spec. Now people had the points for their work.
3) it would be nice to give people a total of points? BUT: there is no way to do that nicely - I was presented with a formula editor (including: trigonometric functions...), where I could put together individual exercise ids BY HAND (summation with regex might be more useful than trig, no?)
4) students complained: I handed in the tasks and don't have points yet
5) turns out: the XML-parser they use stops at UTF8 and the person who coded that thought: "hey, we print 'import successful' and just stop the import at the specific entry we couldn't handle, partially updating the DB"
Also there is of course no API of any sorts (so automation is impossible...), which is no wonder if your development is stuck at .php-files intermingling code and html...
Being sighted doesn't help with Moodle. Once, my college updated it to some then-new version with completely different interface (plus some custom college-branded CSS) and something didn't work right in one of the courses.
I've had the misfortune of peeking into the lecturer's side of it, and there were four of us trying to decipher how to change some simple setting. I think it was time-limited visibility of an assignment with file upload or something like that. Something that shouldn't have taken four of us (including the lecturer) over 5 seconds to figure out.
When I think about it, most options related to time-limiting something, or quizes/tests, were so complicated for most of them that they would hack around it by reusing the same items, expiring them in 2099 and then (I guess) manually changing visibility for those present in the room. Then all hell breaks loose when they didn't update the questions correctly and you get like 0% for all correct answers, or they get the results for all 1500 people who ever attended the class, then they manually filter it out for current-year students. Often, our tests would begin like "Do you see it in the Moodle? No? And now? And now? OK, now? Now? Still nothing?".
This was on an ICT college where you'd expect more computer savvy people. But even there, the problems were happening too often to be able to blame users. It's just awful UX.
We have Moodle in your university and the reading material is provided in it. It is terrible to read, because the lines of text span the full width of the screen and the formatting is broken in a lot of cases.
Before Moodle we used to get nicely formatted PDF's (made with Latex I pressume). This might sound like a nitpick, but if you are spending hours reading the material over and over it is a pretty serious drawback. I don't undesrtand how moodle does not have a decent reader mode builtin. Also, I have always been the learning type that prints out the PDF and the draws, underlines, writes in it while reading it. Dunno, reading on screen just doesnt work for me that well.
The cynicism never seems to subside here. Moodle was and is a great OPEN-SOURCE (FREE) learning management system that works on just about any web server. It is highly customizable and very easy to install and manage.
I've managed a Moodle install for my university for many years without any hiccups. I've trained lots of teachers on how to use it BUT usually they would just figure it out by themselves because it's quite intuitive.
A little optimism and positivity doesn't hurt now and again.
I'm surprised there's really much alternative. My schools either used Moodle or Blackboard and Blackboard was absolutely awful since it was a product of just acquiring and suing companies out of competition.
Canvas suffers from being originally designed for use in elementary (K-12) school, and then kind of wedged into college. On the teaching side it kind of assumes that classes will always be relatively small (running a 100+ student seminar class in Canvas is a nightmare) and that you, the teacher, don't mind performing the same actions over and over and...
But, it's one of the few LMSs designed post-Web 2.0 so things that require a refresh or reload in BB, etc., generally happen much more smoothly.
On the other hand our school was moving to Moodle from something else (I think it was called Blackboard? Maybe https://en.wikipedia.org/wiki/Blackboard_Learn?) and it was an absolute pleasure compared to the alternative (which a few courses still used). There were definitely a few clunky parts (like the form) but overall it worked, was reasonably fast and wasn't awful. This was a student PoV though, really I just needed it to render some rich-text content provided by the prof and the occasional assignment submission or quiz. IDK if setting these things up was particularly painful.
This was about 8 years ago now, IDK if it got worse or better since then.
yes, it's open source. It can still be bad, no? I was forced to use it because there is no other sane way to get specific information about students and share stuff easily (aka without supporting your own DNS-entry...). It's still horrible.
And I stopped caring for the moodle-community after I found a forum-post (in 200X) which outlined all the problems they have today and got told: f** off, you don't know how to program.
Did you ever have performance issues with quizzes especially for courses/installation with large users? How did you deal with performances issues especially if you had resource constraints?
Moodle seems to be good enough to cover the needs of vast majority of university courses I've encountered - ones where you read some materials, watch some vids, discuss and write essays. However, I feel that there are better options for ones which benefit from more interactivity, like maths or coding, even if Moodle supports it through plugins.
I worked extensively with Moodle back in college as part of IT. Moodle is pretty solid, but had numerous bugs.
We were one of the few colleges that used the most up-to-date version of Moodle when it came out. One year, Moodle replaced its default grading setting with something called (if I recall correctly) Natural grading. We tested it and had professors try it out.
Natural grading seemed fine at first, but then professors started noticing issues after a couple of days. The math just didn't seem right. We went through multiple courses, looked at grades, and calculated averages - everything was slightly off! We switched all classes that tried the new grading back to the old default.
No one could really figure out what was going on. It wasn't exactly clear what math they were using.
As it turns out, we were one of the very few that updated to the latest version. We even got a phone call from a university that saw we were using the newest version and asked what we did to solve the natural grading issue.
Another time, a year or so later, I went to submit some homework through Moodle. I realized that my professor used the wrong setting for his assignments, making it so that I couldn't re-submit an assignment.
I could have logged into my administrator account and helped him, but that also would get me very, very fired (and possibly jeopardize me being a student).
Instead, I inspected the UI and realized that Moodle was actually rendering all buttons, and then using CSS to hide them based upon the settings the professor chose. I un-hid the submission button, and then re-submitted my homework.
At the end of the day, Moodle was pretty good. Despite these experiences, I still view it very fondly.
Several years ago, at my previous job, I worked on a short-lived project in Moodle. It came to me because I had some PHP experience, a decade prior and no one else had any. I hooked it up to our auth and got it running in Docker.
The project was scrapped after a couple of months as community it was intended for decided to manage it themselves.
Moodle itself seemed like a neat project. I was impressed with the install wizard. I did have some reservations about the "everything is a plug-in" architecture: it seemed possibly too clever for its own good.
80 comments
[ 3.2 ms ] story [ 146 ms ] threadRelevant xkcd https://xkcd.com/1053/
This thread is 50% "this software is garbage" and 5p% "why was this posted here".
Seems a low hanging fruit for the scythe of moderation to me.
It's not a new project, so if it's a TIL this is a thing, then post that, if its "Moodle releases x.0" then post that. The focus of the page seems to be mostly on an upcoming conference in Europe, is that what the OP wants us to see? I'm clicking on it wondering if there's something new to see?
If its new, usually you put a Show HN: in front of it. If it's new to you, put TIL as you mentioned, nothing at all is just confusing and I feel like I'm missing something.
This is coming from someone who tried out a Moodle server at a college I worked at in 2003-5. I get new people are discovering it, but that's like me posting a link to Debian's homepage, or Apache with no context because it's new to me.
None of the responses have been the OP clarifying their intention, which is who the question was for anyway. What does OP want me to see on their page?
Is it one of those checkboxes that would be required or heavily weighted while doing an evaluation/bidding process?
When I was in college, a lab needed to replace some equipment and had to go through the bidding process. They had to develop objective criteria that the bids would be judged against with a scoring system and requirements.
It took some real effort to write the criteria such that they would not end up with a really awful system from a vendor who was known to have awful support, but not write it in an exclusionary fashion.
> Is it one of those checkboxes that would be required or heavily weighted while doing an evaluation/bidding process?
It might be, yes. But only heavily weighted by those entities, who peddle such very basic learning material and don't have interactive components, except for maybe some very basic quiz. When you develop a new LMS and try to make a business out of it, you will probably sooner or later get in contact with such entities, who would like to push their content into your newly developed platform and have some SCORM artifact. So they ask you whether your platform is SCORM compatible.
But anyway, mostly it will not be worth it, if you want modern courses with nice interactive features. SCORM will only slow you down.
Video content seems not to be its main concern, but I can imagine that it is hard to scale if people want to use it to deliver video.
https://en.wikipedia.org/wiki/Learning_management_system
All colleges I ever went to used moodle and when I was teaching college courses, I was using it too. We even had an integrated Java code runner to automate programming exercise hand ins. Learning curve is gentle.
I suspect, much like ticketing and project management systems, LMS software is always going to be awful -somehow- because of competing desires from different users, and that as such "the least amount of awful amongst the ones I've dealt with" should probably be considered a (qualified) endorsement.
However, that doesn't seem to be any better in any other web CMS, and Moodle is extendable with lots of open source plugins for any imaginable purpose, so overall it's a powerful Swiss army knife, and it has all the advantages of a self-hosted, open source project.
I suspect the 80/20 rule is in play, wherein each of the 80% of users is using a different 20% of features so your choices are to end up with something nearly feature free (think early github issues for a ticketing example), something specialised to a specific vertical subset of the potential use cases, a complex and usually clunky GUI, or programmatic style configuration that requires a level of time investment that rules out the people whose jobs will be to actually use it being the ones to set it up.
Moodle goes the lots-of-features GUI route and does a less annoying job of it than average - like I say, I think the problems are kinda inherent if your goal is to support as many different purposes as it does, and that's a trade-off that's often worth making.
Thats what SQL is for. You can setup everything using their fairly simple tables, and keep it in sync with whatever registration system you're using.
Permissions however were confusing and forget about faculty understanding them.
1. There's no common area for teachers. I cannot have common resources. For example, I like to have some ground rules for all my courses; cannot have them stored in a common space to import them to any course opened.
2. So many steps are repetitive and cumbersome without any possibility of automating them. For example, I can devise an activity and set up a carefully crafted rubric for grading. There's no way to store that rubric elsewhere so I could reuse it for another, similar activity either in that same course or in another.
3. No possibility of mass uploading files except when in a folder.
4. No possibility of customizing an activity or resource per-teacher. If any, is either school-wide or nothing.
5. I need a custom Web font (for some language I teach) but it's extremely difficult to configure that school-wide. Teacher-specific it's just impossible.
and the laundry list could go on and on and on. These are little details, but enormous time wasters.
The 'almost' is because e.g. RT or JIRA -can- be configured such that they provide exactly the details and workflow that each team/queue wants and end up being almost pleasant to work with, but putting in the necessary business analysis time and having somebody learn their configuration and scripting facilities sufficiently to actually achieve that is something I only encounter very occasionally.
There was a separate system that would handle paging on user defined rules based on priority and aforementioned hierarchy.
[1] https://noodle.run
The back end is still quite competitive and mostly just works. Classic PHP advantages at play here. The project won't die anytime soon.
PHP is the gold standard for "it will run forever" in web- new patterns with the goal of faster iteration speed often doesn't pan out the way devs expect. (probably the reason why another language hasn't overtaken the LMS space yet).
But it is very dated by now. Not so much in its look and feel (which definitely does not chase every hip refresh of the frontend world) but in terms of its overall backend design, its technical debt and ability to evolve as a platform (API's, content generation, plugin development etc).
With dramatic developments as we move into the Web 3.0 era (federated platforms, ML/AI) there is a question mark if the initiative and community have the vision, resources and execution ability to transform it into something that will be relevant ten years from now.
I hope it does. It would certainly be tremendous added value on top of everything that its has delivered so far.
Being downvoted by people "who know better" the state of Moodle so not inclined to spend further time on this.
Case in point: I had a course and wanted to publish my excel-grading-sheet to a moodle course: 1) there is hardly any documentation on how to do that... 2) from the one paragraph I pieced together the primitive XML-spec. Now people had the points for their work. 3) it would be nice to give people a total of points? BUT: there is no way to do that nicely - I was presented with a formula editor (including: trigonometric functions...), where I could put together individual exercise ids BY HAND (summation with regex might be more useful than trig, no?) 4) students complained: I handed in the tasks and don't have points yet 5) turns out: the XML-parser they use stops at UTF8 and the person who coded that thought: "hey, we print 'import successful' and just stop the import at the specific entry we couldn't handle, partially updating the DB"
Also there is of course no API of any sorts (so automation is impossible...), which is no wonder if your development is stuck at .php-files intermingling code and html...
When I think about it, most options related to time-limiting something, or quizes/tests, were so complicated for most of them that they would hack around it by reusing the same items, expiring them in 2099 and then (I guess) manually changing visibility for those present in the room. Then all hell breaks loose when they didn't update the questions correctly and you get like 0% for all correct answers, or they get the results for all 1500 people who ever attended the class, then they manually filter it out for current-year students. Often, our tests would begin like "Do you see it in the Moodle? No? And now? And now? OK, now? Now? Still nothing?".
This was on an ICT college where you'd expect more computer savvy people. But even there, the problems were happening too often to be able to blame users. It's just awful UX.
Before Moodle we used to get nicely formatted PDF's (made with Latex I pressume). This might sound like a nitpick, but if you are spending hours reading the material over and over it is a pretty serious drawback. I don't undesrtand how moodle does not have a decent reader mode builtin. Also, I have always been the learning type that prints out the PDF and the draws, underlines, writes in it while reading it. Dunno, reading on screen just doesnt work for me that well.
I've managed a Moodle install for my university for many years without any hiccups. I've trained lots of teachers on how to use it BUT usually they would just figure it out by themselves because it's quite intuitive.
A little optimism and positivity doesn't hurt now and again.
But, it's one of the few LMSs designed post-Web 2.0 so things that require a refresh or reload in BB, etc., generally happen much more smoothly.
These days I like Brightspace (aka D2L) the best, but that could be just because the way I interact with it.
(I write LMS integrations for a living).
This was about 8 years ago now, IDK if it got worse or better since then.
And I stopped caring for the moodle-community after I found a forum-post (in 200X) which outlined all the problems they have today and got told: f** off, you don't know how to program.
Any pointers for alternatives?
We were one of the few colleges that used the most up-to-date version of Moodle when it came out. One year, Moodle replaced its default grading setting with something called (if I recall correctly) Natural grading. We tested it and had professors try it out.
Natural grading seemed fine at first, but then professors started noticing issues after a couple of days. The math just didn't seem right. We went through multiple courses, looked at grades, and calculated averages - everything was slightly off! We switched all classes that tried the new grading back to the old default.
No one could really figure out what was going on. It wasn't exactly clear what math they were using.
As it turns out, we were one of the very few that updated to the latest version. We even got a phone call from a university that saw we were using the newest version and asked what we did to solve the natural grading issue.
Another time, a year or so later, I went to submit some homework through Moodle. I realized that my professor used the wrong setting for his assignments, making it so that I couldn't re-submit an assignment.
I could have logged into my administrator account and helped him, but that also would get me very, very fired (and possibly jeopardize me being a student).
Instead, I inspected the UI and realized that Moodle was actually rendering all buttons, and then using CSS to hide them based upon the settings the professor chose. I un-hid the submission button, and then re-submitted my homework.
At the end of the day, Moodle was pretty good. Despite these experiences, I still view it very fondly.
The project was scrapped after a couple of months as community it was intended for decided to manage it themselves.
Moodle itself seemed like a neat project. I was impressed with the install wizard. I did have some reservations about the "everything is a plug-in" architecture: it seemed possibly too clever for its own good.