Funded [Factom, Inc.]-015 Protocol Development

Status
Not open for further replies.
During the current grant period, there were two major deliverables. Both of those are under way.

The grant which has recently ended was fully successful. All 6 of 6 grant deliverables in 009 have been accomplished.

This grant takes a similar strategy as the current grant. The primary objective is Maintenance, with a secondary objective being the Refactoring.

There are a handful of refactoring tasks which can provide benefits to the current codebase. Eventually, a parallel development effort will be started and a different codebase will be worked within to accumulate the new code changes.

These two parallel efforts (Maintenance and Refactoring) are covered under this grant, with urgent maintenance taking priority.



This grant asks for $98,300 per month over 3 months totaling $294,900 for the development and support portions. Assuming a FCT price of 8.50 $/FCT would give a grant amount of 34,694 FCT for the Factom, Inc. portion.

There is also oversight on this grant being provided by the Sponsors, there is 300 FCT each for a total of 900 FCT.

The grand total for this grant comes out to 35,594 FCT.




As required by document 107 that governs the Factom grant process, this is the thread for grant proposal [Factom, Inc.]-015 Protocol Development.

The review process starts on 2019-05-03, so please refrain from starting public review or submitting questions before that time. If you notice clear errors in the proposal you can contact the author of the grant proposal directly.

Edit 2019-05-09. changed from v 1.0 to 1.1 lowering total sponsor amount from 1800 to 900 FCT.
 

Attachments

Last edited:
Thank you for your grant submission. I'm asking everyone these initial questions:

1. What specific date will you begin work on your grant?
2. What specific date will you be done with work on your grant?
3. Do you commit to providing regular updates on your grant in the grant tracking forum?
4. Please link to past grants your group has taken part in, if any.
 
Obviously core work is important, but with these figures of $100k per month - people need to know it's going to the right place.

These 7-12 developers are obviously not working full-time for the community, therefore Inc. should not expect a full-time salary from the community - which is what you've asked for.

You clearly have significant revenue coming in to justify the projected valuations at Series B - can this not be used to cover the portion of time they dedicate to Inc. work?

I'm happy to support core dev - but the community can't continue to divert huge amounts towards your VC funded operation and it's shareholders.
 
I believe I asked about grant sponsors last round and still feel that three sponsors is unnecessary to provide sufficient oversight for the community. Other complex grants have done just fine with only one sponsor.

Can you provide me with the estimated average time each sponsor put into their role each month for the last grant round and what their primary duties were?
 
These are the objectives from 009:
009-objectives.png


I think items 1 and 6 were clearly achieved. Can you describe how these other ones were achieved or point me to relevant posts or documentation (e.g. Factom Inc blog post or Network Diagnostic API docs)? Thanks!
 
Personally, I think releasing 6.2.2 should be considered a deliverable from 009 under items 2 and 3.
So do I. 6.2.2 should have been out already but delays happen, especially with software like factomd so I'm choosing to look ahead. But you can only accept delays for so long thus I want a specific yes/no for this grant round because my vote will be very, very different next round if we don't see meaningful progress in that regard.
 
Last edited:
We have had discussions in the previous rounds about the budgets and underlying costs for the grants from Factom. Inc.

One of the problems was that this was found to not be transparent enough. Factom, Inc. had problems in disclosure, especially on the level of employees. As said, there was discussion, but more or less left at that.

Firstly, I want to state that I’m a big proponent of core development for the Factom protocol and will support all of the grants put forward by the community. Second, I know very, very well that building software is hard and planning for complex software is even harder.

Having said that, I do want to have another discussion of the budget and underlying costs for this grant request.

I see that the amounts requested are growing at a rather high rate: from $170,400 ($56.800 per month) to $220.200 ($73,400 per month) to $294,000 ($98,300 per month), almost doubling in months.

Seeing that this round is again oversubscribed, that means that not all proposed projects will be awarded. Projects that in most cases bring new functionalities, partners and/or clients to the Factom protocol, versus the Maintenance and Refactoring of this particular grant.

In that light I do have to ask for more transparency in how this budget is build up, so I and the community get more insight and can make better informed decisions.
 
These are the objectives from 009:
View attachment 1436

I think items 1 and 6 were clearly achieved. Can you describe how these other ones were achieved or point me to relevant posts or documentation (e.g. Factom Inc blog post or Network Diagnostic API docs)? Thanks!
FWIW, I believe that the 3rd point from above has also been achieved. Factom Inc demonstrated during the Sponsor meetings a big decrease in the time to clear the holding queue, which was backed by rigorous testing and metrics collection, even if this was done in a simulated environment. A decrease in the time to clear the process list directly correlates to an increase in the capacity of the network.

