Hi all,

I personally found 3.26 to be a difficult release and thought that it might
be useful to share some of my experiences, along with some thoughts on how
to improve things for next time around. The issues I encountered:

   1. We had two big features that landed very close to UI freeze, both of
   which required design iteration. This put a lot of stress on me personally
   and meant that other design reviews that I had planned never happened
   (sorry Builder).
      - It's worth noting that if it wasn't for these features, the release
      notes would have been very sparse indeed - from that perspective
I'm happy
      that they did land.
      2. A design change that we had landed early in the cycle, with the
   intention of polishing it later, failed to resolve itself. As the issue
   rolled on it was often unclear what the plan was and what the deadline was
   for rolling back the change that had been made earlier in the cycle.
   3. The release notes were seriously delayed due to 1 and there was
   uncertainty about screenshots because of 2. There were also various issues
   building the release, which made the process of taking screenshots painful
   and time consuming.


I'm sure that some of these issues are down to individuals. However, it
does seem interesting to think about their wider causes, with a view to
improving the release process. In my mind there are a number of these wider
issues, including:

   - Landing complex changes close to UI freeze:
      - This interrupts other planned work, as people have to scramble to
      refine the new feature.
      - If you care about UX quality, it can be stressful!
      - It makes a bit of a mockery of the UI freeze, since features are
      dropped with the expectation that the freeze can be freely
broken in order
      to refine them. This in turn creates uncertainty about whether we can
      expect freeze breaks to be accepted.
      - Unrealistic expectations for what we can provide with each release,
   in terms of quality and feature set.
   - Lack of awareness of, or at least uncertainty around, what our UX
   release blockers are.
   - Uncertainty as to how late UI changes can be made.
   - Lack of general involvement in the QA phase of our releases - while
   some of us are sweating over what we're going to put into the hands of
   users, a lot of people are working on other things.
   - Outside of the maintainers, there isn't much awareness of the release
   schedule and the various deadlines that comprise it. This is particularly
   the case for non-developers.
   - Lack of general awareness of the current state of master.


Below are some ideas for things we could possibly do to improve the
situation. I'm sure that some of these aren't good and that you all will
have better ones!

   - Extend the UI freeze (or create a freeze period for major UI changes)
   and require that breaks get design approval.
   - Either let go of the idea that each release will have an interesting
   feature set or figure out a way to plan releases so that they're
   interesting *and* high quality.
   - Make it clear at which point UI freeze breaks will no longer be
   accepted.
   - Give marketing a say in whether UI freeze breaks are accepted. (And
   find someone other than me to take responsibility for this!)
   - Include a UI review exercise as part of the release schedule, around
   the UI freeze. Tie this in with identifying release blockers.
   - Do more "product management" - track more issues for each release,
   publicise them more.
   - Ensure that there are bootable VM images that can be used to review
   the state of master.
   - Get people using nightly apps. Could Software have a way to bulk
   install nightly Flatpaks? Could we have some kind of QA programme that
   encourages people to use nightlies and report issues, particularly in the
   run up to a release?
   - Publicise the release schedule in a way that reaches non-developer
   audiences: have a public calendar that anyone can subscribe to (and perhaps
   allow other teams to add their own deadlines), make announcements on social
   media, etc...
   - Make sure that JHBuild isn't broken, particularly around release time.

Thoughts? Opinions? I'd be happy to invest some time in this.
Allan
_______________________________________________
[email protected]
https://mail.gnome.org/mailman/listinfo/release-team
Release-team lurker? Do NOT participate in discussions.

Reply via email to