How start a distributed systems as Concordium from scratch?

Hi there! I’m a student in Information System Design. In my country Distributed Systems are not teached so I start to learn theorical documentations by myself. But now I want to start a project (as Concordium) to know how this kind of project is ran and try to implement some consensus as Raft, or BFT by myself. I don’t have so many experience in this path so I need some help to be well guided

Hello slashdreama

I will ask the Science team, if they have any free capacity to give you guidance or not:)

Concordium Tech Support

Hello Zoltan, Thanks for your consideration, I’m honored.
Please Can you help me to contact them?

I contacted them on your behalf, but I cannot guarantee anything. As soon as I heard from them, will let you know.

Concordium Tech Support

Thanks a lot! Hope they will answer me.

Here is the answer from the Science team;

"Hi slashdreama,

Distributed systems is a great topic, I hope you have a lot of fun learning it. I can give you some pointers to the consensus algorithms that we have implemented in Concordium, but we can’t provide you with any further guidance than that.

We currently run a Nakamoto-style consensus based on Orobouros Praos:

But instead of using the longest chain for finalization, we run a separate finalization protocol on top, namely Afgjort:

However, we are in the middle of implementing a new BFT style consensus to replace the ones linked above. It is a variant of the Jolteon protocol, which can be found here:


PS: Our code is open source and can be found here: Concordium · GitHub"

I hope that will help.

Concordium Tech Support

Thank you and Thank them!

But Even I got that description of protocols I can’t implement it by myself.
I’m not a senior dev :sweat_smile: . I have never implemented basic Protocol consensus as Raft , so, those ones are really tough for me. That why I need some guidance to started by a little implementation.