Questions and concerns about DFINITY Foundation working "beyond core protocol"

That’s fine if they want to do that. But then they should just communicate that and stop wasting peoples time with the on-chain governance/NNS stuff. Like what was the point of putting those 25 roadmap items up for NNS vote when the protocol just launched? That obviously sends a signal to the community that the foundation wants the NNS in control of the roadmap. But then all their actions since then seem to indicate that isn’t the case and the foundation is just going to do whatever it decides it wants to do. So again, if they want to do that that’s fine, that’s how most other protocol foundations operate. But lets remember they are the ones who made a big deal about on-chain governance and how differentiated they are because of the NNS, and they are the ones who started out by putting roadmap items up for NNS vote. So if things have changed since then, the least the foundation could do is communicate that to the community.


I think that’s fair criticism with respect to putting up the roadmap on the NNS.

That said, it seems clear Dfinity does want to solicit feedback and involve the community. It wants people to feel acknowledged and to learn and grow and improve. They know they will make mistakes and want the feedback. But again, ultimately, management will make the decisions they believe are best for the future of the IC.

It is not fair to paint the picture in black and white and say it’s either all or nothing, ie it’s either the community decides what Dfinity works on or Dfinity management decides what they work on.

The reality is that at the end of the day Dfinity management will decide but they deeply care about incorporating everyone’s views. But of course, only to the extent they agree.

In theory it is possible for Dfinity to be so out of touch they don’t listen to the community at all and their views diverge entirely from the community in spite of best efforts to listen. I really do not think that is the case and it would not be fair to say so. All you can hope for is that your suggestions are internalized, considered, and given serious thought. That is a sign of respect and based on this post from Diego it is exactly the message that has been sent.


For the time being it seems that only DFINITY has resource to develop, for example almost all the ICP tokens of Foundation are held by DFINITY, so the decentralized road should be lead by DFINITY. I was wondering if DFINITY has any plan to drive the Internet computer to be decentralized including distribute ICP tokens to other teams in the future?

I believe in the short and medium time, we can only rely on DFINITY rather than other teams, so DFINITY need to do the core R&D things is not what they have and need to do.


Is it safe to say that the foundation takes notice of community driven proposals, but reserves the full right to unilaterally act for or against the implementation of those proposals?

Let’s take for example the proposal to reset governance rewards weights to 1. The first time that proposal was sent to the NNS by @skilesare it was rejected by DFINITY and the community.

Had the community passed that proposal, DFINITY still could have rejected implementing it, as the act of updating the code and submitting a change to the local replica technically still is an “off-chain action”.

As it’s own entity, it makes sense that DFINITY reserves the right to ignore any action suggested by the community or the NNS.

Therefore, it would be beneficial for the community to be given the ability to submit changes to the local replica topic that would actually directly update various parts of the IC.

However, to this date I don’t believe that the community has the permissions or ability to update the various canister replica code (NNS, II, ledger, core IC) .

Until the community receives the ability to propose direct code changes to the replica, the IC (not just DFINITY) remains under centralized control.


I think these are two entirely different things that should not be mistaken for each other:

  1. DFINITY asks NNS to vote on things it wants to work on.
  2. A non-DFINITY organization (or person) asks NNS to vote on things it wants DFINITY to work on.

If we think NNS is a form of governance, is it democratic or totalitarian? Should it have overarching power to decide what/how a person or organization operates?

@harrison Do you want anyone other than you to submit a NNS proposal to decide what you work on?

Most likely you don’t. And yet, you think DFINITY given its unique position in this ecosystem should be subject to this commandment. I’d like to hear your reasons. Thanks!


They certainly have communicated on the progress (and obstacles along the way) in this thread: Direct Integration with Bitcoin. I think they are earnest and believable.


I don’t disagree with your point, but I do think DFINITY may have contributed to this. For example, here is a statement from Jan when I asked how the foundation plans to handle community proposals:

“… mandate to work on a topic…” is pretty strong language. It makes no promises of when that proposal will be implemented, but it does tell the community that directing DFINITY’s work through motion proposals is acceptable.


I really do support Dfinity taking some resources to build the application layer while the community is still growing and it is not big enough. Right now, there are just a few (all in early stage) products: SNS, Identity,Token Standard,etc. They serve as kickstarters for new projects. If someone thinks SNS does not fit, great, create your own DAO solution. This is very helpful to the ecosystem.


Ah that makes sense. Yes, this is a technical requirement for decentralization in short term (I admit I am not an expert on why it is a requirement since I am not in the weeds here), and my understanding is that they intend to remove this long term.

To be honest, I have heard this brought up few times and the fact that Jan and I did NOT list this in our top 3 community concerns shows it was not top of mind for me, so I have definitely learned my lesson.

Thank you. This is certainly a process.


Fwiw folks, my intent is to mostly stick to the rule of thumb of “asking clarifying questions” whenever I do not agree or understand something. The goal of this thread is for us to understand (not to change minds).

So please know any questions I ask are with that intent (they are not pseudo-clever socratic devices for pointing holes… they are to clarify what I do not understand).


That is a very reasonable point. I will bring it up internally and also have mentioned it in the more relevant thread @samuelburri has on July 2022 Roadmap thread: Update on the IC Roadmap: July 2022 Summary - #3 by jzxchiang


