Contributors Meetup Async Update - Jul 20th - Aug 2nd, 2024

Core Contributor Update: Jul 20th - Aug 2nd, 2024

Use the jump links below to view the section that interests you:

  1. Working Groups Updates
  2. Events
  3. Projects
  4. Next async update and meetup

1. Working Groups Updates

Working Groups Calendar

1.1. BTR Working Group

Chair: @jalondonot

:paperclip: Latest news


:memo: Meeting notes

1.2. Contributor Coordination Working Group

Chair: Jorge Londoño



:memo: Meeting notes

1.3. Data Working Group

Chair: @e0d & @blarghmatey


  • Discussed key conference takeaways:
    • People are excited about Aspects!
      • Some attendees wanted to know more about the out-of-the-box functionality offered with Aspects, so Chelsea will be recording a walkthrough of the course dashboard, individual learner dashboard, and the at-risk learner dashboard and will be sharing it with the community soon.
      • Some South African universities run their instances for students on campus and online, and are interested in tracking progress of a manually described set of users.
        Ideas to support this would be to allow Superset users to select multiple users when viewing charts, and add a “Save custom filter” feature to Superset to preserve these selections. This approach could also be used to examine data across “programs” of specific courses.
    • Jill had noted the timing of the Aspects release + conference and post-conference vacations made it difficult to troubleshoot issues for those trying to get Aspects set up on their instance - something we may all want to plan for for next year’s conference and Teak release.
    • Keep an eye out for conference recordings related to data - particularly Jill and Felipe’s Aspects talk! We can send a link in the Data WG Slack channel once the recording is available.
    • Vladimir had a great question about Aspects and permissions:
    • He was particularly interested in allowing instructors to see all Aspects dashboards and to have access to SQL Lab - this might be something we want to allow users more flexibility to configure in the future.
    • He had also mentioned being curious about what data he could make available to those with the Learner role.
    • We talked briefly about what’s next for Aspects in Sumac and Teak, this will be more clearly defined ahead of our next Data WG meeting (we can share all the details then), but for now:
    • For Sumac, we’ll be focused on:
      • Making a few minor improvements to the course-level dashboards developed for Redwood
      • Making it possible for course authors and course delivery teams (and operators) to compare key metrics across courses
      • Making informed improvements to the Operator Dashboard (some of this work may spill into Teak)

:memo: Meeting notes

1.4. DEPR Working Group

Chair: @feanil


:paperclip: Latest news


:memo: 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 the DOCKER_BUILD_COMMAND filter. The problem is that the --ssh=default=$SSH_AUTH_SOCK flag gets escaped by shlex. As a workaround is possible to use os.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.

:memo: Meeting notes


1.7. Educators Working Group

Chair: @john_curricume


:arrow_down: 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.

:memo: Meeting notes

1.8. Frontend Working Group

Chair: @arbrandes


:paperclip: Latest news

  1. Current Plugin Configuration:
  • Brian Smith presented the current state of the plugin configuration using config.js and highlighted its complexity.
  • Discussion on whether the existing setup with operations, widget IDs, priority, and types is necessary or if it can be simplified.
  1. Proposal for Simplification:
  • Kyle McCormick proposed a more straightforward approach, eliminating the need for extensive operations in config.js.
  • The new proposal suggests using a single component function to handle slots and defaults, potentially simplifying the API for developers.
  1. Feedback and Suggestions:
  • David Joy and others provided feedback, emphasizing the importance of making the configuration easy for both developers and operators.
  • Discussion on the implications of simplifying the configuration, especially concerning existing plugins and future flexibility.
  1. Functional vs. Class-Based Approach:
  • The group debated between maintaining a functional approach versus sticking with the existing setup.
  • Concerns were raised about handling different plugin types and ensuring ease of use for non-developers.
  1. Practical Considerations:
  • Felipe Montoya and others stressed the need for a practical, developer-friendly approach while considering future automation and admin interfaces.
  • The importance of proper documentation and intuitive naming for plugin slots was highlighted.
  1. Future Direction:
  • Consensus on the need for a simplified configuration to reduce complexity and make it more accessible.
  • A potential move towards making plugins more self-contained, reducing the dependency on config.js.

