[V3 Looking for Feedback] Funding for iCKB & dCKB Rescuer (non-coding expenses)

Hello Nervos Community DAO folks, Phroi here :wave:

Let me reintroduce myself once again: I’m a developer and I like to spend my time working on projects that give meaning to my life and improve the life of users. Win-win situations.

For example, in the past I created dCKB Rescuer as an alternative front-end for dCKB withdrawals, after the original NexisDAO front-end abrupt shutdown. More recently I’m in launching iCKB, a protocol that aims to solve the illiquidity problem of the NervosDAO by tokenizing NervosDAO deposits into a liquid iCKB token.

More generally, I’m active in the CKB Ecosystem as contributor, reviewer and vulnerability & bug hunter.

In these years the Foundation supported my coding work and I have an agreement where I can ask for grants to cover hours spent on developing specific projects, like iCKB and dCKB Rescuer.

That said, there are a lot more expenses when running a project, costs in time and resources that I’m not able to afford without economical support.

iCKB

iCKB is a project in the launching phase that will benefit the CKB ecosystem as a whole. Currently available on testnet, shortly on mainnet.

In this past month I sustained the following expenses:

Non-coding time expenses are piling up as more and more persons interact with the project both as users and developers. Feel free to check 1, 2 and 3.

dCKB Rescuer

While dCKB Rescuer has feature parity with the NexisDAO, there are two issues:

To address both these issues I need to overhaul of dCKB Rescuer DApp. Shortly my targets are:

  • Adding Limit Orders to dCKB Rescuer (users can exchange between dCKB and CKB at a reasonable ratio)
  • Adding support for Omnilock with Metamask (that said dCKB V2 users still need to withdraw with a PWLock by contract, nothing I can do about that, later on converted to Omnilock by the DApp)

While the development hours are covered by the agreement with the Foundation, the user support is not. Also I’ll have to make sure all dCKB holders are aware of these new features, so they can convert the dCKB back to CKB.

Requested Funding

I’d kindly ask to be funded 664894 CKB, roughly 10k USD at current prices. (I’ll update this amount to be as close as possible to 10k USD until the final proposal freeze for voting.)

Once funded, I’ll set apart right away:

  • The equivalent of 4k USD for spent for the iCKB audit.
  • 117437.00119141 CKB spent for deploying the iCKB contracts.

Whatever remains, roughly half, I’ll use as credits for user/dev support and generally all non-coding expenses, if any, for iCKB & dCKB Rescuer.

Given my rate is 50 USD / hour, I’ll convert CKB to USD little by little only at actual work being done. The hours I’ll be able to provide will vary depending on the CKB price at the moment of conversions.

I’ll publicly document the work done, hours spent and CKB amounts used. This way the community can judge the goodness of their investment in my work and possibly fund future proposals in this direction.

Feedback

I’d kindly like to ask everyone to give their feedback and/or alternative funding solutions for the work expressed in this proposal.

Love & Peace, Phroi

19 Likes

I support the proposal with my both hands. Even the amount seems too small to me. Respect for the good work and we look forward to the next good project from you, Phroi!

4 Likes

Hey @d3fus7.bit, thank you for your vocal support, I’m honestly humbled. I can only hope to get the same kind of support in the final [DIS] proposal!! :rofl:

3 Likes

The work you have done with iCKB is enormous. I fully support your proposal!

4 Likes

I sincerely thank @phroi for the outstanding contributions to the community. Your efforts and achievements have not gone unnoticed. In fact, the CKB I’d personally staked in NexisDAO was redeemed using the dCKB Rescuer tool provided by phroi, and I’m eagerly anticipating the official launch of iCKB.

Indeed, we should offer our full support to builders like @phroi , helping to address their concerns so that this kind of development can continue sustainably and thrive.

6 Likes

Thank you for your excellent work in the past. You have my full support.

6 Likes

Just take the money Phroi, there was no need for such a long explanation :stuck_out_tongue_winking_eye:

5 Likes

I’ve supported iCKB and dCKB since their inception, and working with Phroi has given me strong confidence in his abilities as a developer. I believe Phroi is an honest and diligent worker, and his work is a undeniable benefit to our community.

With all of that said, I believe it is important that the DAO remain neutral when evaluating any proposal. Every proposal should be scrutinized regardless on who proposed it. For this reason, I have issues with this proposal as it is written.

For the refunding portion of the proposal, I hold no issue. These are reasonable and necessary costs for the project that should be approved immediately.

For the funding of future work portion of the proposal, I have several issues with both the structure and open-ended nature of how it is written.

iCKB development, maintenance & user/dev support for one year.
dCKB Rescuer re-development, maintenance & user support for one year.

