2023-10-30 Meeting notes

Date

Attendees 

Discussion items

TimeItemWhoNotes
1 minScribeAll

Maccabee Levine is next, followed by Tod Olson 

Reminder:  Please copy/paste the Zoom chat into the notes.  If you miss it, this is saved along with the meeting recording, but having it here has benefits.

1 minTCR Board Review

All

Nothing New

5-10 minLiaison Updates
5 min

Technical Council Sub Groups Updates

All

Quick updates only.  If we can't find volunteers for groups, we'll need to add the topic to our backlog and address it during dedicated discussion sessions.

AWS Costs: below

Distributed Config:

Architecture Review:

  • Jenn Colt talked last week about deferring.  leave that way.

Communicating Breaking Changes:

Translation:

  • Craig McNally will bring up at chairs meeting today, see if PC or CC can lead.

TCR Process Improvements:

5-10 minAWS Costs Rollout

Summary from Slack:

  • TC and CC approved the new process over the summer.  PC agreed they generally didn't need to be involved.
  • The wiki space is now at https://folio-org.atlassian.net/wiki/display/COSTS/ and the Jira project for tracking the environment requests is https://folio-org.atlassian.net/browse/COSTS.  Slack channel is still #folio-aws-costs.
  • Subgroup members presented this week to the PO Meeting (Wednesday) and the EPAM-EBSCO Team Leads' Forum (Tuesday).  Happy to address any other groups.
  • The final task for the subgroup is announcements to the CC, PC, and (this) to the TC.
  • The new AWS Cost Review Group has been formed; initial members are @Yogesh Kumar (Kitfox), @Tom Cramer (appointed by CC) and @peter-murray (appointed by TC).
  • Everything is effective with environments / plans for the Q release.

Notes:

10 minDecision LogAll
10-20 minRFCs

All


RFC Process Improvements:

From Slack ():

I've incorporated the feedback from today's meeting into the following draft of the RFC Process:  https://folio-org.atlassian.net/wiki/display/~cmcnally/RFC+Process+v2a.  Thank you to those who joined and participated.

While discussing some of the feedback on the Application Formalization RFC, I had an idea which could help the early stages of the RFC process go a little smoother.  I've incorporated this into an alternative draft RFC Process document found here:  https://folio-org.atlassian.net/wiki/display/~cmcnally/RFC+Process+v2b

What's the difference?
In RFC Process v2a, the submitter writes a full RFC and then brings it to the TC.  in RFC Process v2b, only an abstract (Overview, scope, rough timeline) is created and brought to the TC.  The two processes only differ in the stages prior to DRAFT REFINEMENT.  Hopefully that makes reviewing these documents easier.

What's the rationale for the RFC Process v2b?
The intent is to start the conversation about scope and general direction as early as possible, before the submitter has invested time and effort into writing a complete RFC.  This also could help the TC focus solely on the scope and general direction instead of being distracted by the rest of the RFC.  Finally, if there are multiple related RFCs, the submitter could bring the abstracts for them all to the TC at once, providing insight into how things are split up, the expected sequence and timing of the RFCs, etc.

What's next?
Please take a look at both documents.  I plan to raise this at Monday's TC meeting and reach a decision on which process is preferred.  The following Wednesday meeting can then be used to refine the preferred process document


Notes:

004 Date-time values

  • Zak Burke My understanding about server side code has changed, understanding pushback.  Can add a 'Z' to existing unspecific dates to allow everyone to get what they want; minimum changes and maximum clarity.  But some still asking for scope to be reduced.  Will follow up with individual contributors to see if we can amend proposal that way to move to next phase.
    • Marc Johnson Suggesting to take DB aspects out?
    • Zak Burke DB aspects not relevant since RFC is specific to string dates.  Never any reason to store a datetime without a timezone.  Proposal is only when we represent datetimes as strings, to include timezone.  For historical reasons server side modules prefer that to be UTC, so can achieve that by just adding a Z.  But does that mean we have to change all the postgres datestamp to datestamp + timezone?  If so can take that out.  If we know that all timezone values currently are UTC, should be easy win.
    • Marc Johnson So storage representations are still in scope?
    • Zak Burke Would like it to be.  Should be easy conversion to RFC 3339 compliant value without any change to their string representation.  Recognize that first draft needs to change, but how it changes is up for debate.
  • Tod Olson Motivation section fronts specifically the standard, but doesn't talk about removing the ambiguity.  Will throw in that comment on why.

