/
Arch Hours: 2022

Arch Hours: 2022

Meeting Expectations

Why?

  • Provide an opportunity for generative discussion and ideas.

  • Foster comradery through technical curiosity and geekdom.

Who?

  • Open to all edX-ers and Arbisoft-ers

What?

  • At times, these informal discussions result in follow-up action and beneficial change in our technology or in our organization. While this is not a decision-making body, these serendipitous discussions spark ideas that may result in ADRs/OEPs and tickets on team backlogs.

  • At times, it serves as a form of informal office hours to ask live technical questions of the archeological collective.

  • At times, we have pre-planned deep-dive topics that folks propose to gather wide-input or to answer questions.

  • At times, we have hosted special guests (internal and external to edX) on specialized topics.

When?

  • Not lunch hour in ET timezone: With Covid remote work, "Arch Lunch" has evolved into “Arch Hour” in order to accommodate various home/life situations during lunch time.

How? Live Co-Editing

To circumvent Confluence’s limitations with the maximum number of concurrent editors:

Why not just stick with keeping the notes in the Google doc?

  • Google docs are not as discoverable.

  • Google docs don’t notify observers of future edits.

  • Google doc comments don’t notify all observers.

How? Structure

Please enter your proposed topics for discussion.
When we use Lean Coffee Style (link1, link2), we vote on which topics the group wants to discuss and time-box the discussion to 10 or 15mns → 5mns (if re-voted) → 5mns (if re-voted).

Prefix your topic with your intention so we are clear on what outcome you are striving from the discussion. Examples:

  • [inform] You are simply seeking to inform the group of this item. You may field clarifying questions from the group on your inform, but not seeking further discussion at this time.

  • [ideation] You are seeking divergent and wide perspectives from this group. In this brainstorming mode, all ideas are accepted, without critical analysis.

    • It may be helpful to clarify whether you’d like to ideate on the problem space or the solution space.

  • [analysis] You are asking the group to help you poke holes in your idea/topic/plan/etc.

  • [quest] You are seeking information/responses to a question you have.

2022-12-21

2022-12-14

  • [Feanil/Ned] Announcements

  • [Feanil] General overview of how things are going at 2U?

  • [Andy] report on LTI tool actual vs. specified or expected behavior 

    • Unique identifiers

    • PII sharing

2022-12-07

2022-11-30

  • [Ben W] What does the http->https forwarding?

    • [Robert] Cloudflare probably for http->https. Also, an answer to a separate question, Google TagManager is often where random scripts are dropped on the page.

2022-11-23

Low attendance due to Thanksgiving-related PTO. There was some continuation of discussions about XBlocks, iframes, and CSS conflicts, but notes weren’t taken.

2022-11-16

2022-11-09

2022-11-02

2022-10-26

Skipped due to low attendance

2022-10-19

  • [Jeremy] High-level development environment objectives

    • No need to debug code updating problems

    • Fast to set up a new dev environment

    • Don’t need to carefully preserve manually set up testing data

    • Good support for debugging and observability

    • Consistent between services

    • Able to run reasonable subsets of the full Open edX ecosystem of services

    • Defaults to feature flags currently active in production

    • Comes with data needed to quickly test most features

  • [Adam] [quest] I'd like to discuss with this group and Simon to better understand the plan for moving to Open Search

  • [Jeremy] Can we get away from requiring thorough owning team review for maintenance, bug fix, and small feature enhancement PRs?  What would have to change to make that happen?

    • Plugins/libraries need to have been tested in the things they’re installed in

    • Make test suites more reflective of actual behavior in production deployment

    • Make the changes unused in edx-platform

    • Address issues raised in previous RCAs - trailing slash consistency, database migration linting

    • Shorten the time from merging to detecting problems in production

    • Canary deployments?

    • Shrink the size of edx-platform (small problem can bring down a large chunk of production)

    • Automatically deploy a test environment that exercises the change

2022-10-12

  • [inform] (Ben W) FWG/Opencraft/RacoonGang Theming conflict.  Working with groups to try and consolidate how we co-ordinate work around the platform between working groups and get them to talk to each other.

    • We ended up with parallel meetings: 2U-focused and Open edX community focused

    • Not much communication happened between these parallel groups

    • Trying to fit all front end stuff into one series of meetings ends up at poor signal to noise ratio

    • Need a clear forum for this coordination

    • (Ned) Concerned about defaulting to a meeting as the primary forum for this: conflicts, time zones, etc.

    • (Chris) Should we use the Open edX roadmap for this kind of coordination?

    • (Ben) Trying to reconcile architectural initiatives being driven by multiple organizations in the same project sounds terrifying

    • (John) This sounds like a flaw/scalability problem with our architecture and process that needs to be fixed

    • (Andy) We need to get better at sending more redundant communications the larger a project is

  • [quest] (Jeremy B) Developer Experience - reasonable focus for this meeting? Arch-BOM is pivoting(?) to focus on this

    • For a loose definition of DX, perhaps

    • Any examples or resources we should learn from?

      • (Ben) Standardized debugging/troubleshooting tools

    • (Chris) It feels like some aspects of DX start to cross back into architecture

    • (Chris) Would be good to get a status update on development environment efforts

    • (Ben) How can we make “thing not in platform” easier (for a new python API)

    • (Ben) How can we make “New MFE” easier (observability, config, etc)

    • (Hamzah) A “newsletter” of changes and features would be helpful.

  • [inform] (Ben W) FedX exists again.  What this means.  What our focuses will be.