This is too ambiguous for the development portions. There need to be clearly defined objectives. In fairness to Phroi, our previous discussions did include more definition which has not been included here. However, the scope of work does not match the proposed timeline.

Maintenance is necessary for a project to remain viable long term. But again, there is no definition here. It may not be possible to define a scope 12 months in advance, in which case I don’t think the proposal should attempt to.

User and developer support is beneficial to our ecosystem. But again, there is no way to determine the scope for the next 12 months. It could be far more than expected or far less.

Future projects investigations.

I believe Phroi’s meticulous planning of projects yields good results, but I must remain objective. If someone was to post a proposal suggesting we should pay them to come up with a project idea to build, I would vote against it. The cost of conceiving a viable project idea is typically unfunded, then later built into the proposal to fund the development of it.

Reviewer of public proposals.

Our public proposals would highly benefit from more eyes, and Phroi’s knowledge and willingness is a benefit. However, the open-ended nature for 12 months is again problematic because we can’t anticipate the scope.

25 USD / hour

This is a good deal for the community, but a poor deal for Phroi. I don’t believe he should be discounting his services in this manner, but this is more of a personal note since I need to remain objective from the viewpoint of the community.

80 monthly hours, no more, no less.

The problem I have with this is it is a fixed time commitment without focus on the necessity of the work being done. For example, say essential development is completed, there is no maintenance needed, and user support is very low, then means Phroi will need to shift efforts to review and contribution of other projects in order to fulfil his contractual obligation, regardless on if that is the best use of time.

12 months

As we know, the value of CKB can fluctuate heavily. We cannot anticipate the price of CKB a month from now, let alone a year from now. DAO proposals must be priced in a fixed CKB amount. At the same time, DAO proposals over $10k USD must be done with milestones. This is a time based proposal, so time based milestones is all that makes sense. This combination is highly problematic for a 12 month proposal.

If the price of CKB goes up, Phroi buys a Lamborghini. If the price of CKB goes down, Phroi and his family can’t pay their rent and starve. The easy solution is to price in USD, but we can’t do that with the DAO. (We already tried to change that rule twice, and failed twice.) It must be priced in a fixed CKB amount.

To summarize thus far:

  • I have no issues with the refunding portion of the proposal.
  • I have issue with the open-ended areas of the proposal because they could easily lead to an unbalance in the work or compensation provided over the long duration.
  • I have issue with funding open-ended project investigation.
  • I have personal issue with Phroi working at a substandard rate.
  • I have issue with the focus on contractual obligation rather than actual necessity.
  • I have issue with the 12 month duration because it will not work well with the way the DAO rules are set today.

Additionally, I find it odd that the final leg of development costs are being pushed to the DAO when the Foundation has been funding it up to this point. I don’t see why this has to be convoluted with the other costs.

I have a few suggestions which I believe would be in the better interest of the community:

  1. The Foundation continue to fund the project, as it has been already, through to the final release to mainnet. This eliminates the need from the DAO for the development portion.
  2. Reduce the maintenance and user support obligation to 200 hours at $50/hour. (This is $10k which can be paid immediately without milestones.) Include a clause that unused time can be rolled over in case it was not needed to avoid doing less important work to fulfil contractual obligations. Phroi and the community will reevaluate the actual need and adjust if another proposal is needed in the future.
  3. Invest more time on investigating grant funded projects outside of iCKB. I’m aware of several things outside the scope of this discussion which would be beneficial to our ecosystem and could use Phroi’s help. I see that as a far better path forward for the ecosystem and for Phroi, rather than a 12 months obligation at a reduced rate.
4 Likes

Thanks Jordan, this all seems like the responsible way to do things.

I don’t think Phroi will have any problems getting funding from the DAO, but you’re right, we need to maintain a standard for the proposals.

Just a question about the CKB vs USD thing, do you think there’s an option for the person putting forward the proposal to opt-in to this without it being an official way of doing things?

So if Phroi chooses to get paid in USD, then the complete amount of the proposal is immediately exchaged for USDT/USDC, but still held by the DAO and paid out in installments.

3 Likes

Thank you @Alejandro.bit, @yixiu.ckbfans.bit, @janx and @Yeti for your vocal support. In a way you represent all the different groups of people I encountered on my way to bring iCKB to fruition :sparkles:

Thank you a lot @jm9k for your constructive criticism!! With this proposal I wanted to elicit this kind of comments: exploring together the possibilities for funding this kind of work on CKB, so that also other projects/devs in the future may find this thread informative.

To be honest, with our current super-low-key Digital Nomad lifestyle a Lambo would bring more troubles than benefits :rofl:

I don’t mind some exposition to CKB price movements, say 10% of the total, but definitely not 100% as, strangely enough, we still need to be able to eat at least two times a day :man_shrugging::rofl::rofl:

Feels like Community DAO could use some pricing stabilization based on Real World CKB purchase power. Otherwise Community DAO proposals may risk to lean more on the speculative side, rather than simple projects funding :thinking:

You are right, my bad.

I honestly did not take into account the risks associated with CKB price fluctuations as in my mind the payout was on the USD value. Wrong assumption, thanks for pointing it out!! :pray:

I now realize that the current proposal may easily become untenable: say CKB price halves, I may not able to fulfill my contractual obligations. Those 25 USD / Hour could easily become less than 12 USD / Hour, not sustainable. After all we still need to be able to eat, afford housing and medical bills (:man_facepalming:)

I’ll comment point by point to make sure I understand correctly. Please, correct me if I mis-represent your idea!!

Basic idea: Foundation covers development, Community DAO the rest.

Not sure if this offer is on the table.

As you know, my original agreement with the Foundation was a one-off that later on was extended way over its initial scope due the iCKB development duration. So we need to re-agree on the details. As usual I position myself not as a Foundation contractor, but as an independent developer.

@matt_ckb would the Foundation be willing to sponsor development costs?

Roughly:

If the Foundation agrees to cover development costs, then this sounds reasonable.

Then again, removing the already sunken costs (4k USD + 117k CKB), it’s less than 100 hours remaining, so it’s more of a super small scale social funding experiment. Then again, if successful it could be renewed and/or used as a reference in other projects post-launch funding.

By the way, in your opinion is it reasonable to include also time spent for public designs reviews?

Adding it would allow me to spend more mental energy on these, hopefully benefitting the whole community.

In your opinion, where the skills developed in these years could be most effectively put at good use?

Love & Peace, Phroi

2 Likes

@Yeti this is a smart idea, but it could lead to issues down the line.

Your idea assumes that accounting is still done in CKB, so nothing should really change from the Community DAO accounting perspective, but this actually does not hold true for corner cases.

Let’s assume the following scenario happens:

  1. Project asks for 30k USDC, so 3 milestones or more.
  2. Community DAO approve funding for project.
  3. Community DAO (informally) exchanges the approved CKB for USDC.
  4. Project is not able to progress, so its development is abandoned.

There are a couple issues:

  • The conversion rate expressed in the proposal is never gonna be the same as the one in step 3 for two reasons: voting takes a relatively long time and CKB price moves fast, see recent Upbit listing.
  • At step 4 Community DAO now has both CKB and USDC funds, differently from the initial assumption that nothing would change in the Community DAO accounting.

An Alternative Funding System

While replying to @jm9k, I realized that actually there is an easy way to offset CKB volatility without messing up the Community DAO funding logic.

Funding Expenditure

Project expresses intended expenditure as a single asset or as a mix of multiple assets.

For example, a project baked by a Chinese team for a bridge between Ethereum and Nervos L1 could express its funding expenditure as a mix of CNY, CKB and ETH.

For example, just throwing some numbers around it could be:

  • 700k CNY (~ 100k USD)
  • 120k CKB
  • 2 ETH

CKB Allocation Request

Project requires the current value in CKB of the Funding Expenditure multiplied by a certain safe-multiplier SM, which up to the project, based on expected timelines and perceived volatility risks.

The idea is that, even if CKB price plummets, the project has the necessary funding for reaching its goal.

For example:

  • Value(700k CNY + 120k CKB + 2 ETH) = 7.2M CKB
  • SM = 0.01465/0.00677 = 2.2 (Today CKB price divided by the three months low)
  • AllocationRequest = 2.2 * 7.2M CKB = 16M CKB

Voting

As usual voting happens on the CKB Allocation Request, but with the added clause that the extracted value must not be in excess of Funding Expenditure.

A successful vote sets apart Allocation Request CKB from Community DAO fund to be used by the project, so it’s a form of funding guarantee.

Milestones

Milestones are defined with goals to reach and request of assets. Payments happen always and only in CKB.

For example:

  • Milestone: Project deploys on testnet.
  • Requested assets: 350k CNY (~50k USD)
  • Payments could happen in blocks of 100k CKB
  • Value(350k CNY) = 3380499 CKB
  • Community DAO sends 3.4M CKB to the project.
  • Project extracts 350k CNY of value.
  • Project documents final conversion rate incurred (inclusive of fees, possibly capped at 6%), involved amounts and excess of CKB (received but not spent).
  • Committee double check conversion rates: if the conversion rates are reasonable, no proof is necessary. Then again this is a trust based system, so if any member of the Community DAO committee feels this trust has been violated by a project, the committee has the authority to challenge conversion rates and hold further payments until an agreement is reached.

Project Completion

