[Looking for Feedback] Funding for iCKB, dCKB Rescuer and more

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.

All this comes at a cost in time and resources that I’m not able to afford without economical support. For example both iCKB and dCKB Rescuer are open-source public utilities that need maintenance and work.

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:

While the project code right now is stable and it could be launched on mainnet, there are some issues that need to be worked:

Also, 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)
  • Make sure all dCKB holders are aware of this change, so they can convert the dCKB back to CKB.

Future Projects

There are a couple ideas for public utility projects I could investigate on after the work on iCKB and dCKB Rescuer slow down:

  • An ISPO on top of iCKB, given the widespread appreciation of this model.
  • A bank to borrow CKB, given the raising cost of CKB.
  • Any public utility ideas that are worth investigating.

Reviewer

I’m asked by more and more persons to review public proposals. Doing an proper job requires hours of time just to understand how these proposals work. Even more to give proper feedback or ask the right questions.

Funding proposal for my work

My current proposal for funding my work in the ecosystem is the following.

Refunding

  • Re-funding for the iCKB audit (4k USD)
  • Re-funding for the iCKB Scripts deployment (117312.00118266 CKB)

Funding of future work

  • iCKB development, maintenance & user/dev support for one year.
  • dCKB Rescuer re-development, maintenance & user support for one year.
  • Future projects investigations.
  • Reviewer of public proposals.

I’d kindly ask to be funded the equivalent of 2k USD for each month of the next year, for a total of 2k USD * 12 months = 24k USD.

Side Note: 25 USD / hour is a low rate for a qualified CKB developer, I took in accout that this funding is for projects that are public utilities of my creation. Let’s say I was asked by an external team to help (either building or auditing a project), my hourly rate would be 50 USD / hour.

In exchange for this economical support I guarantee 80 monthly hours, no more, no less. To give an idea, this equal to roughly 20 hours each week or 4 hours each working day. These weekly/daily hours are more to give an idea as I may choose to use these hours in different time-slots, like:

  • One week on, one week off, 40 hours each working week.
  • One day on, one day off, 8 hours each working day.

This leaves me space for roughly other 80 monthly hours to spend how I prefer, possibly for helping other projects in the CKB Ecosystem. Feel free to reach out!! :hugs:

Total

This would bring a grand total of 28k USD & 117312.00118266 CKB for the refunds and upcoming year of work on Nervos L1 public utilities.

Feedback

As far as I can tell, Matt and the Nervos Nation people support this proposal. Also I’m aware that Jordan has a different proposal for funding my work.

Side Note: In these years Jordan personally invested a lot of time and energy, supporting iCKB in every way he could, so I also trust his view.

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

Love & Peace, Phroi

17 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!

3 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:

2 Likes

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

3 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.

5 Likes

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

5 Likes

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

4 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.
3 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.bit 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.

4 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