2022-10-05

  • [inform] (Ned) We need hackathon organizers, please volunteer

  • [quest] (Jeremy) Hacktoberfest - do we want to accept contributions this year?

    • Easy way to get T-shirts for developers

    • But it’s not clear how much else we get out of this; usually a few vaguely useful contributions, a few mild wastes of time

    • [Ned] We have enough problems with our contribution pipeline as is, may not be a great idea to pile more into the backlog

    • [Jeremy] We do have a bunch of GitHub Issues for edx-platform pytest warning fixes that we could tag for participants

    • Let’s activate selectively for things where there are useful issues open and maintainers are willing

  • [quest] (Jeremy) How important/useful to people think type checking would be?

    • [Ned] First we’d need to fix our existing linting

    • We’d need a policy, one reasonable example could be “you may add type hints, but you don’t have to.  If you do, the linting must not break”

    • Communicate said policy

    • Hold off on any big push for test-generated type hints or other comprehensive annotations

  • [discuss] (Diana) What do we need to do to make sure there’s not much disruption from Slack migration? 

    • Migrate existing channels

    • Update integrations

    • Handle shared channels

    • There’s a lot written about this, few people have had time to read it all.  And it sounds like there are at least a few corner cases that the docs and process don’t cover yet.

    • Emoji transfers (Matt Hughes seems to be working on this)

  • [discuss] (Ned) Links to private wikis from public wiki. Allowed/disallowed?

    • Feanil: it’s fine as long as it’s clear that it’s a private link and that it was understood by the author that it’s private.

    • [Jeremy] Is it worth wrapping them in conditional content blocks to make it explicit and avoid distracting other readers?

    • [Feanil] How about a table at the bottom of the page for links to each org’s private related context?

  • [inform] (Ned) Kelly is trying to formalize “public workstreams”: https://edx-internal.slack.com/archives/CDA7GMJ4B/p1664910103145889 (private 2U link)

  • [discuss] Max’s impressions of FedBom PR flow

  • [inform/quest] (Jeremy) Arch-BOM -> Developer Experience

    • If you have any suggestions on improvements that should be prioritized, please let us know

2022-09-28

  • [Ned/inform] Open Source Process working group: https://2u-internal.atlassian.net/wiki/spaces/ENG/pages/19467639/Open+Source+Process+Working+Group (private)

  • [Ned] Forking Strategies doc in progress: https://2u-internal.atlassian.net/wiki/spaces/ENG/pages/155746369/Forking+Strategies (private)

  • [Jeff/quest] Do we have a Dates API, for extensions?

    • Idea is that we should have some mechanism in the platform to facilitate people scheduling time to work together on a course

    • Things like this: https://www.flow.club/ and https://focusme.com/  

    • [Dave] There’s support for retrieving key dates about the course, but not adding dates

  • [ideation] (Jeremy) Frontend security vulnerability handling

    • We get dependabot alerts about security vulnerabilities in dependencies.

    • Would be nice to just upgrade things (hopefully automatically)

    • Fed-BOM is working to get upgrade PRs like this assigned to owning teams.

    • [Alex] opines that teams may be missing a more formal on-call process, through which these upgrades could be actualized.

    • [Andy] A big part of the problem is that our frontend test suites are insufficient to catch even fairly major problems before deployment

      • This is not really a frontend unique problem, it hits all PRs from outside the team

  • [Feanil/question] What kind of testing maturity do we feel we need?

    • Better mocking and Test Data

    • More contract testing

    • Adding tests specifically for issues that broke Prod.

    • Record context on the bugs that escaped to production in a more public way so the community can better understand what broke and how.

  • [Ned/question] Hackathon?

    • [Jeremy] We need organizers, please get in touch if interested

2022-09-21

  • [Ned] What information would be helpful for improving PR review flow, either inside or outside of 2U?

    • [Ben] Tickets!  (Jira)  Hard to accurately prioritize among other work.

    • [John] Get PMs to review them on arrival?

    • [Jeremy] There are columns in the Squads tab of the ownership spreadsheet to specify how each team wants to be notified of review requests.

    • [Jeremy] https://2u-internal.atlassian.net/wiki/spaces/ENG/pages/76808270/Cross-Squad+PR+Reviews proposes guidelines for improving this, feel free to suggest enhancements

    • [Andy] Even pretty innocuous PRs have caused major problems recently, making people very reluctant to review and merge incoming PRs from outside the team

    • [Andy] Having a dedicated concierge for tracking incoming PR review requests to each team would be useful.

  •  [Jeremy] There’s an auto-formatter for tox.ini files; would people find value in trying it? https://pypi.org/project/tox-ini-fmt/