At project completion any excess of CKB balance held by the project is refunded back to the Community DAO.

Remaining CKB Allocation Request is released back to Community DAO, now free to be requested by other projects.

Considerations

All in all I don’t see too many drawbacks in this additional funding system. It involves slightly more accounting by both parties, but not so much that makes it impractical.

I don’t believe a voting is required for these rules as:

  • It offer an additional funding system, it is not meant to replace the previous one and the projects can opt-in to it.
  • Community DAO could implement this with an informal agreement, as suggested previously by @Yeti.
  • Allocation Requests are always expressed in CKB and they cannot be exceeded by the project without going thru an additional Community DAO funding round.

What are your thoughts on this?

3 Likes

These are reasonable solutions, but the rules of the DAO can be difficult to work around. We should ask JackyLHH to be sure.

@JackyLHH Would it be possible to implement these types of procedures without a DAO rule change?

2 Likes

I consider the refunding costs for the audit and deployment to be separate from what I was suggesting. (The 200-hour suggestion is in addition to the refund.) I don’t think anyone will disagree with the refund, and there is no reason you could not launch a separate [DIS] proposal for this right now to get it taken care of asap.

Yes, I believe it is reasonable to include public design reviews as part of the 200 hours.

At this stage, I believe your skills are most beneficial for:

  • Infrastructure-related projects (like iCKB).
  • Public good projects (similar to above but not infrastructure and grant-funded).
  • Contract-based development or advisement to ecosystem teams or third-party developers integrating Nervos.
  • General ecosystem contribution to improve the developer experience.
  • Auditing services for existing standards and new developments.
3 Likes

yes from my perspective the foundation covering remaining development with grants while the community fund dao covers deployment and audit costs is reasonable.

6 Likes

Hey Phroi, your brain is on another level man :grin: I know all that must make complete sense to you, but I was reading it and thinking WTF haha

I see this from a more simple viewpoint as i think the conversion of CKB to USD, whether it is done completely at the time the proposal is approved, or if it is done as each milestone is passed carries a risk to the DAO, but it can also work in the DAOs favour as well, so I look at it as a ‘you win some, you lose some’ scenario.

In my opinion, the most important part is that the project asking for the funding gets exactly what they ask for in $USD, so we just need to deal with the consequences if the price of CKB goes up/down during the payment times.

And in the case you mentioned about a project not going forward, then the USD could just be swapped back for CKB, it may be for a loss, but could just as easily be for a profit as well.

2 Likes

I gave some thought about this and it feel easier to ask for a first grant of 10k USD with both re-reimbursement and future non-dev funding. Once that funding is depleted and results are satisfactory for the community, I can always ask for a second grant.

Thank you a lot for your support :pray:

Then my updated funding strategy is:

  • Use Foundation’s grants for the remaining development.
  • Use Community DAO proposal for non-development work, using 10k USD sized grants at 50 USD / Hour, as suggested by Jordan.

Shortly will follow an updated proposal.

Agreed!! :raised_hands:

Another alternative would be to convert little by little CKB to USDC as necessary and opportune, so keeping two balances all the time. That said, this would require governance process voting.

I would be interested too in hearing @JackyLHH official reply on the matter. Then again I suspect it would likely need to go through the governance process.

Love & Peace, Phroi

2 Likes

Hi @jm9k @phroi , it needs to go through the governance process.

Previously there were 2 proposals to change the meta-rule, reducing the impact of price fluctuations and allowing USD amounts for DAO Payouts. Unfortunately, both proposals failed.

Since it is too difficult to change the meta-rules of DAO, I agree with Matt that you can choose to apply grants from the Foundation or the CKB Eco Fund for the remaining development, and apply funds from DAO to cover deployment and audit costs. Thanks.

2 Likes

Gotcha, good to know!! I’ll update the proposal and ask for more feedback!

Love & Peace, Phroi

2 Likes

@JackyLHH, @matt_ckb, @jm9k, @Yeti, @janx, @yixiu.ckbfans.bit, @Alejandro.bit & @d3fus7.bit I updated the proposal to V2 as per feedback. I’d kindly ask you to review it once again :pray:

Love & Peace, Phroi

6 Likes

Hey Phroi,

5K USD is only 100 hours of work at $50 an hour. In my opinion, you should scrap the:

• Reviewer of public proposals
• Future projects investigations 

for this proposal and just use this leftover amount for:

• iCKB user & dev support
• dCKB Rescuer user & dev support

Both of those things with iCKb and dCKB you will need to do anyway and will probably easily use up those hours and I think you will have enough on your hands with iCKB for the foreseeable future, so your work for other projects can come later and you can submit another proposal for that stuff at the time.

Just my opinion though mate, I will support you whatever you decide to go with.

3 Likes