005 Application Formalization

  • Craig McNally Addressed several comments last week.  One open question is what to do with all the non-technical questions.  Suggestion was to add them to unanswered question section, but then later on after discussion with cross-council group, what if we decide they are out-of-scope.  Is it too late to make that scope adjustment?
    • Marc Johnson Prior guidance was that it was too late to change the scope – although that was expanding, not shrinking.  Concern with including those in this RFC is that this is narrowly focused.  All for having a place to keep hold of those questions, right now at least 3 RFCs.  Should be an overarching thing – not an RFC – to be responsible for that stuff.
    • Maccabee Levine Fine with handling those in another place, now that cross-council convo will start thanks to Jenn Colt 
    • Craig McNally will sort out with Maccabee Levine what to remove from this stage.
  • Craig McNally Process 2a vs 2b, described above.
  • Craig McNally how do we adopt 2b for RFCs currently in progress?
    • Tod Olson Give in-flight processes the option of doing either.
    • Marc Johnson Distinction between the two that are already with the TC, and others we know are being developed but are not yet submitted?
    • Craig McNally Meant the ones that have not been submitted yet.  The ones already in front of us, hard to pull those back now if people have already read through the details.  But open to pulling together abstracts for the other application-related RFCs and presenting at a TC meeting, to trial the process that way.
    • Marc Johnson For the applications one this is a challenge, because these are stacked RFCs.  When those abstracts are shared with TC, that starts the RFC process for all of that group.
    • Craig McNally Timeline and sequence are addressed in new Abstract Preparation phase.
    • Marc Johnson If someone submits an RFC with just the abstract, the Prelim Review stage starts for that RFC irrespective of the others related.  So then we have a lot of RFCs in process for the TC at the same time.  Hard with that one-week timebox.
    • Craig McNally Submitter can ask for more time to make adjustments, that's in Prelim Review process.
    • Maccabee Levine Prelim Review will be easier to finalize the scope, if the abstracts were considered in bulk, so we can divide up / combine / reorder RFCs as need at that phase to be of clearer scope.
    • Marc Johnson Agrees with the 2b suggestion.  Just raising awareness that it will create long period of time of RFCs sitting in our process.
    • Craig McNally We'll try it and see how it works like anything the first time through.
  • Marc Johnson How do we communicate this change?  We don't know what RFCs we may not be aware of.
    • Craig McNally Need to publish this.  Maybe add something else to general guidelines.  Then share a link in various slack channels.  Fortune that if someone does develop a whole RFC, it will be easy to extract the abstract.  Nail down Wednesday, final review.  
    • Maccabee Levine Emphasize even though more steps, actually fewer voting stages.  Goal is quicker process.
    • Ingolf Kuss agrees.
1 minUpcoming MeetingsAll
  • - Folio Chairs meeting
  • - RFC process improvements (final session?)
  • - Topic TBD
5-10 min

Officially Supported Technologies

All

Standing agenda item to review/discuss any requested or required changes to officially supported technology lists

Time PermittingDev Documentation VisibilityAll

Previous Notes:

Marc Johnson raised a point regarding the maintenance of the dev.folio.org website. He mentioned that in the early days of Folio, this website was managed by a small group of individuals who were working on the project. However, with the project's growth, keeping the site up to date has become a challenge. Marc suggested that the community should collectively decide whether to continue maintaining the website or explore alternative platforms for sharing development information, as there are differing preferences regarding resources such as the wiki. He also observed that the dev.folio.org site is not updated frequently due to the effort involved.

  • RFCs are not searchable from the wiki or dev site.  
  • DRs help, but may not be applicable or enough in some cases.
    Craig McNally proposed the use of Decision Records in the RFC process, emphasizing their role in formalizing decisions and creating a wiki presence, especially for handling breaking changes. Maccabee Levine  supported this.
  • ...

