Funded [Factomize-002] Core Development

Status
Not open for further replies.
Secured
#1
There is no higher priority than further development of the Factom protocol Core codebase. It needs refactored, scaled, optimized, stabilized, hardened, and additional functionality and we need more developers outside of Factom Inc to help. “Who”, Factomize’s Lead Developer, has proven his ability to deliver for the Factom protocol. Who has developed a host of solutions for the Factomize forum which are integral to the functioning of governance and has upgraded the Enterprise Wallet (which is written in Go like Core is) as well. Who has been studying the Core codebase and knows Go and will start immediately. In fact, he has already started: https://github.com/FactomProject/factomd/issues/643. If Factomize receives this grant, we will increase our Efficiency to as high as 40% (see “Budget” for more information)

As required by document 153 that governs Factom grant round 2019-01: This is the thread for grant proposal Factomize-001.
The review process starts at 2019-01-31 00:00, so please refrain from starting public review or questions before that time. If you notice clear errors in the proposal you can contact the author of the grant proposal directly.
 

Attachments

Secured
#2
@Who has taken the time to build up his reputation in the Factom ecosystem as a great developer. I'm confident in his ability to perform as a core developer. I also really appreciate the goal of "sharing obtained core knowledge" and the blog reporting, I'll be looking for those! I definitively wish to see that grant go through.
 
Last edited:
Secured
#4
Thank you for your proposal.

This is a generic question I ask in each grant thread.
This is currently the 3rd grant round. I consider that one of the very important criterion to select a grant (apart from its potential value) is the capacity of the grantee to deliver in time what it pledged. Therefore past grants can be used as an indicator.

If you did receive grants in previous rounds, could you please fill the following fields? This would increase transparency and help the standing parties to select grants.

- Have you, or one of your partners, previously received grants : Yes/No. If No, then you can stop here :)
- List of grants received : grant X1 from round Y1, grant X2 from round Y2...
- Status for each grant : grant X1/Still ongoing or Completed, grant X2/....
- Description of the work accomplished so far and Links supporting it : Discord Group/Factomize thread/Github/Reports/...
- Description of the residual work to be completed : XXXXXX

Thank you for your cooperation.
 
Secured
#7
Hi David, this round is pretty crowded right now.

In the case where this grant doesn't go through, are you going to still allocate Who to code dev work using your lowered efficiency?
I've been asking myself that same question. I could write a long winded response showcasing my thoughts on both sides of that debate but in the end, the tl;dr would be, "I don't know" so I'll leave it at that.

I will say that I would strongly prefer not to have to make that decision.
 
Secured
#8
Go Immutable will be ranking this grant near the top of our rankings (or potentially at the top). Decentralizing development (as well as adding more core dev horsepower) is the most critical challenge we face. We simply cannot be in a position where we are burning less than 1 FCT a day year from now. We need to get mainnet in a position where it can reliably support enterprise clients and their (hopefully) high TPS. We have a lot of work to do to get there. This is a big step in that direction.

We 100% support this grant. Thank you @David Chapman and @Who for stepping-up.
 
Secured
#10
Hi David,

Thanks for the initiative, however at this time, for several reasons, I don't think we can support it

1. We believe that recurring grants should be sustainable even at a depressed floor price range of .0007 - .001. If we consider all the current recurring grants right now, we are already over that threshold.

2. The % of the grant pool going to the core development initiative would be higher than what we feel comfortable with. Having too much money going to core development is going to delay the funding of other good initiatives like good documentation/good open source libs/marketing/small, open source proof of concepts that are going to help enterprises integrate Factom.

3. While having a stable network, more TPS, etc is desirable, we believe that allowing projects to develop,test and integrate Factom at a cheaper cost is a bigger priority to us at this point. More EC burned will improve the price which in turn will improve our ability to support this initiative. If Factom Copy Cat is 50% cheaper to develop and test on because of the better supporting tools, we might lose a lot of interest from outsiders and the better network might not be enough of a selling point at this time. We would like to not be the Betamax, blockchain edition, with a better overall technology/network but too costly to develop on vs the competition .

4. The signal we are perceiving from Factom Inc is that the network infrastructure might be sufficient for now. If this was a priority to them, we believe they would not try to subsidize 100% of their maintenance/development contribution to the community and would take more risk on that side. They would invest further instead of seeing this as an opportunity cost.
 
