2016-09-20 - ESCo - Meeting agenda/minutes
Table of Contents
Date
Attendees
Name | Organisation | Present / Absent |
---|---|---|
Symphony LLC | Absent | |
Goldman Sachs | Absent | |
Symphony LLC | Present | |
Markit | Present | |
Credit Suisse | Present | |
Former user (Deleted) (guest speaker) | BNY Mellon | Present |
Peter Monks (secretary) | Symphony Software Foundation | Present |
Gabriele Columbro (observer) | Symphony Software Foundation | Absent (conflict) |
Maurizio Pillitu (observer) | Symphony Software Foundation | Absent (conflict) |
Actions items from previous meeting
- Former user (Deleted) - draft project release approval criteria  (Please see Symphony Foundation Contribution Lifecycle Proposal)
- Proposal is that ESCo will approve the first release of each project, then delegate approval of subsequent releases to the project team
- Peter Monks - schedule Former user (Deleted) and Former user (Deleted) to give WG updates next meeting and the following meeting
- Peter Monks - schedule Lawrence Miller (Deactivated) to present on OSS plan in next week's ESCo meeting
Agenda
Time | Item | Who | Notes |
---|---|---|---|
5 min | Roll call | ||
5 min | Review action items from last meeting |
| |
20 min | Status update on formation of API WG | Former user (Deleted) | |
20 min | Status update on Desktop Wrapper WG | ||
5 min | AOB |
Meeting notes
- Roll call
- Action item review:
- Frank: gave overview of a draft of some project releaser approval criteria (available here)
- ESCo to review offline, prepare comments / feedback and discuss in a future meeting
- Peter scheduled Anthony (today), James (today), and Bruce (next week) to give updates on their respective WGs
- Peter did not schedule Lawrence to give an OSS plan update - will move that action forward
- API WG status update (Anthony)
- Introduction to Anthony - new at BNY Mellon, previously at AT&T as a product manager / marketer on the developer platform team. Â 5+ years of experience with APIs and developer platforms.
- Chairing the API WG on behalf of BNY Mellon. Â Michael Gardner remains the executive sponsor.
- Anthony: narrative update on the activities of the WG, and where we are:
- This WG is still in the formation stages - we haven't submitted a charter for ratification yet, but that's our main objective.
- We have membership from 8 different Foundation member companies, 17 or so individuals from those companies. Â So reasonably good representation.
- So far we've had 3 meetings, with 10-15 participants, including members of the LLC (Bruce, Paul). Â So reasonably broad and committed representation, based on meeting attendance.
- Our main purpose and focus of discussion in those meetings has to come to some consensus on the charter that we can submit for approval. Â And also to look at it beyond the charter and think about the key activities of thew WG, and prioritise them, so that when the charter is approved we can get started quickly.
- In those meetings we've used agenda / discussions / feedback to iterate on the charter. Â We've conducted a survey, across the Foundation membership at large (not just those participating in the WG) to help identify priorities.
- The plan going forward is to take the latest version of the charter, submit it to the membership and vote, on a member firm basis, to submit the charter to the ESCo. Â We expect to conduct that vote by the end of the month (September).
- We then expect to submit the charter to the ESCo for ratification sometime in October.
- High level activities / prioritisation exercise identified these top priorities:
- Put in place a framework or set of best practices / guidelines around APIs that will be exposed going forward around code contributions to the Foundation. Â We've used Bruce's document, BNY Mellon's own standards, and standards from comparable open source communities to build this.
- Key functional requirements that would be exposed as APIs. Â Another voice of input into the Foundation on what we'd like to see in terms of building out and adding to the Symphony platform.
- Q&A:
- Lawrence: do you see the WG having both of those mandates ultimately, in the charter put forward to ESCo, or are you trying to pick between the two?
- Anthony: the vote will determine that, but the intent is to include both of those mandates in the charter, and it's more about sequencing specific deliverables than it is about trying to say what's included vs not included.
- Lawrence: 2 pieces of feedback:
- The composition of the WG depends on what it spends its time focusing on. Â The questions around standardisation and architectural design of "what does a RESTful API look like from an an architecture perspective" is a very different audience than people who are either consumers of the API or authors of the API code.
- If I was looking at a dual mandate, I would be looking at how you'd operate under that mandate. Â Are you biting off more than you can chew with this type of a WG?
- Second question I would ask: as you're looking at the second topic (functionally what gets built), at least when I've looked at this through a Foundation lens, the governing processes are around accepting contributions of code. Â Would you be looking therefore at this group as the group that approves contributions? Â How are you positioning how the WG operates vs how the Foundation operates?
- Anthony: 2nd question first. Â We don't see the WG as being involved in approval activity. Â The LLC is already doing market research and has a plan of deliverables. Â This is more another set of requirements from Foundation members - another set of inputs. Â It's not about approvals.
- Lawrence: is this code contributions or how do you envisage this working?
- Anthony: I envisage it as some code contributions to the Foundation.
- Lawrence: so the WG members procedurally would come up with things they'd like to construct, then propose that code for contribution?
- Anthony: the mechanism is more along the lines of how are some of the services / experiences we feel are necessary for clients to be able to implement Symphony as a platform product. Â Not to build up teams to build that code, but to build up teams who can...
- James: I'm a little confused by that. Â If we think there are holes in the Symphony API offering, then things can either be delivered by Symphony LLC or 3rd parties. Â Compatibility layers / client bindings are being delivered outside Symphony, but core things like directory lookup are developed by Symphony LLC. Â I think it would be clearer to differentiate between things that must be developed by Symphony LLC vs things that can be contributed by 3rd parties. Â I don't understand the idea of influencing Symphony LLC.
- Lawrence: I think if someone sees a gap, they should contribute code to plug that gap.
- Frank: I think if the gap is in core Symphony, is the recommendation to plug the gap or request that it be plugged by Symphony LLC? Â I'm also a bit confused by the proposed charter. Â I thought the API group was going to help evolve the APIs to be more consistent, perhaps with client bindings, capabilities that add on to the core API capabilities, and then if things come out of that that there's a requirement that the community is looking for that's missing, we would feed that back to Symphony (either individually or from a community perspective).
- Anthony: yes that's exactly what I was trying to express - I think you've said that more eloquently. Â
- Frank: Lawrence is that how you see this charter going? Â Do you see this as a value to the community? Â I do by the way - I've always wanted to see this kind of WG.
- Lawrence: I think that things like language bindings, and given where we are right now in terms of getting code contributed, we're either rooting things in creating and contributing code, or we're rooting things in standardising things that define what kind of contributions the Foundation will take on. Â I'm trying to fit it into one of these two pillars. Â As long as it's constructed around something functional, it's a code contribution - that's viable as a mandate.
- Frank: I like your two columns. Â I thought this body would play both roles. Â One being that there should be functional software developed out of the WG (or the community in that space), or in lieu of that we get to your first column - let's try to create some standardisation so that the core software that underpins the APIs supports the kinds of things we're trying to build. Â Whether this is two groups or one, this will help inform the participants in those groups. Â This is a critical group for us to establish, and if we can isolate into those two buckets I think it would be very helpful.
- Anthony: this is good feedback.
- Frank: side note to all of this, Â I'm sure we will find product-related issues with what is existing from a Symphony product perspective, and we'll figure out how to feed that back to product managemrn int Symphony. Â That's going to be a natural outcome of the progress of this group.
- Frank: question: do you need help?
- Anthony: quite frankly I think we're reasonably close in articulating the mandate of the WG. Â Happily I hear that there's a desire to have this WG in place, it's a matter of being specific on the mandate, and what I've heard on this call is tips on how to stay sharp on the mandate. Â Obviously the charter is going to come to the ESCo for approval, so we're going to incorporate your feedback and reflect it back into the charter.
- Peter: question: I'd appreciate feedback on the meta process of creating a WG - how was that, what could be improved? Â This is our first time through this, so I'm sure there's lots of opportunities.
- James: we need to provide better guidance to the WGs about what we're doing. The pillars of what's expected. Â I was on the last fabulous API WG where 55 minutes was spent talking about voting process - we need to stop that. Â It was just awful. Â It wouldn't shock me if your attendees dropped as a result.
- Peter: absolutely, and we already have changes in review within the Foundation to address this (and other things).
- Lawrence: we need the procedures to be well documented.
- Peter: agreed, and that's what's in review right now.
- Lawrence: the second part of it is that a voting procedure itself won't help the WG come to consensus. Â So while I think voting procedures are important at one level, they shouldn't be a crutch to come to consensus. Â Going to a contested vote before a mandate has been agreed is inadvisable. Â ESCo, for example, hasn't agreed on a voting procedure because we haven't had to - we come to consensus before any votes take place.
- James: agreed. Â I felt there was a case on the last call of people saying "if we don't have a voting procedure, then you don't have moral authority".
- Peter: note that the ESCo does have a formal voting procedure - if you're unfamiliar with it Lawrence you might like to check the wiki. Â Also, the group dynamics between ESCo (5 participants) and API WG (more than a dozen participants) are markedly different, so it's comparing apples and oranges.
- Desktop Wrapper WG status update (James)
- As a reminder, this is the dual charter we originally put together:
- Attendance stats:
- I wasn't particularly diligent about tracking members joining initially, but apparently Markit never turn up. Â Â OpenFin also joined later (indicated by the star in the above diagram). Â I don't think we can complain about the level of attendance, but I have observations about quality of attendance.
- Stewardship of an open source project that hasn't been open sourced is a bit of an oxymoron.
- We've had a lot of conversations about the second objective - about the API between Minuet and Symphony.  In terms of actual analysis of how close to W3C standards we might seek to nominate as the interfaces, progress has been slow.  Some months ago Gareth at GS and myself proposed a POC of Symphony on alternative containers (Electron and OpenFin).  A  month ago we put out a call for participants in the POC, and got zero responses.  We (Credit Suisse) can contributes some resources, and are working through legal.  Gareth at GS was in an accident, so he's out.  OpenFin have indicated they'll participate, but they're unable to access Symphony which hinders things.
- What we were going to do with Minuet wasn't very clear from the beginning . There were different view points. Â Some of the GS folks thought that it was to promote Minuet as a competitor to Electron or any of the open source containers - they were quite vocal about that in the beginning. Â Some of the other participants however were a lot more interested in the standardisation. Â As the year wore on, it's become clearer that the LLC isn't particularly interested in Minuet per se as a topic. Â Without the open source contribution and with a difficult situation regarding people with different views, the enthusiasm for teams to do real work is low - people are happy to turn up and talk at the meetings, but when it comes to real work nothing happens. Â For example some time back I asked people to share their existing analyses of containers, and there was lot of "yeah we've got that and would be happy share", but then nothing was shared.
- On a red / amber / green scale, I'd say Minuet stewardship is red.
- Q&A:
- Lawrence: I agree on the colour status. Â When I think about Minuet from an LLC perspective, when we entered into using Minuet we were looking at it as a solid basic container that would be open sourced and we'd build a community around it and get things up and running. Â Looking back there are questions technically around Minuet, like how to provide it on a Mac desktop, and I think there's an issue with the level of contribution to Minuet, especially given the delay in contribution. Â Of course we don't have a community around it since we don't have the code. Â Looking forward, to reset or re-baseline it is a good idea because where we were art the beginning the year vs where we are now I wonder how far we're going to get even if we do get Minuet eventually.
- James: I completely concur. Â In fact as I was writing this, I was thinking this needs a reboot.
- Lawrence: the LLC is very interested in the topic of containers, but our level of confidence around what we'll be able to do with Minuet... ...well it hasn't been a good year. Â It's not that it isn't important, but the idea of bootstrapping a new container and standards around it is a good direction to go. Â The other question I have is that the point of these WGs is focused around code contributions. Â Can we get the participants to contribute? Â It's been a bit moot given the lack of Minuet contribution, but...
- James: my honest answer is "no". Â The initial answer was "yeah great idea to get Symphony running on Electron", but no one's stood up to do the work. My experience in these kinds of WGs elsewhere is that the banks are happy to rock up and give an opinion, but they're not happy to do work. Â It ends up being the vendors who do the work.
- Frank: it's funny that Markit are not participating in it. Â We put Tim Burcham on the group and his focus was on the adaptability of applications & modules on the container, and how we'd open source it in the end. Â Perhaps the focus on the container is too narrow? Â Perhaps focusing on how applications can adapt to different containers is more...
- Lawrence: is that a container thing or an API thing?
- Frank: it's more on the API but there's some visual components. Have you considered the implementation of a UI component? Â Or is it focused on API interactions with the Symphony back end? Â I see this WG as being about more than just the container - it's how applications can get...
- James: in fact one of the problems was calling it the "Desktop Wrapper WG" from the get go, while not defining either term. Â When I first started I couldn't tell if it was about the container or the APIs.
- Lawrence: it's interesting that the desktop API was different early on. Â We've renamed them twice.
- Frank: my recommendation would be to revisit the charter of this group. Â And change the "desktop" and "APIs" - I'm not saying we merge it with the API WG that Anthony is working on, but more the "extensions API".
- Lawrence: it's an interesting question around how you decompose this. Â How do you integrate the UI elements and speak to the UI elements. Â They're all rendered in HTML, so when you talk about the user visible constructs, are they components of the API or are they aspects of which HTML widget libraries do you use in the HTML front end code, whether it's API related or not? Â Are you talking about an API or an HTML coding standard? Â I don't mean to complicate it, but I think it's a really good idea to try to figure out where these things should live.
- James: it's an ontology question, and would also help with Anthony's WG. Â If we're going to have WGs around Symphony, perhaps ESCo needs to define an ontology of WGs, both of the current ones and future ones.
- Frank: Markit sponsors our own API/UI module framework and we want to layer it onto Symphony APIs. Â That project involves some of the Symphony APIs and some of the F2Â framework. Â We've written a shim between the F2 framework and the extension API that Symphony provides. Â That code that we've created, Javascript code, is something we'd want to contribute to the Foundation, and it relates to interoperability between an existing framework (F2) and Symphony.
- Lawrence: sounds like an API binding. Â Apologies I have to drop off. Â Happy to sync up offline.
- James: with respect to the Desktop Wrapper WG, or whatever we call it, we should table this to next WG meeting. Â I'll bring up in tomorrow's meeting and see what the WG members have to say.
- Peter: this might also relate to the existing agenda item regarding Minuet stewardship as a project, rather than a WG.
Action items
- Michael Harmon, john.stecher@barclays.com, Lawrence Miller (Deactivated), Former user (Deleted): review Symphony Foundation Contribution Lifecycle Proposal and prepare comments / feedback for discussion in a future ESCo meeting
- Peter Monks: schedule that discussion into future ESCo meeting agenda
- Peter Monks: schedule "WG ontology" discussion into future ESCo meeting agenda
Need help? Email help@finos.org
we'll get back to you.
Content on this page is licensed under the CC BY 4.0 license.
Code on this page is licensed under the Apache 2.0 license.