Code Review: Sharing the load

From Qt Wiki
Revision as of 16:11, 22 November 2019 by EdwardWelbourne (talk | contribs) (Link to the follow-up session's write-up.)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

This was a round-table session at the Qt Contributors Summit 2019 initiated by Eddy without an preparation, due to being too busy with reviewing other folks' changes. Minutes kindly recorded by Nils Jeisecke, later tidied by Eddy.

  • Situation: Many reviews in queue for long time (forever?), some contributors too busy reviewing to actually hack on code.
    • Android: They have a button: Find "Maintainers" (Plugin for Gerrit)
    • Thiago: Would solve the first 15 Minutes for Contributors, not enough
    • Improve the culture, appreciate the effort ("Thank you!")
    • Get more people on-board as reviewers (first step on a road that may eventually make them approvers)
    • Idea: Should not be +1 and +2, should be "Thumbs up" and "Tick!"
      • Some reviewers don't understand the implication of "+1" (two "+1" ≠ "+2")
  • What does a good patch looks like?
    • breaking patch up into multiple patches
    • Is the documentation really good enough (opinions vary)
  • Ask contributors whose changes have just been review to review others' changes (this does sometimes happen already)
  • Gerrit
    • Sanity bot is good – could do more, e.g. QTQAINFRA-1478.
    • Revive early warning bot!
      • Should changes only be approved after tests has run on CI?
      • Can we get a "small CI" run (just Linux, "does it build?")
      • Should the bot automatically run tests if tests have been changed?
      • Should the bot automatically give a warning if tests have not been added (excluding doc-only changes)?
      • Can we restore running of QDoc to reveal any new warnings caused by the change?
    • "Auto defer" bot is currently not active, would be useful to automatically defer patches where contributor did not respond to requests.
    • Automatically stage when change is approved? Faster turnaround time – but not always what the contributor wants (waiting for other changes first).
    • Mail (monthly?) reports to maintainers (or others? based on gerrit dashboard config?): "N Changes approved, but not staged? Link to staging page", List per module?
    • Let's try it and see how it works out
  • Gerrit Features unused right now
    • Attach labels
    • Bot could apply hashtags ("wants adoption", "stage-me")
    • Has a feature to make clazy automatically apply improvements to the change ("contributor has to click a button")
  • Public Community Feedback does not exist
    • Alex: Use Thiago's script to highlight new contributions (Grafana?)? "Welcome new contributor!" for blog post (Like KDE does)?

Related notes from the next session

This session was followed, in the same room, by one on Improving the contributor experience of the Qt project, with lots of overlapping topics, from which we gleaned the following further notes:

  • Give contributor feedback
    • Bot should say: "Welcome, Thanks for your first contribution"
    • Monthly blog post advertising external contributors?
    • Send out physical awards? T-Shirts, "Thank you" letter, …?
  • Make contributing easier
    • Put contributor documentation into Qt's documentation ("Gettings started")?
    • Link freenode IRC Web-Backend to simplify access to IRC for new contributors
    • Use Qt account profile to setup everything needed for contributing (ssh keys, CLA check, …)
    • Adapt github workflow (Checklist "Auto test done", "Documentation done", …)
  • Triage bugs
    • Add Jira label ("for juniors")?
  • Community
    • Missing Community manager (Consensus: Yes, it's needed)
    • Missing "qt-project" entity, kind of a foundation? Funding?
    • Redefine: What is the qt-project?
  • Activating new contributors
    • Communication of Qt (company) targets companies, not community (qt.org ⇒ qt.io ⇒ sales)
    • Microsoft pushes its stuff to universities, why not Qt (or qt-project?)
    • Qt project needs a proper homepage. With nice, contemporary Howtos, …