The meeting concluded with a plan to move forward with simplifying the plugin configuration while considering both immediate improvements and long-term goals for a more modular and user-friendly system.


:memo: Meeting notes

1.9. Large Instances Working Group

Chair: @braden & @Felipe


:paperclip: 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.

:memo: Meeting notes

1.10. Marketing Working Group

Chair: Eden Huthmacher


:paperclip: Latest news


:memo: Meeting notes

1.11. Maintainers

Chair: Feanil


  • Commerce Related Depr/Maintainership Hand-off
    • More info here: Ecommerce-related Repository Maintainership Transfer
    • Should we wait 6-months to archive the repo?
    • No, the repos will get redirected even if they’re archived so it shouldn’t break any existing workflows and can be informative for new users.
    • Plan that is likely to happen.
    • We don’t find a maintainer.
    • The repos get depred with a note that code in repos that remain will be removed separately.
    • The code that remains will have a separate DEPR ticket and will get a 6-month warning before removal.
  • frontend-app-learning
  • Review maintenance board
    • Need to plan the Ubuntu Upgrade - Probably teak
    • Django upgrade is coming up soon after that. - Probably for the U release
    • React Upgrade - Probably for teak
  • Python 3.8 - edx-platform
    • We’re dropping Python 3.8 across everything but it was before we had the new process. So testing is mostly being dropped.
  • Python codejail
    • Is there a deadline on when to switch from py38.txt to py311.txt
    • No those files are small so we’ll keep them for a while but can be deleted if we think they are no longer needed.

:memo: Meeting notes

1.12. Product Working Group

Chair: Jenna Makowski


:paperclip: Latest news

  • UX/UI Working Group
    • Mykhailo Marshalok from Raccoon Gang ran us through his proposal for extending the existing copy/paste functionality. As a group, we came to a few conclusions:
    • We don’t need both the “quick copy”, and the “copy to clipboard” functionality; these features can be merged.
    • Although there are overlaps between the Content Libraries functionality and the clipboard functionality, they serve different use cases, and are both necessary.
    • No one in the meeting found it problematic that the clipboard could hold more than one item.
    • Mykhailo will update the proposal based on our discussion, and share it with the Community again.
    • Because of a limitation with our Google Meet setup, only Axim members are able to record meetings. Someone from Axim can join at the top of the meeting to get the recording started.
    • The group finds it helpful that the meeting agenda is shared on Slack ahead of the meeting.
  • LTI/Learning Tool WG Meeting
    • LTI WG Meeting Notes: Feedback requested (please view recordings from past 2 WG meetings)
    • 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.
    • Feedback from Axim:
      We will only be able to move forward on this after the OpenedX conference in mid-July.
      • Comments on prototype:
        1. Would prefer for the Learning tools Center not to live under Libraries in Studio Home but under it’s own new tab.
        2. I can see expanding the tagging tools to LTI tools, but that’s a future state thing. Leaving some space on the content cards for tag pills would be helpful, and we align on the same designs being used in Libraries. This doesn’t need to be an immediate thing
        3. Will want to make sure the sort and filter options align with the sort/filter experience on the new studio home
        4. Would be curious for some input for users, is it helpful to have metadata attached to the cards that indicates which courses the tool is being used in? Again we have prior art to draw from in how the libraries content is being designed
        5. What happens if settings are changed locally in a course? Do those settings change at the global level for that tool? Should there by messaging around that?

:memo: Meeting notes

1.13. Security Working Group

Chair: Feanil Patel


:arrow_down: Past meeting notes 2023-07-26 Security WG Meeting


:memo: Meeting notes

1.14. TOC

Chair: Ed Zarecor


  1. 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.
  2. 2025 Open edX Conference
    • Ed provided updates on productive conversations with Carlos and Remy from the school applying to host it in 2025.
  3. 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.
  4. 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.
      1. 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.
      2. Discussion on the plugin system for micro front ends, developed by Aperture team at 2U with support from Adolfo and other community members.
      3. Emphasis on making the plugin system simple, flexible, and stable for both developers and operators.
      4. 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.
  5. 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.
  6. 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.

:pushpin: Relevant links


:memo: Meeting notes

