Re: Next Steps for Bringing Generation 3 Architecture into Apache Fineract
> As VP of our PMC and one of the leads on Fineract CN development, I kindly > ask you to initiate such a vote. There's a misunderstanding of my role as V.P./Chair here that I would like to correct. My job as V.P. is to serve as a connection between the board and the project. I make sure our reports are submitted, I follow the discussions on the board mailing list, and bring anything back to the community that is relevant for us. I see my job as also learning about Apache philosophy and processes, and educating our community. In addition, it is my job to advocate for us within the wider Apache community. V.P. is not a command-role at Apache. It is a servant role. When I'm writing as the V.P. I will sign my mails accordingly. If I do not sign my mails as V.P., you can assume that I am speaking as an individual contributor. As an individual contributor I have no more or less authority than anyone else in the community. If I do, it's not by virtue of a title, but rather by virtue of the work, knowledge, and persuasive power I bring to the matter at hand. Speaking here as one of the leads on Fineract CN development, I am not yet ready to initiate this vote. I will however, piece by piece, begin educating the community on the contents of the Fineract CN development so that they have the information they need to make an informed vote when the time comes. > I will discuss this with the incubator then. Please also grant me access to > the repository so I can assist with the actual transition when it occurs. > Thanks for the heads up on Mark van Veen and making the process as clear as > possible. All of the Mifos I/O github repositories already have global read access. At a technical level, that is all that is needed to bring the code with its history over to Apache. Once Infra creates the repos, anyone with access to the Apache repos will be able to copy the code over. Since you're a Fineract committer you will have that access. > Thank you for providing that clarity. Up until yesterday and my > conversations with Craig, I was not aware that all the code (including the > last several months of development) was still under copyright ownership of > the Mifos Initiative. This will simplify the transition greatly. Based on my recent discussions with Craig, I don't think he realized. But we worked this way on purpose, precisely to simplify the transition. Best Regards, Myrle
Re: Next Steps for Bringing Generation 3 Architecture into Apache Fineract
Hi Myrle, Please see my replies inline. On Mon, Aug 7, 2017 at 1:57 AM, Myrle Krantz wrote: > >> I want to be the kind of > >> person who provides actionable information, and requests, so I made a > >> decision based on that experience: I will not ask for help on a > >> project again until I am ready to personally guide a new contributor > >> through the process of contributing: > >> * getting the new project building, > >> * understanding the project structure, > >> * finding appropriate tickets, and > >> * getting their pull request merged. > >> > > > > That's a good checklist to have in place. With Apache Fineract Version 1, > > we try our best to do that and I hope that others in the community can > > hopefully start the doing the same for Gen 3/Apache Fineract Version 2 > > without you or anybody from Kuelap having to be a bottleneck. > > Unfortunately there are aspects of this that we need to work on. In > particular pull requests. As I pointed out in my last report to the > board, there are 38 open pull requests stretching back to March, 2016. > You can see them here: > https://github.com/apache/fineract/pulls?page=2&q=is%3Apr+is%3Aopen > > Also unfortunately: I got no response to that. > Every one of those pull requests has been commented on and followed up by Nazeer. Some are merged and I take it could be closed so we'll try and do another round of cleanup on those open pull requests. But the fact that they're open, does not mean that they've been ignored or reviewed. > > We also have some other important holes: > * Take your first steps in confluence contains no information on > building the project. > * Take your first steps links to the issue tracker, but we do not seem > to have a tag for newbie issues or issues for non-programmers such as > people who are interested in contributing QA, requirements collection, > or documentation. If we do have such a tag, or tags, they are not > documented in the "Take your first steps" page. > I will try and plug those holes as needed but I wasn't aware of that and since we all have karma to the wiki I encourage the entire PMC if there are gaps in documentation we try to take the effort to close them. Throughout GCI, we tried to have students identify holes and plug them as they could. Under the User's Zone there are build instructions, so I will link to those from the Take your First Steps page. Since there is no standard label for Beginner/Newbie issues, we have used the taxonomy the Mifos community has always gone by in the past, with a "Volunteer" label. I will ensure that this list is accessible from the Take Your First Steps page. At the Mifos Initiative, we try and do all that we can to engage non-technical individuals through our website on these other non-technical tasks. I and my colleagues in the Mifos community will try to do what we can but I encourage other members of the PMC and community to do as such. However the documentation we have in place on Apache Fineract was pretty bare bones by design and I think was reflective of the culture that this is a meritocracy and contributors/newcomers should sink or swim on their own accord. I personally have always espoused a different view in that I think some community members need more handholding and that's why at the Mifos Initiative we try to directly onboard new volunteers/partners etc. I will work with Sampath and others to try and extend documentation. Please point us to best practices on other projects we should emulate. > > I'd like to do better on these points when we submit Fineract CN, but > clearly doing so is not trivial, or else we'd be doing better. > > >> Beyond both of these lists there is still more required to make this > >> code into part of a successful Apache project: > >> * addition of RAT to the build process, > >> * adjustments to the project to remove non-Apache licensed code > >> (potentially), > >> * communications between Mifos and Apache to donate a tranche of code > to a > >> TLP, > >> * communication with the Apache INFRA team to set up source > >> repositories, and artifact repositories, > >> * adjustments to JIRA to make it possible to mark tickets for which > >> Gen, and which component, > >> * release management for a new kind of release structure, and > >> * collective decision-making about the future project direction. > > > > This was the aim of the wiki page - can you please add those there? These > > are exactly the kinds of items I wanted listed so we can discuss with > other > > Apache community and Mifos community members, how they could possibly > > contribute in completing these prerequisites. > > Once I'm ready to support people in these tasks, I'll add them as JIRA > tickets. It's easier to track them that way. Before we can do that > though, I see two pre-requisites: > > 1.) The Apache Fineract project has to accept the Fineract CN code. > 2.) The Mifos Initiative has to donate the code to the ASF and the ASF > has to accept it. > Than
Re: Next Steps for Bringing Generation 3 Architecture into Apache Fineract
>> I want to be the kind of >> person who provides actionable information, and requests, so I made a >> decision based on that experience: I will not ask for help on a >> project again until I am ready to personally guide a new contributor >> through the process of contributing: >> * getting the new project building, >> * understanding the project structure, >> * finding appropriate tickets, and >> * getting their pull request merged. >> > > That's a good checklist to have in place. With Apache Fineract Version 1, > we try our best to do that and I hope that others in the community can > hopefully start the doing the same for Gen 3/Apache Fineract Version 2 > without you or anybody from Kuelap having to be a bottleneck. Unfortunately there are aspects of this that we need to work on. In particular pull requests. As I pointed out in my last report to the board, there are 38 open pull requests stretching back to March, 2016. You can see them here: https://github.com/apache/fineract/pulls?page=2&q=is%3Apr+is%3Aopen Also unfortunately: I got no response to that. We also have some other important holes: * Take your first steps in confluence contains no information on building the project. * Take your first steps links to the issue tracker, but we do not seem to have a tag for newbie issues or issues for non-programmers such as people who are interested in contributing QA, requirements collection, or documentation. If we do have such a tag, or tags, they are not documented in the "Take your first steps" page. I'd like to do better on these points when we submit Fineract CN, but clearly doing so is not trivial, or else we'd be doing better. >> Beyond both of these lists there is still more required to make this >> code into part of a successful Apache project: >> * addition of RAT to the build process, >> * adjustments to the project to remove non-Apache licensed code >> (potentially), >> * communications between Mifos and Apache to donate a tranche of code to a >> TLP, >> * communication with the Apache INFRA team to set up source >> repositories, and artifact repositories, >> * adjustments to JIRA to make it possible to mark tickets for which >> Gen, and which component, >> * release management for a new kind of release structure, and >> * collective decision-making about the future project direction. > > This was the aim of the wiki page - can you please add those there? These > are exactly the kinds of items I wanted listed so we can discuss with other > Apache community and Mifos community members, how they could possibly > contribute in completing these prerequisites. Once I'm ready to support people in these tasks, I'll add them as JIRA tickets. It's easier to track them that way. Before we can do that though, I see two pre-requisites: 1.) The Apache Fineract project has to accept the Fineract CN code. 2.) The Mifos Initiative has to donate the code to the ASF and the ASF has to accept it. Given the ground-swell of interest in Fineract CN, the first point is likely mostly a formality. I still want a formal vote though, with close to 100% participation. This is a significant move, and it's important to me that the Apache Fineract committers explicitly express willingness to take on the responsibility. I'm not entirely certain how step 2 proceeds. The easiest way to find out is to run it by the incubator -- that's where the Apache experts for code donation "live". Presumably the Mifos Initiative (ie Ed Cable) will have to sign some forms and send them to the ASF, and the ASF board will have to vote on it at a board meeting. In this process, one very significant contributor to that code base (Mark van Veen) will probably need to sign an iCLA. The rest of us already have an iCLA on file with the ASF. Let me be very clear on this: the code belongs to the Mifos Initiative. It doesn't belong to the ASF, and it doesn't belong to Kuelap. > I hope that by getting these lists out in the open, we can take some work > off your plate. Don't worry -- I will communicate openly about anything anybody else can do to support this process. Best Regards, Myrle Krantz Solution Architect, Kuelap, Inc
Re: Next Steps for Bringing Generation 3 Architecture into Apache Fineract
Thank you for your thorough email Myrle. This is exactly the conversation I wanted to have start. Please see some replies inline. On Sun, Jul 30, 2017 at 1:21 AM, Myrle Krantz wrote: > Hello Ed, > > It's exciting to see some interest in the work that Markus, Mark, and > I have been doing on Gen 3. It has always been, and still is the > intention to bring this code into the Apache Fineract community. > However doing so will require considerable effort, especially from me. > > Last November I did a presentation on Fineract at ApacheCon in > Seville, Spain [1]. The positive resonance was tremendous. Several > people asked me in QA and again in the hall afterwards how they > personally could contribute. Unfortunately because I am working on Gen > 3, I could not answer that question. Instead I sent them to the > mailing list, where very sadly not one person found an answer which > enabled them to contribute to Fineract. I can only recall one individual who actually sent an email to the mailing list and he was immediately engaged. Unfortunately at the time the project wasn't yet ready for his contribution but I've continued to try and engage with him to no success > I want to be the kind of > person who provides actionable information, and requests, so I made a > decision based on that experience: I will not ask for help on a > project again until I am ready to personally guide a new contributor > through the process of contributing: > * getting the new project building, > * understanding the project structure, > * finding appropriate tickets, and > * getting their pull request merged. > That's a good checklist to have in place. With Apache Fineract Version 1, we try our best to do that and I hope that others in the community can hopefully start the doing the same for Gen 3/Apache Fineract Version 2 without you or anybody from Kuelap having to be a bottleneck. > > I believe you are asking for this and more Ed. You probably want: > * changes in features and additional features to support the community, > * help in deploying microservices in a cloud architecture, > * documentation assuring MFIs, and end users about our security > architecture, plus > * assistance in calls with potential customers of Gen 3. > Yes I think ultimately these are the resources the community needs to put in place but really what i'm asking for now is the 3rd list that you've made below. Those resources ideally will come but for now I would like us to simply try to achieve the prerequisites to getting Gen 3 officially into Apache. Because right now everybody knows about it, is anticipating it, is eager to use it, etc. but it's in state of limbo until we address your list below. > > Beyond both of these lists there is still more required to make this > code into part of a successful Apache project: > * addition of RAT to the build process, > * adjustments to the project to remove non-Apache licensed code > (potentially), > * communications between Mifos and Apache to donate a tranche of code to a > TLP, > * communication with the Apache INFRA team to set up source > repositories, and artifact repositories, > * adjustments to JIRA to make it possible to mark tickets for which > Gen, and which component, > * release management for a new kind of release structure, and > * collective decision-making about the future project direction. > This was the aim of the wiki page - can you please add those there? These are exactly the kinds of items I wanted listed so we can discuss with other Apache community and Mifos community members, how they could possibly contribute in completing these prerequisites. > > There are probably a few tasks I haven't thought of that will have to > be added to these lists. > > Unfortunately at this time, for various reasons, I'm not yet ready to > do any of these three lists. That is the reason I have not yet > brought Gen 3 to the community. > I hope that by getting these lists out in the open, we can take some work off your plate. > > Currently Kuelap is in startup mode, which I'm sure everyone here > understands is a very intense mode of software development. At the > same time both of my daughters are at home for summer break, so I am > caring for them during work hours. Frankly I'm swamped. I'm hoping > that once I have both kids started into this school year, I'll have > the time to take on responsibilities within the Apache Fineract > community beyond those that I'm already fulfilling, such as those on > some of the lists above. It may, however, be October before the dust > on my end has settled enough to make time for extra responsibilities. > I understand the laser-focus that Kuelap is in but in my role as lead for the Mifos Initiative and its community, we have a mandate to our donors and a limited runway and time frame in which we are to catalyze a community on Generation 3 and usher the community to this next generation. It's difficult to do so until we achieve the prerequisi
Re: Next Steps for Bringing Generation 3 Architecture into Apache Fineract
Dear Myrle, It very clear; Thanks for taking up your time for this! Regards Sendoro - Original Message - From: "Myrle Krantz" To: "dev" Sent: Sunday, July 30, 2017 11:21:31 AM Subject: Re: Next Steps for Bringing Generation 3 Architecture into Apache Fineract Hello Ed, It's exciting to see some interest in the work that Markus, Mark, and I have been doing on Gen 3. It has always been, and still is the intention to bring this code into the Apache Fineract community. However doing so will require considerable effort, especially from me. Last November I did a presentation on Fineract at ApacheCon in Seville, Spain [1]. The positive resonance was tremendous. Several people asked me in QA and again in the hall afterwards how they personally could contribute. Unfortunately because I am working on Gen 3, I could not answer that question. Instead I sent them to the mailing list, where very sadly not one person found an answer which enabled them to contribute to Fineract. I want to be the kind of person who provides actionable information, and requests, so I made a decision based on that experience: I will not ask for help on a project again until I am ready to personally guide a new contributor through the process of contributing: * getting the new project building, * understanding the project structure, * finding appropriate tickets, and * getting their pull request merged. I believe you are asking for this and more Ed. You probably want: * changes in features and additional features to support the community, * help in deploying microservices in a cloud architecture, * documentation assuring MFIs, and end users about our security architecture, plus * assistance in calls with potential customers of Gen 3. Beyond both of these lists there is still more required to make this code into part of a successful Apache project: * addition of RAT to the build process, * adjustments to the project to remove non-Apache licensed code (potentially), * communications between Mifos and Apache to donate a tranche of code to a TLP, * communication with the Apache INFRA team to set up source repositories, and artifact repositories, * adjustments to JIRA to make it possible to mark tickets for which Gen, and which component, * release management for a new kind of release structure, and * collective decision-making about the future project direction. There are probably a few tasks I haven't thought of that will have to be added to these lists. Unfortunately at this time, for various reasons, I'm not yet ready to do any of these three lists. That is the reason I have not yet brought Gen 3 to the community. Currently Kuelap is in startup mode, which I'm sure everyone here understands is a very intense mode of software development. At the same time both of my daughters are at home for summer break, so I am caring for them during work hours. Frankly I'm swamped. I'm hoping that once I have both kids started into this school year, I'll have the time to take on responsibilities within the Apache Fineract community beyond those that I'm already fulfilling, such as those on some of the lists above. It may, however, be October before the dust on my end has settled enough to make time for extra responsibilities. In the mean time however, I can give you the following assurance. While Mark and I were in Seville in November, I talked to Apache Infra about hosting multiple repositories for one project. They are ready, willing, and waiting for our tickets to create new repositories. I met with Roman in California while I was there on vacation August 2016 and again in Seville in November. Apache projects do occasionally perform re-architectings and release old and new in parallel for a while. There is no technical or organisational Apache-level obstacle to our plan of releasing Gen 2, and Gen 3 side-by-side for a while. In fact we have a lot of good will from the ASF. As you know I've also created a plan for how to assemble our releases out of multiple independent repositories and sent it to the Fineract community for feedback [2]. There is no currently identified obstacle to collecting our release out of multiple repositories. Best Regards, Myrle Krantz 1.) https://feathercast.apache.org/2017/01/26/apachecon-seville-2016-introducing-apache-fineract-incubating-myrle-krantz/ 2.) https://cwiki.apache.org/confluence/display/FINERACT/Composing+a+Release+out+of+Microservices On Fri, Jul 28, 2017 at 11:10 PM, Ed Cable wrote: > Hello Apache Fineract Community, > > As communicated throughout numerous webinars and white papers across the > Mifos and Apache Fineract communities, the future of our technology centers > around our Generation 3 architecture (Apache Fineract 2.0). > > I'm starting this thread to initiate the process of moving this new > codebase and next major version of Apache Fineract into the commu
Re: Next Steps for Bringing Generation 3 Architecture into Apache Fineract
Hello Ed, It's exciting to see some interest in the work that Markus, Mark, and I have been doing on Gen 3. It has always been, and still is the intention to bring this code into the Apache Fineract community. However doing so will require considerable effort, especially from me. Last November I did a presentation on Fineract at ApacheCon in Seville, Spain [1]. The positive resonance was tremendous. Several people asked me in QA and again in the hall afterwards how they personally could contribute. Unfortunately because I am working on Gen 3, I could not answer that question. Instead I sent them to the mailing list, where very sadly not one person found an answer which enabled them to contribute to Fineract. I want to be the kind of person who provides actionable information, and requests, so I made a decision based on that experience: I will not ask for help on a project again until I am ready to personally guide a new contributor through the process of contributing: * getting the new project building, * understanding the project structure, * finding appropriate tickets, and * getting their pull request merged. I believe you are asking for this and more Ed. You probably want: * changes in features and additional features to support the community, * help in deploying microservices in a cloud architecture, * documentation assuring MFIs, and end users about our security architecture, plus * assistance in calls with potential customers of Gen 3. Beyond both of these lists there is still more required to make this code into part of a successful Apache project: * addition of RAT to the build process, * adjustments to the project to remove non-Apache licensed code (potentially), * communications between Mifos and Apache to donate a tranche of code to a TLP, * communication with the Apache INFRA team to set up source repositories, and artifact repositories, * adjustments to JIRA to make it possible to mark tickets for which Gen, and which component, * release management for a new kind of release structure, and * collective decision-making about the future project direction. There are probably a few tasks I haven't thought of that will have to be added to these lists. Unfortunately at this time, for various reasons, I'm not yet ready to do any of these three lists. That is the reason I have not yet brought Gen 3 to the community. Currently Kuelap is in startup mode, which I'm sure everyone here understands is a very intense mode of software development. At the same time both of my daughters are at home for summer break, so I am caring for them during work hours. Frankly I'm swamped. I'm hoping that once I have both kids started into this school year, I'll have the time to take on responsibilities within the Apache Fineract community beyond those that I'm already fulfilling, such as those on some of the lists above. It may, however, be October before the dust on my end has settled enough to make time for extra responsibilities. In the mean time however, I can give you the following assurance. While Mark and I were in Seville in November, I talked to Apache Infra about hosting multiple repositories for one project. They are ready, willing, and waiting for our tickets to create new repositories. I met with Roman in California while I was there on vacation August 2016 and again in Seville in November. Apache projects do occasionally perform re-architectings and release old and new in parallel for a while. There is no technical or organisational Apache-level obstacle to our plan of releasing Gen 2, and Gen 3 side-by-side for a while. In fact we have a lot of good will from the ASF. As you know I've also created a plan for how to assemble our releases out of multiple independent repositories and sent it to the Fineract community for feedback [2]. There is no currently identified obstacle to collecting our release out of multiple repositories. Best Regards, Myrle Krantz 1.) https://feathercast.apache.org/2017/01/26/apachecon-seville-2016-introducing-apache-fineract-incubating-myrle-krantz/ 2.) https://cwiki.apache.org/confluence/display/FINERACT/Composing+a+Release+out+of+Microservices On Fri, Jul 28, 2017 at 11:10 PM, Ed Cable wrote: > Hello Apache Fineract Community, > > As communicated throughout numerous webinars and white papers across the > Mifos and Apache Fineract communities, the future of our technology centers > around our Generation 3 architecture (Apache Fineract 2.0). > > I'm starting this thread to initiate the process of moving this new > codebase and next major version of Apache Fineract into the community so we > can at last mobilize the community around the new architecture. > > Right now the codebase is in a Github Repository at > https://github.com/mifosio but the community cannot fully participate until > it's part of Apache and there is little visibility or documentation for the > community to know of the status of Generation 3. > > Across the community there is a gr