Last edited:
Secured
#12
WHOs an all-star dev that is already primed on core work and ready to go. 100% support this and am excited to see his contributions.

Another plus to this grant that occurred to me is that we constantly want more easily digestible insights into core development, David is one of the most communicative and on top of things people in the ecosystem, his sponsorships on other grants demonstrate that. If he keeps that up for this grant, where he will have close communication with those doing core development through WHO, I expect we will gain not only an awesome core dev in WHO, but deeper and more accessible insights into core development through David. Very cool.
 
Secured
#13
Another plus to this grant that occurred to me is that we constantly want more easily digestible insights into core development, David is one of the most communicative and on top of things people in the ecosystem, his sponsorships on other grants demonstrate that. If he keeps that up for this grant, where he will have close communication with those doing core development through WHO, I expect we will gain not only an awesome core dev in WHO, but deeper and more accessible insights into core development through David. Very cool.
Examples coming soon... but not through me. It needs to come direct from Who as its his insights and knowledge that need to be shared. I'm simply making sure it happens as part of the grant and will help ensure it's digestible for the target audience.
 
Last edited:
Secured
#15
Hi David, Thank you for making this grant application. Thank you too for showing the trade-off in efficiency. Forgive me for pushing you a bit further on this. Assuming the grant is funded can you please break down what will be delivered by this grant proposal funding and what will be delivered by your ANO efficiency set at 0-40% over the next 3 months?
 
Secured
#16
The pace of work delivered by Who has been impressive. Let's see what he can do with the core tech. In any case, the time spent will be beneficial in other areas of development.

We have a dedicated, motivated set of talented devs in the community - who can work effectively together and push each other on.

Something I'd like to see from all the ANO core dev grants is educational content created for outsiders, and shared lessons to fast track future developers. It will be a hard task at first, but we can create the foundations for expansion later.

The proposed forum to learn together will make these efforts much more productive.
 
Secured
#18
The pace of work delivered by Who has been impressive. Let's see what he can do with the core tech. In any case, the time spent will be beneficial in other areas of development.

We have a dedicated, motivated set of talented devs in the community - who can work effectively together and push each other on.

Something I'd like to see from all the ANO core dev grants is educational content created for outsiders, and shared lessons to fast track future developers. It will be a hard task at first, but we can create the foundations for expansion later.

The proposed forum to learn together will make these efforts much more productive.
The following is a snippet of a blog post Who is working on:
It's been a little over a week now and I reached a point where I feel comfortable saying I know the general way the node works. There are still some large chunks that I need to study, like elections and the finer details of the network protocol, but I'm happy with my progress. The question now is: what to do with my newfound knowledge? The answer: I want to make this process easier for the next person. Over the coming days and weeks, I'm going to attempt to make the kind of material that I wish I had before going into this. Charts and graphs that detail the architecture of the factomd server, a glossary of terms, a diagram of how packets and messages travel to the individual systems, and anything else I can think of.
 
Secured
#19
I have another one question: do you have exact plans regarding core development? What exactly will Who do as a core developer within next 3 months?
As we mentioned in the grant, that's hard to say at this juncture. A reasonable portion of that time will be spent learning. I realize nobody wants to hear that, but that's the reality of the situation here. The core codebase is massive, complicated, and there's virtually no documentation for it. Who will find bugs and fix them. Who will find areas of optimization and improve the code. And maybe Who will find an area where he can provide additional functionality. What he will definitely be doing which will pay huge dividends is the following which is part of a blog post he's writing:
It's been a little over a week now and I reached a point where I feel comfortable saying I know the general way the node works. There are still some large chunks that I need to study, like elections and the finer details of the network protocol, but I'm happy with my progress. The question now is: what to do with my newfound knowledge? The answer: I want to make this process easier for the next person. Over the coming days and weeks, I'm going to attempt to make the kind of material that I wish I had before going into this. Charts and graphs that detail the architecture of the factomd server, a glossary of terms, a diagram of how packets and messages travel to the individual systems, and anything else I can think of.
Who already made one such diagram and ran it by Inc which will be shared in the future.
 