Craig McNally and Marc Johnson  discussed the need for a central reference and documentation hub for Folio developers. Marc raised this topic, which had also been mentioned in the "Things Folio Can Do Better" discussion. He proposed creating a developer index on the wiki to guide developers, despite the potential complexity of the task. Craig supported the idea, highlighting the challenges of finding information and improvements in GitHub search. Concluded with plans to revisit the topic in future discussions.


Today:

  • Skipped today given <10 minutes.
NAZoom Chat

Marc Johnson 11:11 AM
My concerns were voiced last time, I have nothing more to add
FWIW I agreed with most of what you said in your last comment to Julian

Marc Johnson  to  Everyone 11:19 AM
What that tells me is that as a community we haven’t understood RFC-3339 That has been the documented standard for a long time and is not ambiguous

Marc Johnson  to  Everyone 11:24 AM
To be more specific, the thing I was referring to was an overarching organised activity for these changes  AKA what Jenn has started driving forward

Marc Johnson 11:45 AM
Counter intuitively, more smaller steps can be more effective (as long as the management overhead isn’t too high)

Topic Backlog

Decision Log ReviewAll

Review decisions which are in progress.  Can any of them be accepted?  rejected?

Translation SubgroupAllSince we're having trouble finding volunteers for a subgroup, maybe we can make progress during a dedicated discussion session?
Communicating Breaking ChangesAllSince we're having trouble finding volunteers for a subgroup, maybe we can make progress during a dedicated discussion session?
Officially Supported Technologies - UpkeepAll

Previous Notes:

  • A workflow for these pages. When do they transition from one state to another. Do we even need statuses at all ?
  • Stripes architecture group has some questions about the Poppy release.
  • Zak: A handshake between developers, dev ops and the TC. Who makes that decision and how do we pass along that knowledge ? E.g. changes in Nodes and in the UI boxes. How to communicate this ? We have a large number of teams, all have to be aware of it.  TC should be alerted that changes are happening. We have a couple of dedicated channels for that. Most dev ops have subscribed to these channels. How can dev ops folk raise issues to the next level of community awareness ? There hasn't been a specific piece of TC to move that along.
  • Craig: There is a fourth group, "Capacity Planning" or "Release Planning". Slack is the de facto communication channel.  There are no objections to using Slack. An example is the Java 17 RFC. 
  • Craig: The TC gets it on the agenda and we will discuss it. The TC gets the final say.
  • Marc Johnson: We shouldn’t use the DevOps Channel. The dev ops folks have made it clear that it should only be used for support requests made to them.
  • Jakub: Our responsibility is to avoid piling up technical debt.
  • Marc: Some set of people have to actually make the call. Who lowers the chequered flag ?
  • Craig: It needs to ultimately come to the TC at least for awareness. There is a missing piece. Capacity Planning needs to provide input here. 
  • Marc: Stakeholders / Capacity Planning could make that decision. Who makes the decision ? Is it the government or is it some parts of the body ?
  • Marc: the developers community, the dev ops community and sys ops are involved. For example the Spring Framework discussion or the Java 17 discussion. But it was completely separate to the TC decision. It is a coordination and communication effort.
  • Marc: Maybe the TC needs to let go that they are the decision makers so that they be a moderating group.
  • Jakub: I agree with Marc. But we are not a system operating group. Dependency management should be in the responsibility of Release management. There are structures in the project for that.
  • Jason Root: I agree with Jakub and with Marc also. Policies should drive operational/release/support aspects of Folio.
  • Jason Root: If the idea of “support” is that frameworks are supported, then of course the project should meet that.
  • Marc Johnson
    Some group needs to inform OleksAii when a relevant policy event occurs.
    These documents effectively ARE the manifestation of the policy.
  • Craig: This is a topic for the next Monday session.
  • Craig to see if Oleksii Petrenko could join us to discuss the process for updating the officially supported technologies lists.


Action Items