Arch Tea Time: 2020-05-28 (Blended Dev, ++)

Topics

  • GitHub Actions vs Jenkins: thoughts?

    • Let’s assess the technology

  • Feedback request: extensions to in-process API conventions:

  • ADR bot: are people using it? Any feedback?

    • Currently posted in the open edX slack workspace’s #adr-notifications channel

    • Usefulness

      • Perhaps format can be updated - @Jeremy Bowman (Deactivated) will follow-up with @Ned Batchelder (Deactivated)

      • Integrate with edX slack workspace

        • last week: 6 notifications (4 on Tues)

        • #architecture? #adr-notifications?

    • Upcoming extensions doc

      • Can be put in the decisions folder

  • Type annotations - do people want to try this out, and if so where would we prioritize it?

    • May be useful in APIs

    • Currently using pycontracts in certain gnarly modulestore APIs

  • Supported Python APIs in the monolith for Django App Plugins

  • Blended engineering model

    • Dimensions: people interfaces and code interfaces

    • Case A: (code interface: clear boundaries exist)

      • Case A1: External team(s) review each other’s code; Internal team uses a runbook and toggle

      • Case A2: Internal engineers do a one-time cursory review of the code when it is complete

    • Case B: (code interface: does not exist at all or refactoring of existing code)

      • Case B1: Internal engineers work side-by-side with external engineers

      • Case B2: Internal engineers context-switch and do a detailed review of the code by external engineers

      • Case B3: External engineers from different orgs review each other’s code

    • Case C: (people interface: external dev has merge rights)

    • Case D: (people interface: external dev has edX data rights and carries pager)

    • Case E: (people interface: owning team is different from the Internal Dev team)