Contributors Meetup Async Update - Aug 3rd - Aug 16th, 2024

Core Contributor Update: Aug 3rd - Aug 16th, 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


  • 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.
  • 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.
  • 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.

:memo: Meeting notes

1.3. Data Working Group

Chair: @e0d & @blarghmatey


:arrow_down: Past meeting notes 2024-07-24 Meeting notes


:memo: Meeting notes

1.4. DEPR Working Group

Chair: @feanil


:paperclip: Latest news

  • Legacy Text Editors - What would it take to move off of them?
  • DEPR Ticket
  • Two Categories of Issues
    • Perf Issues, the new editor takes a long time to load large amounts of text.
    • UX Issues
    • How do we have the UX conversation about the editor?
      • 2U had a practice to add a “Feedback” button into interfaces to easily give feedback changes on UX changes.
        • The feedback buttons went out with openedx but where does that feedback go?
        • In Redwood.2 it will be removed instead of going to 2U
      • It’s unclear what the plan was with the studio MFE and the editor, what are our options for solutions?
      • This should go in as a new enhancement request to the Product WG so that we can plan and discuss this as a community.
    • FYI, Course Authoring MFE will have a full replacement for studio
      • The course outline is replaced in Redwood
      • In Sumac the Unit editor will also be replaced with an MFE Page
        • This new page will not work with the legacy editor so it implicitly drops the old editor support in the new UI.
        • In Sumac you can still drop back to the old UI/editor but in Teak, this might not work.
    • What’s the plan for the problem editor? The new MFE has a lot more issues than the old problem editor MFE.
      • Similar, to the text editor, the MFE is on by default in Redwood but the old one will still be available.
  • Review of Existing MFEs with corresponding Legacy Code to fill in DEPR ticket section.

:memo: Meeting notes

1.6. Tutor Users’ Group

Chair: Kyle McCormick



:memo: Meeting notes


1.7. Educators Working Group

Chair: @john_curricume


:arrow_down: Past meeting notes 2024-05-20 Educator WG


:memo: Meeting notes

1.8. Frontend Working Group

Chair: @arbrandes


:paperclip: Latest news

1. Strategies Around Coverage in Frontends (Presented by Brian Smith)

  • Context:
    • Discussion started in the Paragon working group about adding types to Paragon.
    • Moving away from prop types to using Typescript for type coverage.
    • Integrating type coverage into CI without relying on external services.
    • Aiming for a holistic strategy covering code coverage, type coverage, bundle size monitoring, etc.
  • Issues with Current Approach:
    • Dependence on external services like Codecov can cause CI workflow interruptions.
    • Maintenance burden due to external service changes.
  • Proposal:
    • Run coverage reporting within GitHub actions to avoid reliance on external services.
    • Ensure the system is robust and does not add complexity to developers’ workflows.
  • Discussion Points:
    • Need to identify tools that provide similar benefits to current services.
    • Importance of understanding the details provided by services like Codecov (e.g., identifying uncovered lines).
  • Actions:
    • Investigate alternatives that integrate seamlessly with GitHub actions.
    • Possibly open an issue to continue the discussion and gather more input.

2. Deprecating the Current Default Theme of Open edX (Presented by Adolfo Brandes)

  • Context:
    • Product working group proposed deprecating the current default theme.
    • Aim to unify the user experience across the platform by adopting a consistent default theme.
  • Current Situation:
    • Various themes exist: default theme in edx-platform, Paragon’s defaults, and Tutor Indigo.
    • Tutor Indigo is often the de facto default due to its use in Tutor installations.
  • Proposal:
    • Integrate Tutor Indigo’s defaults into Open edX as the official default theme.
    • Move the integration upstream, ensuring it is maintained and tested by the community.
  • Discussion Points:
    • Importance of having a clear, cohesive default theme.
    • Ensuring the theme is accessible and does not introduce opinionated styles that conflict with customization.
    • Potentially keep Paragon’s base styles minimal and accessible while offering Indigo as a more feature-rich default.
  • Actions:
    • Adopt Tutor Indigo as the default theme, ensuring it is part of the Open edX organization.
    • Maintain clear documentation and examples to help users customize their themes.