1.15. Translation Working Group

Chair: Eden Huthmacher


  • Github Resources:
  • Platform 30 Second How To’s: Could these be in scope for this group? To help new platform adopters / users? To highlight recent changes, etc? Michelle Philbrick volunteered to help test out ‘finding documentation / resources’ to help understand what new platform users might have a hard time learning.
  • Platform Structure / Naming Consistency: Discussed use of a glossary -Glossary — Latest documentation
  • Meeting Cadence / Structure: Meeting every two weeks, use Slack documentation for ongoing conversation. We can try the same time in 2 weeks? We set up recurring weekly wednesday 10am ET meetings to start on 2nd and 4th wednesdays of the month, will get feedback on how to shift 1 or both of these recurring meetings in Slack

:memo: Meeting notes


2. Events


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 16th - Async update
  • Details and draft agenda on Confluence

:speech_balloon: Anything to add?

If there’s anything else you’d like to mention, please let us know in the comments below.

2 Likes

There was an issue with the Listaflow check in process this past sprint. So no Core Contributor Check in report will be posted for the Jul 20th - Aug 2nd, 2024. The next report will be posted next week.

Since I have just added a summary to our meeting notes, which had been lacking it for the last two updates, I’m posting it here too:

Contributors Coordination - July 9th meeting

Feedback Collection

The meeting began with a discussion about the need for improved methods to gather feedback from the Open edX community. Jorge Londoño initiated the conversation, noting that this was a follow-up from a previous agenda item about enhancing feedback mechanisms. Xavier Antoviaque highlighted that while the core contributors’ survey provides some internal feedback, there is a need for broader outreach to better engage the entire user base, including instructors, students, and operators. He proposed integrating a feedback system into the Open edX platform, potentially customizing it based on the user’s role to gather relevant feedback efficiently.

Cassie Zamparini suggested she might bring this topic to the product working group, considering her upcoming involvement due to her new role in the UX and UI working group. This led to a consensus that exploring how the product working group handles data collection could provide insights or strategies that could be adapted for broader community engagement.

Release Management and Retrospective Planning

Jorge Londoño discussed the upcoming retrospective for the Redwood release. He detailed his plan to conduct the retrospective in two stages: an asynchronous phase where he would gather initial feedback through a space in the BTR wiki on Confluence and a synchronous phase during a BTR meetup to review the results collectively. The objective was to identify and prioritize actionable improvements for future releases.

Review of Core Contributors’ Engagement

The discussion briefly touched on core contributors’ engagement, focusing on the maintenance of community repositories. Xavier and Jorge discussed the effectiveness of previous calls for contributor involvement, suggesting that clearer communication and perhaps a second call to action might increase engagement. They mentioned the necessity of checking current repository priorities and potential maintainers’ readiness to take on responsibilities.


Contributors Coordination - August 6th meeting

Onboarding and Communication

Cassie has worked on a report about the answers to core contributor experience survey. Specifically, she pointed at requested improvements with the onboarding of new contributors, such as integrating a handbook with an onboarding course to make information more accessible and straightforward. Furthermore, Cassie relayed answers about the reports on community activities, which seemed valuable but were perceived as tedious. She proposed transforming these reports into a streamlined newsletter format that would be easier to consume and more engaging for contributors.

Establishing next steps & decisions based on the survey results

Adolfo and other contributors discussed the need for setting clear action items following Cassie’s presentation of data and proposals. The idea was to organize and prioritize the overwhelming amount of information into actionable plans that could be tackled by the community. Adolfo suggested organizing a summit where community members could present proposals based on the current findings, enabling a structured approach to decision-making.

Improving the availability of meeting recordings & transcripts through automation

The discussion highlighted the need for better automating recording and sharing meeting content to enhance asynchronous participation. Ed, Xavier and Jorge discussed the technical possibilities and challenges, such as enabling automatic recording in Zoom meetings and ensuring all community members, regardless of their role, have access to start meetings and recordings.

Xavier and Jorge committed to exploring Zoom settings to automate recording processes and will report back on the feasibility. This action is aimed at reducing dependencies on specific individuals for meeting management, thereby smoothing the process for documenting and sharing meeting outputs across community platforms.

1 Like