Governance Update & Next Steps AMP Contributor Summit - October 10, 2019 Tobie Langel (@tobie)
Governance Update & Next Steps AMP Contributor Summit - October 10, 2019 Tobie Langel (@tobie)
AMP’s Governance Model ● The Technical Steering Committee (TSC) ● The Advisory Committee (AC) ● Working Groups (WGs)
Technical Steering Committee (TSC) Sets AMP’s technical & product direction based on the project guidelines.
TSC Members ● Chris Papazian, Pinterest - @cpapazian* ● David Strauss, Pantheon - @davidstrauss* ● Dima Voytenko, Google - @dvoytenko* ● Malte Ubl, Google - @cramforce* ● Paul Armstrong, Twitter - @paularmstrong ● Rudy Galfi, Google - @rudygalfi* ● Saulo Santos, Microsoft - @ssantosms*
So… what has the TSC been up to? ● Set up the initial set of Working Groups. ● Clarified the contribution process (OWNERS/Reviewers/Collaborators). ● Formalized how cherry picks are handled. ● Asked for more formal regular updates from the Working Groups.
Working Groups (WGs) Segments of the community with knowledge/interest in specific areas of AMP.
Working groups ● ● ● ● ● ● ● Access control and subscriptions WG - user specific controlled access to AMP content. Ads WG - ads features and integrations in AMP Analytics WG - analytics features and integrations in AMP. Stories WG - implements and improves AMP’s story format. Performance WG - monitors and improves AMP’s load and runtime perf. Runtime WG - AMP’s core runtime (layout/rendering and data binding). UX & Accessibility WG - AMP’s visual components & interactions and AMP’s overall accessibility and UX ● AMP4Email WG - AMP4Email project. ● Validation & caching WG - AMP validator and features related to AMP caches. Viewers WG - ensures support for AMP viewers and for the amp-viewer project. ● ● ● ● ● Approvers WG - approves changes that have a significant impact on AMP’s behavior or significant new features. Infrastructure WG - AMP’s infrastructure, including building, testing and release. Code of Conduct WG - enforces AMP’s CoC. Outreach WG - helps developers who use AMP be productive & keeps the AMP community healthy.
Advisory Committee (AC) Provides perspective and advice to the TSC.
So… what has the AC been up to? ● Met with AMP Letter Signatories in London to better understand their concerns about the AMP Project. ● Worked with the UX & Accessibility WG to improve accessibility in AMP (work in progress). ● Offered feedback on new proposal to make processes around I2I and I2S more open. ● Wrote a position paper and joined the Internet Advisory Board (IAB)’s ESCAPE Workshop to better understand the different perspectives around SXG and Web Packaging. ● Surfaced industry concerns such as the California Consumer Privacy Act (CCPA) to the TSC. ● Ran a successful midterm election to further increase the diversity of the AC.
AC Members ● Ali Ghassemi - @aghassemi ● Maggie Wettergreen - @mjwettergreen* ● Charles Vazac - @cvazac ● Melanie Sumner - @melsumner ● David Merrell - @dymerrell ● Melissa DePuydt - @msteffan ● Elisa Budelli - @elibud* ● Pablo Delgado - @pdelgadorodriguez* ● Graham Loh - @grahamle ● Senthil Padmanabhan - @senthilp ● Guilherme Moser de Souza - @mobtec ● Sumantro Das - @sumodas* ● Jervay Singh - @jervay ● Ted Shuter - @TedShuter* ● Joe Alicata - @wirelessjoe* ● Terence Eden - @edent ● Kenji Baheux - @kenjibaheux* ● Tim Jones - @tones ● Levi Durfee - @levidurfee* ● Tobie Langel - @tobie* ● Léonie Watson - @LJWatson
Additionally, we’re exploring moving AMP to a foundation in the future, […]. We see the governance changes as a first step in that direction. Malte Ubl, September 18, 2018
What’s a foundation and what is it for? A foundation provides a legal entity for open source projects. It can: ● receive and spend money (e.g. infra costs, travel expenses), ● acquire and own assets (e.g., trademarks), ● grant and receive licenses (e.g., copyright, patents,), ● hire people (e.g., for a security audit, coaching, etc.), ● host events, ● etc.
Right now, Google handles all of this for AMP.
This creates concrete issues
Covering travel expenses of TSC/AC members requires fragile workarounds. Data protection requirements add hurdles to the community-driven organization of the AMP Contributor Summit. CLA assigns license to Google, which is a deterrent for many.
Moving to a foundation solves this.
But which foundation?
Goals & Requirements ● Encourage a wider variety of voices. (e.g. low overhead, no “pay to play”) ● Avoid slowing down day-to-day work on AMP. (e.g. no extra process requirements, no infra requirements, etc.) ● Learn from what’s worked and what hasn’t for other projects. (e.g. foundation at the service of project) ● Minimize changes to existing governance model. ● Be a great web and open source citizen. (e.g. continued funding of other projects through Open Collective)
● Result of the recent merger between the JS Foundation and the Node.js Foundation. ● Home of Node.js, webpack, jQuery, Appium, Mocha, WebdriverIO, Express, ESLint, Lodash, Grunt, Globalize, Moment, interledger.js, etc. ● Just started accepting new projects. ● Already meets most of AMP’s requirements. ● Many things are still in flux and the foundation is very open to input → AMP can help implement missing requirements. ● Icing on the cake: ability to spread AMP progressive values (e.g. funding dependencies, diversity funds for events, covering contributor expenses, etc.) to the broader JS ecosystem. 🍰
Apply to the OpenJS Foundation This kick-offs the “silent period,” a period during which the foundation’s Cross Project Council (CPC) meets privately to discuss the merits of the project and decide whether it is a good fit for the foundation. Obtain TSC & AC buy-in Obtain go-ahead from Google OSPO Required as joining the OpenJS Foundation involves transferring IP and other assets to the foundation and granting various licenses to it.
→ AMP is joining the OpenJS Foundation’s incubation program today.
Growth stage Application approved The CPC communicates its decision to the AMP project. Once AMP meets graduation criteria, it can join Growth or Impact stage. Incubation Impact stage AMP project start working on incubation checklist with the help of Google OSPO and the OpenJS Foundation. AMP can elect two voting members to the OpenJS Foundation’s CPC.
Robin Ginn Executive Director, OpenJS Foundation
Our projects are critical to the web and beyond
Our policies prioritize stability and openness
AMP Vision A strong, user-first open web forever.
Governance model gives a voice to our projects Cross Project Council • • • Comprised of project community reps and open to all Oversees programs and processes such as accepting new projects, moving projects through the stage process, administering benefits (travel or scholarship fund), handling infrastructure concerns, etc. Coordinates projects, including technical governance and moderation Board of Directors • Each Platinum member appoints one Director to the board. • Gold and Silver members vote among themselves to select their representatives. • The board also includes community representation, with up to 3 Community Director positions nominated by the CPC and its chartered committees. • Sets technical policy, mission and scope of initiatives, technical vision and direction
Impact stage Growth stage At-Large stage • Generally large mature projects • Actively mentored projects that intend to graduate to Impact stage • New projects, stable projects with minimal needs, and everything in between
AMP incubation at OpenJS Foundation Completing onboarding checklist ✔ Adopting the OpenJS Foundation Code of Conduct ✔ Identifying your CPC rep ✔ Working through other administrative and technical tasks Learn more in the breakout session this afternoon!
What to expect by joining OpenJS Foundation • Neutral home to build and support a sustainable community of diverse contributors. • A cross-industry community to share best practices and reduce redundant administrative work, particularly with non-technical governance. • Ongoing benefits for projects include assistance in marketing, infrastructure, and legal services.
OpenJS Foundation in action
What will change? Spoiler alert: not much for contributors.
What will change? ● The governance model will no longer be under the purview of Google. ● Further contributions will be licensed to the OpenJS Foundation. ● The Foundation will become the owner of assets such as the website and AMP trademarks. ● AMP will adopt the OpenJS Foundation’s Code of Conduct. ● Once the Foundation has a mechanism in place to receive directed funding, Google will stop funding activities directly and will instead direct those funds through the Foundation. ● The process of removing dependencies on Google will continue (e.g. around infra, tooling, reviews, etc.). ● Day to day operations will barely be affected.
Thanks ● The TSC and the AC for their questions, advice, and guidance. ● Joey Rozier for all of the work on the Google side. ● Google’s OSPO for their responsiveness and efficiency. ● Myles Borins for helping shape the vision of AMP at the OpenJS foundation. ● The OpenJS Foundation’s Cross Project Council (CPC) for their tough but fair questions, and for working on an extremely tight schedule so we could share this with the community today. ● Kris Borchers for championing AMP at the CPC and being a great source of advice as JSF’s Executive Director. ● The OpenJS Foundations staff, and Jory Burson in particular, for having been extremely supportive throughout. ● Alan Kent who dealt with all of the last minute changes to the event schedule. ● All of the people who helped and gave us advice along the way. ● …and of course, Robin Ginn for joining us on stage today on such short notice.
Breakout this afternoon! →