To clarify your intent, I know the R&D team posts frequent updates on the BTC integration (usually every other week or so) on the progress here: Direct Integration with Bitcoin, but it seems this does not address your intent.

  • Can I assume you are looking for something more real time than weekly updates?
  • Is weekly updates ok, but the main problem is that it is buried in a dev thread?
  • both?
  1. To some degree yes and no. A common pattern in software is that there is a point where adding more engineers to a project usually slows things down. The more impacftul thing is less more engineers, but more time & focus per engineer. An example may be how 2 months ago, DFINITY made it clear that BTC and SNS projects tae priority so that means all other requests or asks NOT related to these two were de-prioritized among the engineers. As cross-functional projects, these prjects have a core of engineers working on it full time and a another ring of engineers who support them (for example, if the BTC integration engineers need help from Crypto or Consensus team or NNS Dapp team, their requests now take highest priority). I would say that more focus/priority has sped up progress more than adding more engineers.

Does that make sense?

What would this constraint be?


Dumb question @skilesare (to make sure I understand your point)… it sounds like in your observation, DFINITY is the “big, slow and high quality” player in the ecosystem that discourages the more nimble, agile startup-y players.

a. Did I understand your intent right?
b. Do you think startup players see no room for “agile and fast” players in the ecosystem when DFINITY undertakes a project?

More simply:

  • I have heard similar as folks* did here:
  • I do not know
  • I have escalated to Jan to see if I can get clarity on what he meant
1 Like

I agree 100%. Clearly, we are all iterating and learning. I can understand why some folks may think “you are learning or iterating too slowly”, so accelerating the learning is (hopefully) something we are also doing.

1 Like

To dig in a bit…and I’ll answer the questions directly at the end…I think that there is a hidden ‘feeling’ that DFINITY moves slowly because there is so much on the line(like NASA)…have to dot every T and dot every I. If you guys release trash it hits the ICP token much harder than if icOpossums launches a trash contract(apologies it icOpossums if that is a real thing). We all kind of implicitly know this, so we know what you guys release is going to have the eyeballs + quality to do really well. Everyone else out here is (relatively) scraping it out on fumes with a few getting a bit of VC cash to go further. The community has to break things and release half measures to survive. When choosing amongst a sea of future universes, why would you pick the one with a T-Rex waiting in it? Even if it isn’t hungry, no one is going to be paying attention to you because “look at that T-Rex!”.

  1. Yes. I think you got it.*
  2. It isn’t so much a “room” as it is what is the best use of my time. When we have 1,000,000 IC devs all competing for the same spaces this distinction will go away and people will choose to compete because they know they can run faster than DFINITY, but right now it is more profitable and less risky to run in a different direction altogether to the blue ocean.

*I’ll qualify slow, because I think that is unfair to the DFINITY team. You guys have pulled off quite a bit and I’d qualify it as deliberate and through over “slow.” I also think that for some “big” things we 100% want this. In other areas, we want/need a thousand experiments.

For me, these break down along “known knowns” and “known unknowns” fault lines. BTC integration is a known, known. No need to do it 100 different ways, we all know what we want, and we want to do it right. Governance? No one knows how that is going to go. From the stories I’ve heard, even Dom admits that the one thing he doesn’t know how it will turn out is the governance pieces. For those, I think we need 1,000 experiments and the power of the market/organic evolution to help us find the best solution.


Hi @harrison, I think i get most of what you say, but I have a few clarifying (dumb) questions:

  1. How much would your comment change if the heart emoji were removed from the roadmap posted here? I currently suspect that your process suggestions on prioritization & communication would still be the same so the heart emojis seem like a red herring… but maybe I am misreading and you put more weight into them than I am understanding.

  2. like the suggestions for improving… regardless of how coupled they are to the hearts. I took the hearts as you using it as symbolic or sign of what could be improved under the hood. Did I get that right?

I am not quite sure I see the connection so I may be missing something. I see two things here, so can you clarify?

  • When I (Diego) write about on-chain governance, i refer to the fact that the network is updated via NNS proposals with Wasm which folks vote on. I am not referring to the motion proposals. Indeed, many networks have motion proposal type systems… what is technically unique about the IC is about the actual updating of the code.
  • So to me the “25 motion proposals” were laying out the intent DFINITY had about the IC and wanted to see what people thought, since they involved upfront investment or hiring and working.

So my question is this:

  1. Did you not appreciate the proposals on Long Term R&D? Did you see them as on-chain governance? Motion Proposals on Long Term R&D Plans (totally fine if your mind changed from when proposed December 2021 to now)

  2. Is my definition of on-chain governance too narrow? (it may be!)

In my opinion even without the hearts priorities seem a bit all over the place and Dfinity should have done a better job at communicating why the roadmap looks like this, the hearts just makes it weirder cause they are supposed to represent community’s interest, but some of the tasks have been rarely if ever talked about as far as I know. I agree with Harrison’s take, we should have more infos on Dfinity’s internal decision making: Who requested those features? Have they been prioritized cause they are dependencies for something else? Why have they been prioritized over other stuff? etc…

1 Like