I also deem the 2nd point to be at least (partially) achieved, due to the fixes that have been done following the last network pause. This one is indeed very difficult to measure objectively, but to me there is little doubt that the robustness of the consensus mechanism has been improved during the last months.

Pertaining to the 4th point, I am not aware of an API for network diagnostics; however, Factom Inc have disclosed that they implemented a data collection mechanism for very detailed monitoring of network traffic & events.

These are just my 2c, gathered from my attending some of the Sponsor meetings for the core development grant in the last months. I am sure Brian or someone else from Factom Inc can provide a more detailed overview and pointers to the relevant resources.
 
Last edited:
Thank you for your grant submission. I'm asking everyone these initial questions:

1. What specific date will you begin work on your grant?
2. What specific date will you be done with work on your grant?
3. Do you commit to providing regular updates on your grant in the grant tracking forum?
4. Please link to past grants your group has taken part in, if any.

Thank you for the questions.

1. This is a grant that covers period of time rather than a specific outcome. The grant work will start June 9, 2019. (The 9th is a Sunday, so June 10th is more likely, but if there are emergencies on the 9th, then they certainly would be attended to.)
2. The grant runs until September 9, 2019.
3. We have been providing reports and will continue to provide reports. We target finishing the reports on the first Friday of the first full week of the month. The next one is pending and expected at the end of this week. Here is the latest report. https://factomize.com/forums/threads/march-2019-update-report.1817/
4. Here are the ones that have factomize threads:
https://factomize.com/forums/threads/factom-inc-004-oracle-master.1040/
https://factomize.com/forums/threads/factom-inc-005-anchor-master.1043/
https://factomize.com/forums/threads/factom-inc-006-protocol-development.1044/
https://factomize.com/forums/threads/factom-grant-factom-inc-007-oracle-master-continuation.1566/
https://factomize.com/forums/threads/factom-grant-factom-inc-008-anchor-master-continuation.1568/
https://factomize.com/forums/thread...c-009-protocol-development-continuation.1564/
https://factomize.com/forums/threads/factom-grant-factom-inc-010-oracle-master.1565/
https://factomize.com/forums/threads/factom-grant-factom-inc-011-anchor-master.1569/
https://factomize.com/forums/threads/factom-grant-factom-inc-012-protocol-development.1563/
 
Obviously core work is important, but with these figures of $100k per month - people need to know it's going to the right place.

These 7-12 developers are obviously not working full-time for the community, therefore Inc. should not expect a full-time salary from the community - which is what you've asked for.

You clearly have significant revenue coming in to justify the projected valuations at Series B - can this not be used to cover the portion of time they dedicate to Inc. work?

I'm happy to support core dev - but the community can't continue to divert huge amounts towards your VC funded operation and it's shareholders.
Thank you for the feedback. Allow me to address some of these concerns.

These 7-12 developers
The grant does not specify 7-12 developers, rather 7-12 people. QA, Devops, and project management are an important part of the development process.

obviously not working
What metric are you using for this? It is not obvious to me. We just posted a photo showing a subset of our company, with 30 employees at our 5 year anniversary party. Are you considering the lack of involvement on discord as not working?

full-time salary
Why do you think that businesses are composed exclusively of salaries? Factom provides health benefits, etc to it's employees, as is customary in the US. It also provides office space for employees to work in, as is customary in the US. These are all things that are expensive and are above and beyond any base salaries that you seem to be referring to.
https://www.builtinaustin.com/salaries/dev-engineer/senior-software-engineer/austin Note the $155,914/year number for a senior developer.
All things being equal, the figure that is being asked for here is probably below what a similarly qualified team would ask for in a mature environment.


can this not be used to cover the portion of time they dedicate to Inc. work
Are you asking for charity? Sadly, we are not in the charity business. I hope someday to be in the charity/philanthropy business, but we need to provide significant value to the world before we are in the position to do that.

For M1 and M2, the costs of building the protocol far exceeded the revenue that was recieved. Now that there are grants to fund development, it makes sense that the protocol shouldn't be developed as a charity any more. Do you agree?


your VC funded operation and it's shareholders.
I'm not sure what aspect of Factom, inc you are finding contention with, but let me explain how I see it fitting in with the entire ecosystem.

The protocol is useful today, but is very far from providing the full potential to the world that we think it can.

For the protocol to really become valuable, it needs to be used by lots of people. The best way to do that is to bring large businesses on to the protocol so that their critical business systems rely on the protocol existing and working. Businesses aren't going to just start writing straight to the protocol, they are going to need a lot of handholding. Factom, Inc is one of those hand-holders, as others have started doing around the ecosystem.

