Megathread: Community Submissions for DFINITY Foundation’s Roadmap

Community Submission for DFINITY Foundation’s Roadmap.

Have an idea to propose?

For now, as patterns emerge, we are keeping the process lightweight:

  1. Please submit in this thread any suggestions and recommendations
  2. Like or comment on ideas you like
  3. @ililic and I will collate and collect the most popular ideas

When this becomes unwieldly, we will iterate on process.


Should we submit requests in this thread, or create new threads under the Roadmap category?

Do we signal support for a request by liking the post? Is there a way to list the most supported requests?


Should we submit requests in this thread, or create new threads under the Roadmap category?

I was thinking of submitting in this thread and then branching off. But I am more than ready to iterate off that if it becomes a mess.

Do we signal support for a request by liking the post?

Yes, let’s start with that. I will edit the post to communicate that is the low-hanging fruit.

Is there a way to list the most supported requests?

Yup, we can sort topic by liked: Roadmap - Internet Computer Developer Forum


Support Candid interfaces for all NNS canisters (eg. some ledger and registry functions are only available with protobuf)


Inter-canister query calls


Make more canister data publicly available on-chain


Motoko and Rust feature parity (support more of the system API)


Extend the Motoko base library - crypto, hashing, text manipulation, decimals, …


Allow canisters to control neurons.


I appreciate that Dfinity is providing this mechanism for community submissions. This is awesome. I am concerned that you will get a lot of requests and it will become difficult to follow the conversation/submission using this tool. Looking forward to seeing how it develops. When we post, are you wanting us to offer ideas that Dfinity then goes and develops further or do you want us to make thoroughly researched proposals that include value statements, justification, etc?

1 Like

Please add node shuffling to the list of proposals. Periodically swapping out the node members of a subnet may be critical to thwarting attacks from node operators, and would help the Internet Computer to obtain a sort of global security, as security would become a network effect as more nodes are added to the network. Right now adding more nodes to the network does not make the network as a whole more secure, those nodes only increase the security of the subnets they are being added to.

My discussions about node shuffling:


Consider creating an Internet Computer Improvement Proposal process (IIP).

I really love the discussion and input that is being fostered in the forum right now, and as time goes on I think adopting a more formal process such as the BIP or EIP processes would lead to a lot of positive outcomes.

I really like the name IIP (Internet Computer Improvement Proposal).


Consider adding the x.509 certificate authority stuff Dominic has been discussing.


Consider adding a change to the tokenomics of the NNS that would incentivize neurons to gain followers. See here for more details:


Consider adding social recovery to the Internet Identity. It would be excellent for users to create their own personal trust networks, allowing other IIs to have the power to regenerate lost IIs or have other powers, controlled by the creator of the II.

The fact that II cryptographic information is only stored on locally-owned devices is quite scary…one natural disaster, one bad encounter on the street, etc could result in a lost II. It needs to be decentralized.


Consider adding a large-scale and ongoing bug bounty program. I believe DFINITY now has a responsible security vulnerability disclosure process, which is one excellent step in the right direction. But I think DFINITY should also allocate a large amount of funds towards rewarding those who responsibly disclose security vulnerabilities. I think this program warrants multiple millions of dollars towards responsible disclosure.

I am not confident the system is secure when it has only been looked over by members of the Foundation, or those close to them (I assume this has been the case, I could be wrong).


Consider putting resources towards (possibly through grants) bringing the vast ecosystem of web developers to the IC through excellent JavaScript/TypeScript support. This could be achieved in multiple ways:

  • AssemblyScript CDK
  • Compilation of V8 to WebAssembly, essentially creating a Node.js for the Internet Computer

I don’t think the network effects of the web should be underestimated, and JavaScript/TypeScript is the language of the web.

Imagine the floodgates of developers that would come if they could simply bring all of their current JavaScript knowledge and tooling directly to the IC. Having to learn Motoko, Rust, or C/C++ is a major hindrance.


Bech32 Address for wallets and exchages

Many thanks to the Dfinity team for taking this step toward more inclusive governance! All the proposals suggested here so far sound to me like excellent ideas.

Needless to say, many of the ideas floated in recent weeks for future development are very exciting - the Service Nervous System, direct integrations with Bitcoin/Ethereum, Endorphin, etc. But for what it’s worth, I think that the priorities right now should be security first, reducing barriers to developer adoption second, governance third, and the more exciting differentiators later. With that in mind, special +1 to the following proposals here, in order of preference:

1. Security
a. Node shuffling
b. Bug bounty program

2. Developer Adoption
a. JavaScript/TypeScript support
b. Motoko base library extension
c. Inter-canister query calls

3. Governance
a. IC Improvement Proposal process
b. Incentivizing neurons to gain followers


Message scheduler. I have heard that this is in the works, but would like to see more details.