3. Frontend Base Initiative (Presented by David Joy)

  • Context:
    • Introduction of frontend-base, a unified library to replace multiple core frontend libraries.
    • Supports OEP-65 for module federation, enabling runtime composition of MFEs.
  • Current Architecture:
    • MFEs currently rely on multiple separate libraries (frontend-platform, frontend-build, frontend-component, etc.).
    • Complexity in building and deploying MFEs, with many environment-specific configurations.
  • Benefits:
    • Simplifies MFE structure by consolidating dependencies.
    • Improves maintainability and iteration speed by centralizing initialization and configuration.
    • Supports both current deployment mechanisms and future module federation architecture.
  • Discussion Points:
    • Transition path from current MFEs to the new architecture.
    • Ensuring compatibility with existing deployment workflows.
    • Gradually introducing changes to avoid disruption.
  • Actions:
    • Continue developing frontend-base and testing with existing MFEs.
    • Create detailed migration guides and tools to assist developers in transitioning.
    • Engage with the community for feedback and refinement.

Next Steps:

  • Further investigation and discussion on replacing external CI services with self-hosted solutions.
  • Finalizing the decision to adopt Tutor Indigo as the default theme and planning the integration.
  • Continuing development on frontend-base and planning the transition path for existing MFEs.

:memo: Meeting notes

1.9. Large Instances Working Group

Chair: @braden & @Felipe


:paperclip: Latest news

eduNext

  • Preparing the open source version of K6 testing suite – hopefully done by the next meeting
  • Last meeting: Celery and Sentry plugins for Tutor

OpenCraft

  • OpenCraft is now using almost all parts of Harmony in production. The deployment of the shared ElasticSearch cluster has been a huge win, saving a lot of RAM because each instance was using 3GB RAM for elasticsearch which is now saved by the efficiency of the shared cluster.

Harmony project updates: Review list of PRs and issues, and assign anything un-assigned.

Open discussion/questions, if any.

  • (1) Gábor Boros is proposing that we have Terraform scripts in Harmony, not just as an example but actually maintained, to provision the cluster itself at a cloud provider(s). This would be for the step that comes before installing Harmony - i.e. first one would use these proposed Terraform scripts to provision a K8S cluster from a cloud provider, then they’d use the Harmony Helm chart to install the shared resources for multi-tenancy onto the cluster, then they’d use Tutor to deploy individual instances onto the cluster.
    • OpenCraft has already developed scripts like this and would be happy to clean them up and contribute them into the project
    • Jhony Avella mentioned that eduNEXT has similar Terraform scripts and requirements as well.
    • Jhony Avella proposed we create an issue for this, and work together to define a plan for it.
  • (2) Gábor Boros asked to clarify the name of our working group. Braden MacDonald said “Large Instances Working Group” seems to be the name.
  • (3) Jhony Avella asked about creating a list of Tutor plugins that are recommended for large instances, e.g. celery, Sentry, New Relic, CloudFront. The group said that made sense, so Jhony Avella will create an issue for it.
  • (4) Jhony Avella proposed splitting the Harmony chart into sub-charts according to their functionality, e.g. one sub-chart for nginx+cert-monitor, one sub-chart for monitoring tools, etc.

:memo: Meeting notes

1.10. Marketing Working Group

Chair: Eden Huthmacher


:arrow_down: Past meeting notes 2024-07-17 MWG Meeting Notes


:memo: Meeting notes

1.11. Maintainers

Chair: Feanil



:memo: Meeting notes

1.12. Product Working Group

Chair: Jenna Makowski


