Core Contributor Update: March 30th - April 12th , 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
- Updating URL, Zoom Meeting, and Agenda
Peter sent a link to two individuals waiting in another room, while Jorge and Adolfo discussed updating a URL in the community calendar. Adolfo suggested deleting a recurring Zoom meeting to prevent issues with the link, which was agreed upon by the group. Jorge then shared the meetingâs agenda, which included updates from Maga and Majo on security patches and issues tracking, respectively. Jorge requested a review of these updates, and a reminder would be sent in Slack if no one could provide a review.- Redwood Project Coordination and Documentation
Jorge informed the team that he had arranged for Dean to assist with the testing coordination role for the Redwood project. Peter was asked to lend Dean a hand, share responsibilities for the project release, and coordinate the effort between them. Jenna introduced a new wiki space for documenting all features related to Redwood, aiming to create a singular source of truth for the project. The team agreed to update this wiki with information on their respective tasks, with a focus on the major new features in the upcoming release.- Streamlining Product Documentation and Integration
Jenna introduced a new system to streamline the organization of product documentation, which includes various types of documents and test acceptance criteria for new features. The team appreciated the systemâs potential to improve the release notes process and decided to adopt the Gherkin method for documenting acceptance criteria tests. They also committed to prioritizing the documentation of new features in Redwood and addressing various integration concerns. The studio facelift, which involved a new MFE, was identified as the primary focus due to its extent.- New Development Integration and Deployment
The team discussed the integration of new development into their existing project. Adolfo proposed that the approach of the studio facelift should be applied to all new developments. Jenna indicated a timeline of 2 to 3 weeks to align the documentation with the code cutting. Adolfo expressed concern about potential issues with the deployment of new features, particularly with content tagging and video uploads. Peter suggested using feature flags for new features during testing, which was agreed upon by Adolfo. Lastly, Adolfo acknowledged the recent decision regarding front-end plugins.- Front-End Plugin Framework Approach
Adolfo decided to implement the front-end Plugin framework approach for plugins and aimed to have at least one plugin slot or UI slot per officially released MF for Redwoods. He also suggested integrating the new learner navigation bar as a plugin. Jenna proposed having a separate line item for each, and Adolfo agreed, mentioning the need for supporting JavaScript configuration for the Tutor MFE, which currently doesnât exist. Adolfo further clarified that the front-end pluggability framework uses a more flexible way to configure MFes, with JavaScript configuration, promoting configuration flexibility for plugins.- New Configuration Method and LMS Integration
Adolfo proposed a new configuration method, which would be implemented as a plugin to ensure flexibility and reduce risk. This method, currently under discussion, may not be included in the Redwood release but is a crucial action item for the coming weeks. Additionally, plans were made to integrate an AI-powered translation feature into the learning management system (LMS) as a plugin, which could be used for AI translations or other purposes, given the LMSâs flexibility. Adolfo recommended adding an additional slot for the sidebar to accommodate this new feature. The impact on the product list and features was also discussed.- Project Progress and Discussion
Adolfo informed the team that the progress of the project was being led by Jason Weston and Lung Su, and encouraged everyone to follow the Wg. Front end Channel or attend meetings for updates. Jorge reminded the team about the next important meeting set for the following weekâs Thursday to provide monthly planning. Peter sought clarification on the decision-making process for the upcoming âRedwoodâ release, and Jorge explained that the meeting would provide enough information to make a final decision, though a specific date might not be set. Chelsea raised a concern about an unresolved risk related to the left sidebar nav, and agreed to initiate a discussion with the relevant teams.
Meeting notes
1.2. Contributor Coordination Working Group
Chair: Jorge Londoño
Past meeting notes 2024-03-19 CC Working Group Meeting Notes
- Release Coordinator for Redwood: Jorge Londoño highlighted the need for a release coordinator for the Redwood release. Discussion about the role between the protocol group and BTR working group ensued. Adolfo Brandes mentioned Peter Pinch volunteered for the role, with some reservations.
- Plug Ability Summit and Implementation Decision: Adolfo Brandes discussed a second Plug Ability Summit to decide on competing implementations for frontend communications. The goal was to decide which implementation to move forward with and if it could be included in the Redwood release.
- GitHub Milestones Proposal: Adolfo Brandes proposed using GitHub milestones in every repository for upcoming releases to better organize epics and tickets.
- Elephant Factor Increase and Core Contributors as Backup Reviewers: Discussion on increasing the âelephant factorâ by expanding maintainers and the role of core contributors in reviewing pull requests. Emphasis on filling gaps where there is a lack of maintainers.
- Feedback and Iteration on Core Contributorsâ Sprint Check-ins and Retrospectives: Discussed the importance of gaining feedback through surveys to improve sprint check-ins and retrospectives. Mentioned a low response rate to the survey and the need to encourage more responses.
- Use of Slack vs. More Asynchronous Communication: Touched on the use of Otter for meeting transcriptions and the potential for working group hosts to decide on their transcription methods.
Meeting notes
1.3. Data Working Group
Chair: @e0d & @blarghmatey
Latest news
- Overview of the Course Dashboard in itâs current state: Interesting discussion about completions/progress % being added to the course dashboard/individual learner dashboard
- Time on task and other data-related work being done by Raccoon Gang: Status update on change in roles working on this work; but will continue to update us on plugins being developed for Aspects
- Aspects pipeline performance: A benchmark of tests have been run on the various ways to get xAPI to ClickHouse (Celery, Vector, Redis bus, Kafka bus). Iâll take a quick spin through the results and discuss the findings so far.
Meeting notes
1.4. DEPR Working Group
Chair: @feanil
Latest news
- Update the OEP to match the new process listed below
- Hopefully the new process has been updated to accommodate everyoneâs feedback
- Deborah Kaplan to draft a proposal (create a PR) to update the OEP to match the proposed changes below
- Go through the board, move tickets to the appropriate status according to the process
- Moved tickets around and assigned new owners to some of them.
- Send out announcements about the changes to the DEPR process.
- This will happen once the PR to update the OEP has been created
- [Diana] 2U is in the process of planning out how to handle the removal of the devstack infrastructure from openedx
Meeting notes
1.5. DevEx Working Group
Chair: @Rebecca_S_Graber & @kmccormick
Past meeting notes 2023-12-04 DevEx Meetup Notes
- Scheduled Topics / Demos
- Becca: Tutor on M1 redux
- Webpack failure during
npm ci
for bind-mounted edx-platform
- debug after meeting if time allows
- If the live demo gods smile on us: tutor package auto-mounting â new for Quince.
- Challenges
- Adding Typing/Linting/Testing to all tutor plugins:
- Feat: Testing and Linting by CodeWithEmad · Pull Request #16 · overhangio/tutor-credentials
- Feat: Testing and Linting by CodeWithEmad · Pull Request #54 · overhangio/tutor-discovery
- Feat: Testing and Linting by CodeWithEmad · Pull Request #31 · overhangio/tutor-notes
- Feat: Testing and Linting by CodeWithEmad · Pull Request #32 · overhangio/tutor-minio
- Feat: Testing and Linting by CodeWithEmad · Pull Request #50 · overhangio/tutor-ecommerce
- Feat: Testing and Linting by CodeWithEmad · Pull Request #19 · overhangio/tutor-cairn
- Feat: Testing and Linting by CodeWithEmad · Pull Request #13 · overhangio/tutor-android
- Feat: Testing and Linting by CodeWithEmad · Pull Request #29 · overhangio/tutor-forum
- Feat: Testing and Linting by CodeWithEmad · Pull Request #9 · overhangio/tutor-webui
- Feat: Testing and Linting by CodeWithEmad · Pull Request #50 · overhangio/tutor-indigo
- Running a shared elastic on our k8s cluster with some help form openedx-k8s-harmony:
- fixed some issues there:
Meeting notes
1.6. Tutor Usersâ Group
Chair: Kyle McCormick
Latest news
- Integrate Tutor with IntelliJ IDEA/Pycharm (by Qasim Gulzaredly)
- The tutorial instructions will be published soon-ish in a dedicated space.
- In the meantime, we can reproduce the instructions with the video recording.
- Instructions are still hackish and a little brittle, we can definitely work to improve them.
- MongoDb 7 upgrade: scheduled for Redwood
- utf8mb3 upgrade. We reached the following decisions for Redwood:
- upgrade the connection string and the database default charset to utf8mb4 for all platforms
- For existing platforms, upgrade the default database charset (with
ALTER DATABASE databasename CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
).- For existing platforms, convert tables in a conservative manner, using instructions similar to:
ALTER TABLE tablename CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
. The list of candidate tables is available here.- Implementation of these decisions can be followed in this GitHub issue: We must migrate the mysql databases from utf8mb3 to utf8mb4 · Issue #938 · overhangio/tutor
- MySQL high memory issue on Arch Linux: Really high memory usage · Issue #579 · docker-library/mysql
- It was suggested that Arch users manually create a docker-compose.override.yml file.
- We should update the troubleshooting instructions for Arch Linux users. Deimer Morales can you please open a pull request to update the Tutor docs?
Meeting notes
1.7. Educators Working Group
Chair: @john_curricume
Past meeting notes 2024-02-12 Educator WG
- Open edX Roadmap
- Rebecca Rumbel from the Penn State College of Agricultural Sciences present how the UPenn Extension Program has build up a large library of video content, and the best practices theyâve learned building educational video under resource constraints like many of us face.
- You can see the full discussion here 2024-02-12 Educators WG: Balancing Video Production and Available Resources
Meeting notes
Blockers or Calls/offers for help
- Looking for any and all documentors!
1.8. Frontend Working Group
Chair: @arbrandes
Latest news
- Introduction to Module Federation:
David Joy shared insights on exploring Webpack Module Federation as a direct, less invasive approach for front-end composability, contrasting it with adopting another layer like Piral on top of existing frameworks. The goal is to achieve similar benefits but with a simpler and more direct method.- Demonstration and Technical Details:
David provided a live demo showing how an MFE (Micro-Frontend) can load content from another MFE at runtime using Module Federation, without iframes, highlighting the ease of integrating CSS and ensuring a seamless user experience. He showcased the minimal webpack configuration needed and discussed the potential for incremental adoption by exposing specific components for module federation.- Benefits of Module Federation:
Simplified architecture: The approach allows for a significant reduction in code and complexity compared to Piral, focusing on leveraging webpackâs capabilities.
Decoupling and Independence: MFEs can be developed and operated independently without tight coupling to a shell application, enhancing modularity and flexibility.
Incremental Adoption: The method supports gradual integration, allowing parts of an application to be migrated without a complete overhaul.- Considerations and Challenges:
Authentication and Config Management: Discussions highlighted the need to ensure authentication and runtime config management work seamlessly within this architecture, considering how front-end platform libraries could be shared or independently managed across MFEs.
Development Workflow: Considerations on how development workflows might change, particularly around hot module reloading and maintaining independence between the shell and MFEs during development.- Next Steps:
Further Exploration: The group discussed the need for more in-depth proof of concepts to explore how existing MFEs could be integrated within a shell using Module Federation, specifically looking into authentication, configuration, and other technical challenges.
Community Engagement: There was a conversation about staying more closely connected with the broader JavaScript and front-end development community to ensure alignment with industry standards and practices.- Feedback and Concerns:
The group expressed interest in the simplified approach but also noted the importance of identifying potential pitfalls and ensuring that the adoption of Module Federation would not lead to significant rewrites or over-complication of existing infrastructure.
Meeting notes
1.9. Large Instances Working Group
- Updates from each org on the call - 2U, Edunext, OpenCraft, Raccoon Gang
- OpenCraft:
- Braden MacDonald Continued development and experimentation of Meilisearch for Studio content search.
- GĂĄbor Boros Successfully integrated several components of Harmony into âGroveâ, though some integrations are blocked on the Quince support of the Harmony Tutor plugin. Jhony Avella will pass any missing info (if thereâs any) to Farhaan Bukhsh and OpenCraft will start working on Quince support.
- Farhaan Bukhsh Will work on the Quince support of the Harmony Tutor plugin, resolving Support tutor >= 17.0.0 (quince) · Issue #61 · openedx/openedx-k8s-harmony
- Edunext:
- Was mainly focusing on MFEs, and investigated the implications of the recently published XZ backdoor on clusters and Amazon Linuxes.
- The majority of WG members were absent for the past week.
- Felipe Montoya hopes to share the K6 tests with the WG after removing internal code.
- Raccoon Gang:
- Planning to test a cluster with 50k - 100k users.
- Will publish their latest version of locust, which was forked from the opened repo and maintained.
- Moisés Gonzålez is interested in the test results as eduNEXT was experiencing performance degradation in some cases.
Blockers or Calls/offers for help
- The recent changes in the licensing of Redis is concerning and should be discussed to replace it. If yes, the should replacement be part of a Tutor plugin or not?
Meeting notes
1.10. Marketing Working Group
Chair: Eden Huthmacher
- Google Ads Account Suspension â blocked for promotions - advise on recovery?
- Open edX Conference 2024 Ambassador Program - open to all - expanded program
- Next Open edX Meetup - Mobile App Benefits + Use Case & Product Update - Redwood
- register for free here: Open edX Mobile App Usage & Feature Enhancements
- OKR Strategy Review in GitHub Marketing Working Group âą openedx
Meeting notes
1.11. Maintainers
Chair: Feanil
- libsass PRs:
- two med-risk merges to help with python upgrade:
- build: remove dependency on Python
sass
module by kdmccormick · Pull Request #34439 · openedx/edx-platform- build: compile/watch sass with new npm scripts by kdmccormick · Pull Request #34318 · openedx/edx-platform
- Python 3.11:
- Feanil knows of 4-5 requirements that are in the edx org.
- Right now (for Redwood), Feanil needs 2U to upgrade those to Python 3.11 (or pull them out).
- Longer term (Sumac?), either they will need to be removed from the base requirements , or moved into openedx org.
- Ticket tracking edx-platform Python 3.11 upgrade: https://github.com/openedx/edx-platform/issues/34229
- Looks like we have most of them covered
- Progress on Py311 in edx-platformâmanaged to get 311 tests passing on a branch (with mongo 7)
- Just unit tests for now, Feanil will swap pylint/quality/assets next
- Feanil will pull edx-platform code changes out into a separate PR so we can land those sooner
- static assets check will fail on 311 until libsass PRs (above) merge
- Feanil check on xblock==2 upgrade with aximprovements
- If feanil has not been answer your email lately, this upgrade is why
Meeting notes
1.12. Product Working Group
Chair: Jenna Makowski
- UX/UI Working Group
- MarĂa de los Ăngeles Aguilar gave an update of the LTI project and shared the following links for feedback:
- Gabriel Weinberg gave a detailed run-through of the process that designers, engineers, and PMs should follow when designing a new Paragon component: Contribution Process Update
- Feel free to leave comments / questions on the document, as it is still a work-in-progress
- Jenna Makowski went through Libraries Relaunch: MVP Requirements and asked the group to leave any questions on the document
- LTI/Learning Tool WG Meeting
- Update on the LTI project:
Relevant links
- Documenting the research process to create a better experience in creating and reusing LTI tools: Notion â The all-in-one workspace for your notes, tasks, wikis, and databases.
- Current LTI prototype: https://www.figma.com/proto/apH0sMD5tqGnNxa18wuyhJ/LTI-Prototype?type=design&node-id=819-60971&t=3wAPsOgUrE1Gz1sv-0&scaling=min-zoom&page-id=819%3A60970&starting-point-node-id=819%3A60971
- UX Writing Matrix: UX Writing - LTI Project - Google Sheets
- Heuristic Evaluation: Notion â The all-in-one workspace for your notes, tasks, wikis, and databases.
Meeting notes
1.13. Security Working Group
Chair: Feanil Patel
Past meeting notes 2023-07-26 Security WG Meeting
- Vision-casting: Where do we want to go in the future for proactive security work?
- Areas
- 1st-party dependency security upgrades
- Maintenance Board
- 3rd-party security upgrades
- Maga is working on creating process in BTR for Django
- Code
- XSS linting on edx-platform
- What are the top possible improvements?
- 3rd-party security upgrades
- Django security linters
Meeting notes
1.14. TOC
Chair: Ed Zarecor
Past meeting notes Open edX Meetup - 2024-02-29 - Panel Discussion
- The TOC members discussed the development of privacy-preserving educational research platforms, with a potential project partnership and funding for Open edX. They also shared updates on Open edX adoption and community involvement, and strategies to improve the long-term sustainability and extensibility of the platform. The board members discussed challenges and strategies for maintaining open-source repositories, including identifying which repositories to maintain and which to deprecate, the need for maintainers, and the impact of breaking changes in non-maintained repositories. They emphasized the importance of transparency and fairness for maintainers in open-source projects.
- Action Items:
- Xavier to check if Otter has a setting to warn participants about recording/transcription prior to the meeting
- Axim to send a proposal for transitioning 2U developers to core contributors rather than direct commit access, as well as reviewing 2U roles, access and permissions.
- RĂ©gis to open a discussion on the forum about open course material, and share the link with the TOC mailing list.
- RĂ©gis to investigate the state of Open edX extensibility and propose improvements to existing mechanisms, leveraging the work of other contributors
- George to share the list of repositories 2U will maintain with Feanil and the maintenance working group once it is approved internally
Relevant links
Meeting notes
1.15. Translation Working Group
Chair: Eden Huthmacher
Past meeting notes 2024-03-20 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
- We are excited to announce the 2024 Open edX conference! The conference will be held at Stellenbosch University in Cape Town, South Africa and will take place between July 2nd and July 5th, 2024. Register here to secure your seat!
- 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
- Tuesday April 16th - Join the meetup here!
- Friday April 26th - Async update
- 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.