I will try to bring some new perspective, from a core developer who created his own team because he was not happy with the past status quo. I write in my name only, other core devs will of course disagree with parts or totality of what is there.
I assume people are here in good faith, but that some are sorely misguided about how things work. I will pick some quotes to show that there are real misconceptions held by real people. But keep in mind that if I quote something, it is because I have seen the underlying misconception time and time again, not because I care about the particular person having written that particular quote at that particular time.
We have limited people. We know that things (eg, the governance process) are not perfect. But making things better costs people’s time!
As a result, making the governance process better either requires delaying other things that people are working on, or bringing new people to work on all of this. Bringing new people is hard and requires much more than money (most notably, a lot of time to onboard them). On top of this, most people usually prefer talking about things than actually doing things, even when they are paid.
So, if you bring something up after an injection, it better be an extreme emergency, like a critical bug or something.
My first thought when I see a huge amount of posts about a protocol amendment is not “Oh, I guess people just discovered a thing that has been on Tezos Agora for 5 months.”, it’s “Oh shit, was there a critical bug??”.
Now, to the main content, for the people who want to actually take the time to understand more about where I am coming from.
And at this point we have 83+ Agora Posts, reddit / twitter chatter, and alternative proposals being injected. LB is a controversial feature - regardless of how little or much the community made that known.
Controversies should be perceived as suspicious by default. Something being controversial at some point in time does not mean that it deserves attention. You have the entirety of political Twitter as an example of this.
Something being controversial only means that it produced a lot of reactions. Polemics is an entire field dedicated to creating controversies with no substance, and to bring them salience solely on the merits of their controversial qualities.
A typical example from polemics is the Gish Gallop: a quick succession of low-effort questions that takes time to answer, after the which the asker quickly moves on to other questions. This is bound to provoke a lot of reactions, as there will always be at least one of the people in the audience who will have a partial opinion about one of these questions.
If people succumb to those dynamics and start to participate only when there is a controversy, then we will reward, foster and finally end up with the kind of insane and inflammatory environments that we see everyday on social media.
Instead, here is what I would suggest:
- Let’s say someone has an actual concrete and serious problem with the current proposal, as in, a deal breaker. They should now open a separate thread about that specific concrete and serious problem known, and then, I will personally address it.
- Let’s say someone has an actual concrete problem with the current proposal, but not a serious or urgent one. Then they should open a thread about it, and we can work out a solution, that could possibly be addressed by a change in the next proposal for instance.
- Finally, let’s say some people actually have the interest, time and energy to dedicate to more abstract problems, like making the governance process better. This is important, but not related to the current proposal. In that case, if they are willing to commit time to it, I invite them to write a Tezos Agora post with the ideas they have. Then, I will personally make sure:
- That they are heard and replied to.
- That if they have an actually good idea, and the time and energy to dedicate to it, I will do whatever is in my power to help them develop it. Whether this is giving them technical help, introducing them to the right people, or walking them through the (now simple!) Grant Request process.
Both of these changes are non-invasive and one line changes.
Sure, costs, more and takes more time. But that seems like a small price to pay for this kind of optionality and a much more subtle way to propose something so new.
As explained by @arthurb, the protocol vote is a ratification step (basically making sure that a proposal is not rogue), more than a “deciding among X competing options” step. The reason is very simple. Maintaining competing proposals is hard! People might have in mind “one-line changes”, but consider the following:
- Most amendments are not one-line changes, so no other part of the governance process is built around supporting this special case.
- Even if you consider only 10 small independent one-line changes, you get 2^10 combinations of changes, which is ~1000 different proposals. Example of independent one-line changes: changing baker roll size, the fee rate of the LB contract, the pair traded on the LB contract, the code of the LB contract, the size of Tezos blocks. 10 is a very small number, very easy to reach.
- You need to support the release, docker images, builds, distribution etc. of all the different proposals.
- You need to rebase all of your changes on all the different proposals.
- You need to motivate people to contribute to your testnets. Which is hard to do even with a single proposal.
But, yes. We could build a custom separate amendment process for constant changes to sidestep those issues, so that bakers could vote on this kind of stuff outside of regular governance cycles. But this requires a lot of work from people who have specialized knowledge, who are currently already working on other things! If someone wants to put in the time to build a team around this, I would of course be very interested in helping them. Having a lighter amendment process for lighter changes has been part of the things that I would like to see on Tezos for a while, but I personally haven’t had the time to do so.
But in the meanwhile, the governance process still does not work that way, and as core developers, we expect consensus (even on smaller things for now) long before the injection. If we did not expect as such, it would be quite impossible for us to do actual development work.
I have obviously missed this Liquidity Baking: A Decentralized XTZ / TZBTC Pair - Part 1 2 . This was presented a good few months ago but discussion about it doesn’t seem to have taken off.
I do believe the time for that discussion was on the Agora thread / RFCs. [But …]
I have quickly explained why it is hard to technically improve the Governance Process. Now, I will dig into more spicy matters.
The process by which discussions take off or don’t is how bakers, and all the other actors in the ecosystem, contribute to the protocol. All too often, from everyone, be it bakers, tool builders, end users, or whatevers, I hear something along the line of either “Why do we still not have X?” or “Why do we have Y?” (in a complaining way). Quite often, the most honest answer that I could give is something along the line of: because I am one of only ones (sometimes the only one) who talk to the core devs about this. Because of this, they don’t feel like it matters enough, and they have 10 other burning priorities at a given time, as we can’t find enough people willing to build new core dev teams as it is extremely hard and not rewarding.
Liquidity Baking is one of the better cases! There was a thread on Tezos Agora, 5 months before, there were posts explaining what it was, the progress, and so on and so forth. It is one of the few things that targets end-users, that makes Tezos much more enticing, and that got merged at the protocol level. It was even started by someone outside Nomadic!
From my point of view, this is an epic win, and a strong mark of progress of the Governance Process and Development Process over the past.
So, I agree that there is a whole lot more that core teams could do to make things more open and to include people to the discussions. But publicly attacking one of the better things, after the injection, after it has been in the open, without asking the actual core devs about it in private first, is a huge step back and does not help this undertaking in any way.
I do continue to be concerned that we are picking winners and losers at the protocol level, and that these decisions are made opaquely. I have not yet heard rationale or a compelling argument for why this is.
“Liquidity Baking seems like a fantastic idea but the way it’s proposed to be implemented sounds like a top down business decision from someone high up at the Tezos foundation.”
The issue I see has less to do with what type of asset is supported but that there is a proposal by what ought to be a purely technical team to inject some type of “economic policy/stimulus” (beyond simple protocol inflation for network security). It amounts to a commercial decision by a “state actor”, instead of the “private sector”.
To everyone feeling like this, I would recommend taking
a lot of quite some distance on the situation! You might be completely wrong, on two separate dimensions, at the same time!
First thing is, this is not an adversarial project. “The protocol level” is not “top down”, and is not “a state actor”. That’s also not the case for TF, Arthur, tool builders and bakers. I could count on the fingers of one hand the number of people that I worked with who did not have the best interests of Tezos at heart and who tried to impose what they wanted because of their interests.
Trying to frame it that way is fundamentally baker-centered. Consider the following:
- From the core devs point of view: the bakers could just block everything they do and boycott them. TF could just withdraw all funds. Tool builders could just move to other blockchains.
- From TF’s point of view: devs could just move to another blockchain with money and bakers could just liquidate their assets.
- From the tool builders point of view: TF could just withdraw all funds, and core devs + bakers could just vote in amendments that are incompatible with their tools.
Yes, any critical group could blackmail/threaten/veto the others. But this does not mean they are necessarily on top of the others.
At some point, one has to realize that we are all in this together. Of course, if someone is a bad actor, we need to kick them out. But by default, one should just assume good faith and trigger the fire alarm only when there is actual smoke.
Second thing is, if you still want to frame it as a conflict between groups, with different groups trying to impose on each other, then keep in mind that you are likely in the wrong group! Core devs have very little direct feedback from other actors, despite constantly being open to it and having nearly everything they do out in the open on Gitlab.
Even with that little feedback, in practice, they still try to integrate everyone points of view, and do so with the double pressure of needing to move quickly and keeping everything safe. I know more than one core dev who burnt out over taking this pressure seriously. There is literally no other group in the ecosystem that takes things as personally.
Core devs know all the nitty gritty of the protocol, the actual low-level technical boring constraints, and have to actually do the stuff. You would be hard pressed to do more “bottom up” than “this came from core devs”.
Finally, my point is not that core devs are perfect little angels. I literally left Nomadic and built my own team, I obviously have my reasons to do so. But despite having done so, I am still working together with them to improve on what exists.
So, my point is more that trying to improve on what currently exists more looks like what I am doing than not participating on Tezos Agora and then participating in a controversy.
To conclude, my message to people that were on the
Announcing Granada thread would be:
- If you got baited by the controversy on LB to this topic, move on with your day, there is likely nothing interesting for you there. As is the case with most controversies.
- If you have a concrete and urgent problem with the LB proposal, make a new thread, short and to the point, dedicated to that problem. I’ll do what I can to make sure it is replied to and taken care of if needed.
- If you want to help building a better governance process, make a new thread with your ideas and reach out to me! I also want to improve the governance process, and will help you if your ideas are good. If they are not, I will make sure to explain why that is the case.
- Regardless of who you are, please participate more on Tezos Agora! For instance, if you build tools or DApps, you might be interested in Views TZIP