It seems like you are lamenting the need for businesses to be utilizing the protocol. To that point, I ask, what will make the protocol valuable if it is not being used by industries around the world? Is it that some of the people who funded the company along it's journey to this point are also invested in other businesses? Can you clarify your concerns @Colin Campbell ?
 
I am also concern with the amount requested growing each round and if we really need 3 sponsers.
Can this grant be broken out any further so community knows exactly how much to expect every 3 months?

For example, #1 and #6 (Protocol support) in one grant, #4 in one grant, ...etc.
1557080286137.png


This current round only has two goals/objective listed

1557080555635.png
 
Attachment in post #1 contains some details
I think it is questionable that you can claim success on 2 and 3 as none of that code has landed on mainnet. Objective 2 was released in 6.1.1, but we aborted 6.1.1. The same is true of objective 3. We have not had a successful non-grant release since before 009 commenced in December 2018.

This is the first I have heard of the diagnostics API, as it has not made it into the documentation. Even so, git has that commit as 8 months old, which is outside the scope of grant 009. Also, again, it is not live on mainnet.
 
Last edited:
Thank you for the feedback. Allow me to address some of these concerns.
What metric are you using for this? It is not obvious to me. We just posted a photo showing a subset of our company, with 30 employees at our 5 year anniversary party.


<snip image>


Are you considering the lack of involvement on discord as not working?
@Brian Deery You cut up a statement and leave out vital info in your quote.

The part you left out was "full-time for the community", so the quote was "are obviously not working full-time for the community". That puts the remark and then your reaction in a whole different perspective. Also what does your anniversary (congrats) and the size of the team in the picture have to do with that remark?

And yes I left out the picture in this quote as it was taking up quite some real estate so now you can blame me of doing the same ;)
 
Last edited:
Could you please inform me about your sponsors? They listen in every 2 weeks in your sessions and provide feedback if I am not mistaken right?

  • Could you please highlight why you choose the specific sponsors?
  • What value do they bring for you as receiver of a grant and the community according to you?
  • Do you believe that besides one sponsor with technical acumen given the size of the project it would make sense to include at least 2 sponsors with technical acumen?
  • Could you give insight in how the size of the remuneration for sponsors came to be?
  • Has the non release of 6.2.2 been brought up by the sponsors?
 
Sure I’ll elaborate the concern Brian. I’m happy to be corrected.

It feels like the 7-12 people have the primary role of business development for Inc, and secondary for supporting core dev.

Therefore, covering 100% of their remuneration from the community seems unfair at first glance.

However you have explained that by helping pay for your office space and that by supporting Incs business ventures, we will ultimately benefit the protocol. Something which could be argued for many ANOs.

The question is, where does it stop? $56k/m - $78k/m - and now $94k/m.
 
Last edited:
Sure I’ll elaborate the concern Brian. I’m happy to be corrected.

It feels like the 7-12 people have the primary role of business development for Inc, and secondary for supporting core dev.

Therefore, covering 100% of their remuneration from the community seems unfair at first glance.

However you have explained that by helping pay for your office space and that by supporting Incs business ventures, we will ultimately benefit the protocol. Something which could be argued for many ANOs.

The question is, where does it stop? $56k/m - $78k/m - and now $94k/m.
The 7 to 12 people are full time equivalents working on the Factom Protocol for core development. We have other sales, marketing, and developers that work on our business development, and these are not included in this grant.

Overhead for employees is generally charged to what they are doing. Because they would not be able to do what they are doing if they don't get benefits, don't have computers, don't have a desk, etc. There is no padding of the grant to cover charges that are not required for the development under the grant.

If I look at our development budget for the Factom protocol and I compare it to what is being poured into our competition and their infrastructure, we could increase our $94k/m by a factor of 10 or 20 and be far behind. The community must realize that being resource starved has been a perpetual problem for the protocol, and we need to address that as we gain resources to do so. This includes grants to Factom Inc. and to others that can field very good and very talented developers.
 
Last question:

Matt York is also listed in the FAT grant, which I only applaud btw :)
https://factomize.com/forums/threads/dbgrow-factom-001-fat-smart-contracts.1960/ Factom Inc is asking for some FCT there, which is understandable.

But as Matt also is a core dev for Factom from Factom Inc does this have impact on the 7-11 people you mention? In both scenarios for the FAT grant (awarded/unawarded).
Matt York has been planning to support the FAT grant and their smart contracts on his own time (nights and weekends). However, it could be a conflict of interest if we do not place this contribution out on the table as it were. So we have negotiated some small amount of effort by Matt to support FAT that will not impact his 40 hour a week requirement to be full time.

