Core Contributor Update: Jul 6th - Jul 19th, 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
- Upcoming Django security release
- Redwood.1 Retrospective
- Next release:
- Redwood.2 ~ 2024-08-09
- Scope
- Sumac
- sumac.master ~ 2024-10-09
- sumac.1 ~ 2024-12-09
- Alignment with the 2024-2025 Community Release Plan and monthly follow-ups led by the Product WG.
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
- Open edX conference happened!
- is there anything that came up that is particularly relevant to this group?
- More conversations around Pilot: Use the DEPR process for breaking changes · Issue #595 · openedx/open-edx-proposals occured
- There is a lot of desire to communicate more breaking changes via DEPR.
- Many saw DEPR as one of the more mature and clear process in the open edx community.
- Celebrating
- paver cleanup and soon to be removal
- platform assets cleanup
- badges implementation
- bok-choy
- many other things
- Review of Existing MFEs with corresponding Legacy Code to fill in DEPR ticket section.
- Note: Feanil Patel, Robert Raposa are also discussing this in Maintenance WG.
Meeting notes
1.6. Tutor Usersâ Group
Chair: Kyle McCormick
- Moises: Dockerfile reference I wanted to use the
RUN --mount=type=ssh
instruction to install private packages. This command needs an additional flag to the build command that I can add via theDOCKER_BUILD_COMMAND
filter. The problem is that the--ssh=default=$SSH_AUTH_SOCK
flag gets escaped by shlex. As a workaround is possible to useos.environ.get("SSH_AUTH_SOCK")
but some people may not want to print those values to the stdout.- Marketplace and Plugin Installation
- Marketplace Catalog: Discussion with marketing about creating a marketplace catalog for Tutor plugins.
- One-Click Installation: Goal to make plugins available for operators with a one-click installation process, specifically through the Tutor index.
- Automation and Customization
- Post-Installation Actions: Many plugins require additional steps like rebuilding images, running init, or configuration.
- Automatic vs. Manual: There is a debate on whether Tutor should automatically run these actions. Some operators prefer manual control due to customizations.
- Flag for Automation: Idea to implement a flag that runs all necessary steps automatically for one-click installation.
- Graphical User Interface (GUI)
- Interest in GUI: There is interest in a GUI interface for Tutor. The existing webui plugin serves the CLI through a web browser.
- Marketplace UI: Initially, the marketplace will be a catalog with descriptions and installation instructions, manually maintained. Integration into Tutor would be a second phase.
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
- Open edX Conference Recap - BizDev workshop results SWOT- Analysis Open edX-2024.pdf
- New Marketing WG subgroup - Bizdev experts (organizers: Stefania & Vineet)
- Next Open edX conference - Paris, France (Telecom Paris)
- Next external conference, Educause, exhibition confirmed with RG, Schema, VTeam Labs, & Verificient
- OEB Global in Berlin (happens during Thanksgiving break) - Abstract will be there
- Next Open edX Meetup - August (Intela, RG, eduNEXT)
- OKR Strategy Review in GitHub
- Relevant link: Marketing Working Group âą openedx
Meeting notes
1.11. Maintainers
Chair: Feanil
- Maintenance Models:
- Reminder, please add ideas to edx-platform Potential Maintenance Models
- frontend-app-learning seeking new Maintainer:
- Header/Footer deprecation:
- We should align on the naming convention for the new slots before we make these DEPRs to reduce churn for operators. More discussion in the Frontend WG meeting later today. Also Proposal: Simplified frontend plugin API config I presume will be discussed.
- Node 20 Update/Checkin:
- No new update but we do have a new frontend-all maintainer.
- edx-platform already runs tests with Node 20
- Syncing important packages across all repos:
- Related to OEP-65
- Weâll start looking at this before that lands but is currently in a conversation phase.
- Related Links
- Easy to do once, but how do we make it consistent continuously?
- Still in brainstorm stage.
- Deprecating repositories:
- Feanil is getting ready to start filing DEPRs for repositories that it seems like the project doesnât need
- see âto deprecateâ column in Release repos and Maintenance Priorities
- eg, ecommerce
- many repos are not exactly clear-cut, many repositories are currently in an ambiguous place, eg frontend-app-support-tools, course-discovery
- keep an eye out for DEPR issues to discuss, but if you have early feedback or want to maintain anything that currently has a âto deprecateâ check box, speak up
Meeting notes
1.12. Product Working Group
Chair: Jenna Makowski
Latest news
- UX/UI Working Group
- Question about designing Studio components- Is there a process for designing settings pages in Studio for new XBlocks?
- Marco - Not that Iâm aware of, but this is an interesting project/ concept area.
- The LTI Working group is looking at an LTI Redesign Effort that covers a whole host of new potential patterns. - LTI Redesign Project
- A recent / conference product proposal - Visually Configure Course Components
- Question about finding the most up-to-date UX/UI versions of the product- What are peopleâs processes in finding out what the latest version of the platformâs features âlookâ like without having to log into a sandbox? eg. the latest ORA screenshots
- Marco - We may want to check with BTR group, I wonder if we could get some community access, maybe core committers to start into the âredwoodâ release (or whatever the latest release is) to be use for testing / review. Maintaining a list of what is active would be needed if we used this for testing.
- Question about a Redwood sandbox that is permanently accessible - need to consult the Core Product team about this
- Ask for a Redwood Release Sandbox or similar, but it might need a provider to âownâ the maintainership of a testing place
- LTI/Learning Tool WG Meeting
- Expecting this to be a quick meeting. Requesting further feedback from community after presentations last week (during the WG or in the notes section below). Leaving space for updated presentation from Pearson if they are ready to share with WG. Added async feedback from Axim. Its been a busy time for them - Iâm trying to see if I can get something on the calendar with Axim and EduNext in 2 weeksâ time.
- 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
- Incident with OtterBot Tool:
- There was an incident where the OtterBot tool recorded conversations beyond the meeting due to a participant staying in the meeting for a long time.
- The incident led to discussions about code of conduct and legal exposure concerns.
- Decision: Autobot and similar AI tools will not be used in Open edX meetings.
- 2025 Open edX Conference
- Ed provided updates on productive conversations with Carlos and Remy from the school applying to host it in 2025.
- Redwood Release Update
- The Redwood release was discussed, highlighting a delay due to a security bug that needed to be resolved. The release, initially scheduled for June 10th, was postponed to the following Monday to ensure the security fix was applied adequately. There was an emphasis on the significance of addressing the security concerns thoroughly before proceeding with the release.
- Architectural Discussion:
- Ed, Adolfo Brandes, and Dave Ormsbee presented on the architectural direction of the Open edX platform.
- The primary objective was to ensure all participants agreed on the high-level architectural goals for the platform. Goals include responding to acute needs and making long-term investments in the platform, and developing a plugin architecture to address the need for greater integration flexibility and customization by third parties.
- This new architecture would enable developers and users to plug in external components easily and customize the platform according to specific needs without affecting the core system stability.
- Discussion on the plugin system for micro front ends, developed by Aperture team at 2U with support from Adolfo and other community members.
- Emphasis on making the plugin system simple, flexible, and stable for both developers and operators.
- Future plans include adding more plugin slots, unifying backend and frontend plugin communication, making plugins discoverable, and potentially an admin UI for plugin management.
- The participants were encouraged to provide feedback on the proposed changes and think about future considerations that might impact the platformâs development. This was part of an ongoing effort to iterate on the architecture based on actual user needs and technological advancements.
- Various viewpoints were expressed regarding the implementation challenges associated with the new architecture. Some participants were concerned about the potential complexity of integrating a robust plugin system without compromising the platformâs performance and security.
- The long-term implications of the architectural changes were also discussed. Participants were interested in understanding how the proposed changes would affect the platformâs scalability, maintainability, and ability to adapt to future technological changes.
- The architectural discussion aimed to foster a collaborative approach to enhancing the Open edX platform, ensuring that it remains a robust, flexible, and user-friendly system for educational institutions, developers, and learners worldwide.
- Standards and Integration:
- Discussion on leveraging accepted standards like LTI and XAPI while maintaining internal standards like OLX.
- Consideration of integrating with key players in the ecosystem like H5P and Salesforce for better product quality and interoperability.
- Challenges with existing standards and the importance of identifying strategic partners for integration.
- Deprecation of Unused Features:
- Focus on reducing maintenance burden by deprecating rarely used features and repositories.
- Example: The deprecation of the e-commerce platform and transition to WooCommerce plugin.
Relevant links
Meeting notes
1.15. Translation Working Group
Chair: Eden Huthmacher
- Upon todayâs Translations WG meeting, we have decided on the following solutions to optimize the KPIs for the openedx-translations project:
- Archive the edx-platform project, and other projects in the TX interface, which are no longer relevant/supported - it appears that people were still accessing old projects, particularly the edx-platform project to conduct translations and reviews of translations
- Communicate to everyone in Transifex that the openedx-translations project represents our new Master project. All translations for past, current, and future releases should be completed in the openedx-translations project, not the old master project: edx-platform (which will be archived in the coming week)
- Release specific strings will be in the dedicated release projects. Our current release-specific project that people should complete their translations & reviews in, is the openedx-translations-redwood project. Please prioritize your efforts in the release specific project, if you are planning on running the Redwood release.
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
- Tuesday August 6th - Join the meetup here!
- Friday August 2nd - 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.