:paperclip: Latest news

  • UX/UI Working Group

    • Handing Over the UX/UI Co-Lead Role
      • Ali will be stepping down as the co-lead of this group due to capacity constraints. Is anyone interested in taking over the role?
        • Prepare the agenda for our bi-weekly meetings, and share it on the Slack channel the day before.
        • Ping presenters to confirm they’ll be attending.
        • Attend meetings, and co-lead them.
        • Add meeting notes to the agenda after the meeting.
        • Ensure the meeting recording is linked to the agenda.
  • Save the date:

    • Next meeting (22 Aug) we’ll have a Figma Training Session
    • How to install the Paragon library and update it to match the Open edX brand
    • Session will be run by Gabe Weinberg
  • We discussed the creation of a Figma file and library for the Open edX version of Paragon

  • Gabriel Weinberg has kindly offered to lead a training session during our next UX/UI meeting (August 22), where he will show us how to install the Paragon library and update it to align with the Open edX brand

  • We will start by creating a 1:1 version of the living style guide in Figma and improve components from there

  • We might need to follow the same path as other Working Groups (e.g. Paragon, Frontend, and Documentation Working Groups) and move the work into Github issues. That way, we could combine the processes of the design of the components in Figma, and the actual implementation of the components

  • How do we decide as a team on a style direction?

    • Perhaps take a test bench from the existing Paragon Figma files, extend it, and test it on some of the production pages
    • Perhaps design a component-heavy screen of the LMS
    • Perhaps create a few options for the designs and present to the UX/UI Group for review
  • This is a good opportunity to align the mobile and desktop components (@Sam Daitzman will do another presentation of the mobile screens in one of our upcoming meetings)

  • Joining the Paragon Working Group

    • Once the design of a component has been approved by the UX/UI Group, the Paragon Working Group is a good place to discuss any concerns around implementation, accessibility etc of a component
    • Message an organizer of the Paragon group to get your component added to the beginning or the end of the Paragon meeting agenda
    • Or post component sketches, ideas etc on the #wg-paragon Slack channel for feedback
  • This will be a lot of work. How do we get the Community involved?

    • Get the word out and ask the Community to start working on the new Open edX Figma file (once it’s created)
  • LTI/Learning Tool WG Meeting

    • We kindly ask participants and anyone interested to watch the following two videos, 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


:paperclip: Latest news

  1. Meeting Logistics:
    • Ed Zarecor mentioned the meeting transcription and recording.
  2. Casual Catch-Up, Attendee Arrivals and Travel Plans
    • The meeting began with attendees greeting each other and sharing travel plans. One participant mentioned they were flying on the 29th and the flight duration was around 12 hours, which was longer than expected.
    • There was a casual exchange about current locations and activities. One of the attendees was in a basement at the Holiday Inn in New York, Ireland, watching the cricket T20 World Cup. This led to a brief discussion on cricket, where attendees shared their support for different teams in the ongoing World Cup.
  3. Team Availability and Organizational Structure
    • The meeting continued with updates on team availability and some organizational context. It was mentioned that several team members were unavailable due to conflicts, vacation, or other commitments.
  4. 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.
  5. 2025 Open edX Conference
    • Ed provided updates on productive conversations with Carlos and Remy from the school applying to host it in 2025.
  6. 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.
  7. 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.
  8. 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.
  9. 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


:paperclip: Latest news

  • Colin Fredericks - edX documentation have been a huge help / asset historically, and ensuring others benefit from them as well would be great
  • John Swope - have struggled with docs, want to make better. This group can unify docs and have alignment w/ core product. Group can be in alignment w/ BTR, docs follow releases. Rubrics & standards; help troubleshooting
  • Sarina Canelake - want to enable the community to enable and maintain great documentation easily. ease of access to docs (authors / readers) is important.
  • Michelle Philbrick - docs aren’t great to find, I want to use the platform but don’t know where to start
  • Learner Docs - the challenges here often connect with mapping current platform version to the right version of documentation. a learner on edx.org would see something different than a learner on an instance running an older release (for example)
  • Video Content - high cost to maintain, high value / impact but need to be strategic in its use.
  • Documentation Forks - had previously been considered by community members (for instance specific docs) but this didn’t seem like an obvious / easy thing to do
    • Release based documentation switcher? Step in the right direction
    • Make sure Google is indexing the right version
  • Redwood documentation - Gratitude for the redwood docs, a step up in documentation clarity and a good sign that we are moving in the right direction
  • BTR release testing: in the future, synergy: BTR test cases have documentation, and the docs can be updated with latest screenshots, changed steps, etc

: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

  • Friday August 30th - Async update
  • Tuesday September 3rd - Join the meetup here!
  • 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 still an issue with the Listaflow check in process this past sprint. So no Core Contributor Check in report will be posted for the Aug 3rd - 16th, 2024.