Core Contributor Update: Jun 22nd - Jul 5th, 2024
Use the jump links below to view the section that interests you:
1. Working Groups Updates
1.1. BTR Working Group
Chair: @jalondonot
Latest news
- The security patch has been applied and published Security: Upcoming Security Release for edx-platform on 2024-06-17
- Some additional testing will be run during the next couple of days.
- Redwood will be released on Wednesday, June 19 at 16h00 UTC>
Meeting notes
1.2. Contributor Coordination Working Group
Chair: Jorge Londoño
- Next meeting: 2024/07/09 https://openedx.atlassian.net/wiki/spaces/COMM/pages/4281401345/2024-07-09+CC+Working+Group+Meeting+Notes
Meeting notes
1.3. Data Working Group
Chair: @e0d & @blarghmatey
Past meeting notes 2024-05-29 Meeting notes
- Aspects Product Release Notes and How-Tos for Course Delivery Teams and Superusers; Setup Documentation for Site Operators to follow:
- Feature Release Notes
- How-Tos for Course Delivery teams
- Setup Documentation for Site Operators
- Collecting feedback on Aspects: Watch out for a form in the Data WG meeting soon!
- Aspects extension options: Looking for options to extend aspects with third-party plugins.
Meeting notes
1.4. DEPR Working Group
Chair: @feanil
Latest news
- replacement/extensibility of ID verification system: [Proposal] Add Extensibility Mechanisms to IDV to Enable Integration of New IDV Vendor Persona
- Node 18 deprecation
- problem-builder deprecation: [DEPR]: problem-builder · Issue #268 · openedx/public-engineering
- this seems to be just for an already existing XBlock in the open-craft repository
- good to see other parts of the Open edX ecosystem using the DEPR process to announce changes!
- maintenance working group: expand and and contract for changes
- use the DEPR process to announce breaking changes, not just deprecations
- this would necessitate a change to the deprecation OEP to match this update to the process
- overall, it seems good to leverage the existing process that people know about for this
- adding metadata to track dates so we can filter/graph/etc them instead of relying on reading and parsing the ticket only
- discussion in slack: https://openedx.slack.com/archives/C03R320AFJP/p1718116345624739Conecta tu cuenta de Slack
- Kyle McCormick made some suggestions for metadata changes, could formalize this into a set proposal of new fields to create and update
Meeting notes
1.6. Tutor Users’ Group
Chair: Kyle McCormick
Past meeting notes Tutor Users GW 2024-06-03
- MFE build time (below)
- Configuring open edx services with tutor
- Moises and Maksim work on large instances group
- Some of tutor’s default were meant to simplify setup
- For large instances, they need to undo tutor’s defaults
- example: celery queues
- tutor uses one celery queue
- at scale, the queue can fill up
- using patches, large instances has been undoing tutor’s configuration changes
- edx-platform is complex to follow, with all the indirection
- related: OEP-45 simplification
- could be better to have a blank slate
- edunext had to replicate ansible installation settings, using tutor
- they are using settings patches
- Having plugins expose configuration interfaces
- tutor-contrib-pod-autoscaling
- rather than add more config settings, the plugin
Meeting notes
1.7. Educators Working Group
Chair: @john_curricume
Past meeting notes 2024-05-20 Educator WG
- DJohn Swope, Education Technology Specialist, Chair at St. George’s University AI in Higher Education committee, Author of Micro AI Apps in Online Education: Impacts on Efficiency, Quality and Future Directions to discuss 5 Lessons Learned Building AI Assessments.
Meeting notes
1.8. Frontend Working Group
Chair: @arbrandes
Latest news
- David’s Solution for Frontend Build Testing:
- David discovered a method to ease the long-standing issue of testing MFEs with frontend builds.
- Solution involves using local copies of frontend builds set as files and modifying Webpack loaders.
- Module Federation Implementation:
- Discussion on the architecture and placement of OEP-0065 changes within the codebase.
- Transition from single-page applications (SPAs) to module-based architecture using module federation.
- Multiple options considered for transitioning, including incremental changes within the frontend app repo and separate build targets.
- Challenges with Current Approach:
- Issues with requiring multiple PRs for changes across repos (modules and apps).
- Exploring alternatives like mini monorepos or maintaining separate directories within a repo to ease development and deployment.
- Future Direction for Frontend Development:
- Supporting both SPAs and module-based development simultaneously.
- Potential solutions for maintaining consistency and ease of development while transitioning.
- Customizability and Compatibility Concerns:
- Maintaining the ability to run MFEs independently.
- Ensuring new changes are backward compatible.
- Discussion on integrating front-end plugin framework (FPF) into new module federation architecture.
- Addressing Specific Issues and Development Needs:
- Considerations for enterprise versus open-source implementations.
- Handling forks and customizations within the module federation setup.
- Integrating dependencies like
front-end build
andfront-end platform
in a modular approach.
- Next Steps and Action Items:
- Awaiting David’s ADRs (Architecture Decision Records) for further clarity.
- Potential for a modularity summit to discuss and iron out implementation details.
- Ensuring backward compatibility and ease of transition for developers.
Meeting notes
1.9. Large Instances Working Group
Latest news
- Updates from each org on the call - 2U, Edunext, OpenCraft, Raccoon Gang
- Edunext:
- Felipe Montoya : interested in discussing Reaching 50k concurrent users on Open edX with Oracle Cloud with stakeholders at the conference to better understand the numbers.
- Moisés González : Exploring using ingress-nginx for serving static assets in on-premises (non-cloud) installations, because it can cache some files in memory and reduce traffic to the LMS pods (e.g. uwsgi which normally serves static assets). It seems to be performing well, reducing load on the LMS pods, though not as effectively as using CloudFront. If this continues to seem promising, we should investigate adding it to Harmony.
- Jhony Avella In the last meeting, I mentioned 502 errors we were seeing. However, we stopped seeing the issue. At a future hackathon, we are planning to measure how various configuration policies (number of workers, pod size, etc) affect the instances and the error rate.
- We have a client that doesn’t allow pods to run with the root user, but Tutor currently requires this for some pods like minio, caddy, and tutor-mfe. Planning to mention this to the tutor users group.
- Regarding the celery workers: when using just one queue for LMS/CMS services, it’s very difficult to predict the workload when there’s a mix of long-running and short-running tasks. We want to separate the async load into different queues. We’re still testing this, but it’s looking promising.
- Harmony project updates:
- Maksim Sokolskiy finished testing the Elasticsearch PR - thanks! Though we have a dependency on another PR for tutor-forum, so we’ll try to nudge the maintainer to get that dependency merged.
- Moisés González : For logging with Aspects, we use a helm chart to deploy Vector as a demonset, which uses a privileged container to capture and transform logs. The other approach is to use a sidecar container which pushes the logs to Vector. We’ve been using the demonset approach, where you can configure which pods (e.g. only ones with a specific annotation), and then it transforms the logs into a format that is compatible with aspects. Considering making a tutor and/or Harmony plugin for this approach.
- Moisés González : We should update all the dependencies in our Helm chart to make sure we’re up to date for security patches, etc. Also, one big helm chart is getting messy. Maybe we can split it up into several separate helm charts that operators can pick and choose.
Meeting notes
1.10. Marketing Working Group
Chair: Eden Huthmacher
Latest news
- Learning Technology Conference Recap
- Next conference to attend jointly - 2 proposals:
- Educause - end of October - Open edX will there
- EduTech in Asia - beginning of November
- OEB Global in Berlin (happens during Thanksgiving break) - Abstract will be there
- AWS Potential Partnership Update - jamboard for brainstorming - add ideas by 5/24/24
- Sandbox rotation
- Next Open edX Meetup: Optimizing the Open edX Platform Experience
- OKR Strategy Review in GitHub
- Relevant link: Marketing Working Group • openedx
Meeting notes
1.11. Maintainers
Chair: Feanil
- edx-platform Maintenance Models: Feanil Patel - * I’ve started a document, please add more ideas to it.
- Swapping Maintenance Meetings: Feanil Patel - Agreed to swapping. edx-platform meeting will be after the full maintenance WG meeting.
- Teams in Github as a communication form:
- There is not an escalation path for when a team is not being responsive.
- One solution: Escalate to the maintenance WG
- Previous Solution: Escalate to specific 2U contact points for PRs stuck on specific companies.
- Should teams that are maintainers be public to easily find specific people.
- For now, use the #wg-maintenance channel to escalate any PRs that are blocked on repos that have maintainers.
- Teams are not always properly updated in Backstage, Backstage is out-of-date compared to github.
- frontend-app-learning Hand-off: Feanil Patel - * Can the 2U Aurora team post to hand off maintainership per 0002 Maintainership Transfer Process — Open edX Proposals 1.0 documentation
- [JR] Will do this for fea-ecommerce as well.
- frontend-app-ecommerce maintenance:
- Found a proposal: [DEPR]: Replace the ecommerce application · Issue #22 · openedx/public-engineering
- And a roadmap issue: Replace the Ecommerce Application · Issue #83 · openedx/platform-roadmap
- Repo ownership clarification: * Spreadsheet for finding maintainers
Meeting notes
1.12. Product Working Group
Chair: Jenna Makowski
Latest news
- UX/UI Working Group
- Database of UX/UI Projects
Steps for moving PR #455 forward?’
Next steps: Cassie Zamparini , Chelsea Rathbun , Asma Ahmed to do blind tests of the current implementation and provide feedback on whether it’s too confusing/complex to merge as is, or whether it needs more work. Link to the sandbox:Welcome | My Open edX - Studio- LTI/Learning Tool WG Meeting
- We kindly ask participants and anyone interested to watch the following two videos showcasing the prototype aimed at enhancing the administration and reuse of LTI tools. Please share your comments, questions, and feedback in the comments bellow to be addressed in our upcoming meeting.
- 2024-4-30 presentation: LTI Working Group (2024-04-30 10:05 GMT-4)
- 2024-4-16 presentation: LTI Working Group (2024-04-16 10:03 GMT-4)
- You can explore the following clickable prototype: LTI Prototype
Meeting notes
1.13. Security Working Group
Chair: Feanil Patel
Past meeting notes 2023-07-26 Security WG Meeting
Meeting notes
1.14. TOC
Chair: Ed Zarecor
Past meeting notes Open edX Meetup - 2024-02-29 - Panel Discussion
- Potential grant project for the Open edX project:
- A proposal was submitted for a sub-award on an NSF grant supporting educational research This continued a discussion from the last meeting. The scope of work was discussed, the grant would be to improve research analytics, and could benefit Open edX in improving both research and API coverage. The proposal aimed to present content to learners in a way that would allow researchers to influence how it was presented
- There were concerns about ensuring these changes do not interfere with other ongoing efforts and Axim’s workload. The importance of building generic platform capabilities that can be used with other experimental programs beyond the grant project itself was stressed, to make the grant worthwhile even if the project itself doesn’t gain traction to mitigate potential issues, some members suggested setting up institutional “forcing functions” to ensure that any specific integrations did not leak into the core platform, for example by ensuring the providers selected to work on the core and on the non-core features are different teams.
- The project with Spanish universities was discussed, focusing on integrating new functionalities in the platform and aligning with the community. It was concluded that ways of working could be adapted and a campus working group coordinated.
- For the next meeting, the goal is to present more detailed documents for this project
- Converting the discussion service from Ruby to Python:
- The group discussed the proposal to rewrite a portion of Open edX’s forum codebase. Currently, the service is implemented in Ruby and utilizes MongoDB for data storage – both technologies that are not widely used or familiar within the broader open edX community. The proposed change involves translating the current code from Ruby into Python and migrating data models from MongoDB to MySQL. This would simplify the stack, potentially making it more accessible for developers to contribute improvements.
- The forum proposal was discussed in detail. The group discussed whether a discussion forum should be built and maintained by the Open edX project or whether integration with third-party solutions should be preferred. Having a robust, open source solution remains a priority in either event. A recommendation was not made at this meeting.
- The proposal for migrating the forums includes a progressive rollout plan to support large installations, especially organizations like 2U. The question was raised whether the complexity introduced by this approach created enough value to justify that complexity. Conversations with stakeholders will happen between now and the next meeting.
- While most agreed on its technical benefits, questions arose around prioritization among various projects as well as funding sources for such an undertaking.
- A document was suggested to recap all the projects and changes currently being discussed in the different working groups and the vision behind it. This was seen as beneficial not just for the TOC, but also for the broader community.
- Proposal to make course content easily installable on any Open edX instance:
- The idea was discussed: the content should be easily shared, allowing people to easily contribute to it.
- It was suggested to add syndication features to existing courses already licensed under creative commons, to allow sharing between instances. A “cartridge” feature was also mentioned, for turning Xcode courses into importable content on other Open edX instances.
- The importance of designing content for reusability and modularity, rather than creating a single, long course, was emphasized. It is unlikely that individual institutions or companies will invest in such a library due to its public good nature, making it an ideal funding opportunity for organizations like Axim.
- The conversation concluded with the idea that all content should be decomposable into constituent pieces, allowing people to choose how they want to export it. Due to time, further discussion of this topic was postponed.
Relevant links
Meeting notes
1.15. Translation Working Group
Chair: Eden Huthmacher
Past meeting notes 2024-05-15 Translation WG Meeting notes
- Review language performances - performance went down due to the transition from edx-platform to openedx-translations project - machine translations have been activated for all languages, except for Portuguese (Portugal): Translation Working Group
- GH Board review: Translations Working Group • openedx
Meeting notes
2. Events
- 2024 Open edX Conference
- Would anyone like to highlight any past or upcoming events? Let us know in the comments!
3. Projects
Are there any new or ongoing projects you’d like to discuss? Get the conversation started in the comments below.
4. Next async update and meetup
- Friday 5th - Async update
- Tuesday July 9th - Join the meetup here!
- Details and draft agenda on Confluence
Anything to add?
If there’s anything else you’d like to mention, please let us know in the comments below.