Secured
#20
Hi David, Thank you for making this grant application. Thank you too for showing the trade-off in efficiency. Forgive me for pushing you a bit further on this. Assuming the grant is funded can you please break down what will be delivered by this grant proposal funding and what will be delivered by your ANO efficiency set at 0-40% over the next 3 months?
The grant is for Who's core development. I HOPEFULLY won't have to pay him anything out of our efficiency but that risk is there if the price of FCT drops.

I'm going to answer your question with the hope that our grant is approved in which case we will be raising our efficiency to 30-40% depending on the price of FCT after the award of this grant.

We have the normal expenses other ANOs do including my contracting out our server administration to Mike Miller. We also have various expenses associated with running this forum.

Prior to stepping back from some of my roles in early January, I was putting in between 10 and 16 hours a day, 7 days a week on the protocol. I now put in around 8-10 hours a day, seven days a week but am working to get that down to six days a week. The work I perform is varied. If the community doesn't believe I provide value, my wife and children would be happy for me to cut back and I'll raise efficiency further. Especially since, to this day, I have yet to bank a single FCT or penny for myself as a result of becoming an ANO which I was ok with in the past, but not anymore. However, I ask that such discussion please happen outside this thread.
 
Last edited:
Secured
#21
@David Chapman Thanks for clarification. I was not doubted, just wanted to make sure you have a plan.

The reality is that decentralizing of the core development is what’s needed (on my mind), but without a plan, clear accountability and coordination of works it’s waste of money.

Only having multiple core developers in the community won’t solve the decentralization problem without considering things I described.

I’m surprised that some people wanted to blindly support all core dev grants without asking this important questions from grantees.

Factomize core dev grant is one of core dev grants we are going to rank highly in this grant round.

Thank you for your work, gentlemens.
 
Secured
#22
The grant is for Who's core development. I HOPEFULLY won't have to pay him anything out of our efficiency but that risk is there if the price of FCT drops.

I'm going to answer your question with the hope that our grant is approved in which case we will be raising our efficiency to 30-40% depending on the price of FCT after the award of this grant.

We have the normal expenses other ANOs do including my contracting out our server administration to Mike Miller. We also have various expenses associated with running this forum.

Prior to stepping back from some of my roles in early January, I was putting in between 10 and 16 hours a day, 7 days a week on the protocol. I now put in around 8-10 hours a day, seven days a week but am working to get that down to six days a week. The work I perform is varied. If the community doesn't believe I provide value, my wife and children would be happy for me to cut back and I'll raise efficiency further. Especially since, to this day, I have yet to bank a single FCT or penny for myself as a result of becoming an ANO which I was ok with in the past, but not anymore. However, I ask that such discussion please happen outside this thread.
Hi David,

Thank you for your response which clearly brings out what the grant delivers by enabling Who to focus on core development (I like his first blog post and am wholeheartedly behind the open learning approach).
You have also kindly underlined what you will be doing as an ANO which explains the efficiency at which you run.
This answers our question, which we have put to most ANOs submitting grant applications.

I am not in any way asking that you increase your efficiency and can certainly understand the time and effort that you apply to this community. I can also see how not taking any income makes this even harder to justify to yourself and your family. I hope that stepping back from some of your roles in January is helping reduce the effort required.

I am sure others will join me in expressing appreciation for what you do for the community.
 
Secured
#26
I believe having developers who are already in the code is a very important qualification (not necessarily a requirement) for a core developer grant. And I know we have seen good work from @David Chapman 's team.

I do question any discussion about efficiency in a grant. The appeal for justification or recognition around adjusting efficiency is properly a part of ANO election and support, not as a feature of a grant. After all, everyone is free to apply for a grant, not just ANOs and Guides. This does not enter into the question about supporting this grant, but an observation.
 
Secured
#27
Developer grants should come with a defined focus of the developer(s)'s interests and focus. Understanding the nature of on boarding to a project gives me a great deal of sympathy to how hard defining work is in these circumstances, but it is important to provide what one can.

Again, this observation does not enter to much into my calculus in supporting this grant, but it does to some small degree. In this case we do have some examples of documentation and education efforts already, but like any pig I'd like a bigger serving please.
 
Status
Not open for further replies.