On the other hand, if we look at obligations that take workers away from work yet still account them as full time, I think the European Vacation schedule in general would make it hard to assert anyone taking those vacations is working full time by American vaction standards (the #@%@! American misers) :D
 
Last edited:
Could you please inform me about your sponsors? They listen in every 2 weeks in your sessions and provide feedback if I am not mistaken right?

  • Could you please highlight why you choose the specific sponsors?
  • What value do they bring for you as receiver of a grant and the community according to you?
  • Do you believe that besides one sponsor with technical acumen given the size of the project it would make sense to include at least 2 sponsors with technical acumen?
  • Could you give insight in how the size of the remuneration for sponsors came to be?
  • Has the non release of 6.2.2 been brought up by the sponsors?
The sponsors we have do a great job, had a good reputation in the community, were willing to perform the role. The sponsors have changed a bit along the way, but we are always looking for good community reputation and independence, and interest in the development of the protocol.

I believe having sponsors allows us to talk candidly with them, have them represent the community in those conversations, and serve as an early warning with the community if we are not performing to our grant. We have been publishing recordings of every other sponsor meeting, providing the community some insight into our processes that they would not otherwise get.

The mix of sponsors and their backgrounds certainly need technical insight, but I am not sure we need more technical than business in the sponsor role. A grant has both business and technical ramifications, so we need both. I don't necessarily think we need to increase the sponsors at this point.

The remuneration was a guess over the value of the Factoid and the hours and interruption to schedules required for the role. We intend to adjust this as the economy and market changes.

The stall around 6.2.2 was certainly was discussed in detail, and our plan to address the issues we identified and the additional testing we are applying before the next release of Bond.
 
I am also concern with the amount requested growing each round and if we really need 3 sponsers.
Can this grant be broken out any further so community knows exactly how much to expect every 3 months?

For example, #1 and #6 (Protocol support) in one grant, #4 in one grant, ...etc.
View attachment 1447

This current round only has two goals/objective listed

View attachment 1448
If at all possible, we would like to go into a place where the network is maintained, and we can spend the time to detail and attack what the Refactor Code Initial Development will be, a time frame for it, and actually dig in and get the work done. The number of bullets isn't necessarily to scale with the work being done.

And we plan to add resources and continue to grow our team and support the building of teams with other entities. We are looking to see how we can expand the interaction and communication between all developers, which will lend more detail to what it means to Refactor and simplify the current Factom Protocol implementation.

As I have said elsewhere, we are not over funded relative to the technology we are building and deploying. We are no where close to the "saturation point" where added resources do not speed up your schedule nor improve your quality. Factom aims to be the Data Integrity Layer for the world, and we will have in the future a world scale budget to develop and support the protocol, or we will fail. We have to be lean, and we have to be strategic, but we should expect the budget for development inside and outside Factom Inc. to increase with the value of the protocol.
 
The mix of sponsors and their backgrounds certainly need technical insight, but I am not sure we need more technical than business in the sponsor role. A grant has both business and technical ramifications, so we need both. I don't necessarily think we need to increase the sponsors at this point.
Do the business sponsors have insights into the man-hours / opex associated with the grants? Personally, I think we'd avoid these discussions every grant round if we had two sponsors; one technical and one business sponsor who signed an NDA and was provided a full breakdown of costs associated with the grant.

7 - 12 employees working on developing is very vague. Do we assume the figures were calculated from the higher range and should this roll over to next grant if less were used? Again, I think a sponsor with full insight into the business side would go along way to easing concerns.
 
Looks like this question got lost so am bumping it:

I believe I asked about grant sponsors last round and still feel that three sponsors is unnecessary to provide sufficient oversight for the community. Other complex grants have done just fine with only one sponsor.

Can you provide me with the estimated average time each sponsor put into their role each month for the last grant round and what their primary duties were?
 
This grant proposal discusses the refactoring that will ultimately lead to sharding, but there has been little open discussion about what form that refactor will take and how sharding will be designed and implemented. These are very big topics that impact us all, yet the community tends to be passive recipients of these design decisions, rather than active participants.

Do you agree that any significant change to the design of the protocol should be presented to the community as a FIP? Our current approach is for significant protocol changes to be designed and implemented by Factom Inc, sometimes in concert with external developers, but never via an open discussion. However, that process feels centralised. It is hard to feel ownership of the protocol when I cannot have any input into its design.

These are some of the benefits of putting development efforts through a proposal process:

1. Peer review by many developers and other interested parties is likely to improve any design specification.
2. The requirement of formalising a detailed design specification prior to development will focus the effort and is likely to reveal potential pitfalls earlier in the process.
3. The community takes ownership of the design of the protocol.
4. FIPs can help us to define an open development roadmap to which anyone may contribute.
 
Status
Not open for further replies.
Top