INPUT NEEDED: 2024 State of Open edX Address

I’ve been stuck on Lilac for my production server for 2.5 years, because every release of Open edX is chock full of new regressions.

  • Lilac → Nutmeg broke emoji/unicode support.
  • Whenever tutor was officially adopted, no attempt was made to update all the documentation, so it just broke all docs. It also broke support for analytics (only to eventually re-introduce it as a paid plugin (Cairn), only to eventually make it free after Regis got acquired.) Oh and you know how apparently you used to be able to just set configuration values in configuration files? Now you have to write a plugin to do that, except there’s never been any documentation written about what the mapping is between things like “common-env-features” and “lms-env-features” and “openedx-common-settings” and the actual config files like lms.yml that the Open edX documentation tells you to change.
  • Then Olive broke the login UI.
  • Support for Google Analytics 4 wasn’t released until days before the previous Google Analytics was turned off (so if you couldn’t immediately upgrade to Palm because of its regressions, oh well, sucks to be you! Maybe you should pay 250k a year for premium google analytics, loser. And if you look at that thread you’ll see that even as late as palm.4 GA4 broke the capability for students to view course completion certificates.)
  • Then Palm broke the progress tracking UI. (Still not fixed in Quince.)
  • Then Quince introduced a non-opt-out UI element that makes students think you’re trying to upsell them to pay for free classes.

These are just a few of the issues I’ve encountered.

How’s the health of the community you ask? Just peachy :ok_hand:

p.s. if I had to “proposes some areas of shared focus for the future”, beyond the obvious regression testing mentioned above, it’d be getting Libraries to being a first-class feature. We’ve been promised “new Libraries v2 coming soon!” for like 3+ years. One of our instructors made heavy use or Libraries and was viciously punished for it. Because library UUIDs on our production server != library UUIDs on our beta server (they seem to be based on timestamps or something), so when the instructor went to import from beta to production they have to go create a production placeholder class, add 50 libraries, export, get the UUIDs, run 50 find-and-replace calls on the decompressed beta class, before importing it. I really don’t think “people should be able to reuse material between classes instead of copying and pasting things and being unable to keep them synchronized” is that unreasonable of request from a LMS. (Beyond that, I don’t think “update all the places this Library is found” is that unreasonable either, instead of forcing the only way to be to go everywhere and hit “refresh”, thus basically removing any synchronization benefit over just copying and pasting the same content everywhere.)

4 Likes