Grin Centralization

Background:
A previous thread, Let's talk about the elephant in the room, was a long discussion about disappointments the community had about Grin, which later spilled over into keybase as a discussion on governance. Decentralization was discussed, and a suggestion I made to the community about encouraging exchanges and mining pools to use Grin++ or any other implementation of Grin was brought up. Concerns were mentioned by a few core team members about how using Grin++ doesn’t improve the situation, since it’s a one-man show. Here was my response to that, as well as my comments on other governance issues that were being discussed. I’m sharing here for more exposure and to provide a better place for the core team and others to respond.

Keybase Message:
re: your concerns about Grin++ being a one-man show. Yes, I share those same concerns, and am open to outside developers and users contributing, and frequently reach out to the community for feedback and suggestions. I would love to share responsibility and privs with other protocol devs, but so far, none have shown interest in contributing long-term. Grin as a whole is losing developers, not gaining them, and it’s even more difficult to attract devs to what’s seen as an unofficial implementation. Building active dev communities takes years, and I’ve always been planning for the much more distant future.

I never had the illusion that G++ or any alternative impl (there were a few when I joined the project) would be able to compete with the Grin repo in the first few years, which is why myself and others looked toward the council’s version as the way to drive protocol improvements during these early times. I believed that core would have the community’s best interests in mind, and at first it seemed to. Unfortunately, the narrative began to change rapidly after the loss of Igno, to where core no longer stood for the decentralization and advancement of Grin the coin, but instead solely for the development of the github.com/mimblewimble org and the enactment of the core team’s agenda (whether good or bad). Ultimate authority was collected by a tiny group with no checks and balances in place, and opposition began to be met with suggestions like “fork the repo”, which would take years to build support. Whether the change in narrative was intentional or not, it was a dramatic shift, and now many of us feel left without a voice.

To make matters worse, this small group collected massive amounts of money from donations back when they still claimed to be representative of the Grin project, and thus far, all of that money, of which they alone have decision-making power, has been used to give themselves a salary. Many of us were originally optimistic that we could do a lot of good with the money, but negotiations to set aside some of that money to hire a cryptographer, or to contribute toward a security audit for G++, which made up 1/3 of the network, went nowhere fast. The core team is about to be spending nearly $0.5 million per year just to retain people who once contributed for free, which contributed to the driving away of outside developers. To many of us it appears as if that money was not effectively used to grow the project or further the tech much at all, and an opportunity has been squandered. Many people donated varying amounts for a much different vision, and now feel duped.

I’ve come to expect very little good to result from these discussions, but if I could make just one point stick, I hope that it’s this one: The core team’s attitude has shifted dramatically over this past year, from an open and approachable group of leaders contributing to a once community-driven project, to a project whose every decision is made by a small unelected group of people with lots of wealth and power, of which the community has extremely limited ability to influence, if at all. This is worse than the federal reserve board I was hoping to someday abolish, which at least has limited terms and oversight by elected officials, and sadly, none of the core team members appear to show any genuine concern (at least not publicly) about the complete centralization of power. I’m truly saddened by the direction everything has gone, and quite frankly, exhausted trying to fight the current. I love the Grin community, and love what the coin once stood for, but find it increasingly difficult to contribute in any meaningful way.

6 Likes

I am glad that “the elephant in the room” post brought us here, to the point where things are actually discussed. You are doing great job David and so does the Council, although indeed recently they seemed to lost their way a bit, they seem to acknowledge the community’s dissatisfaction and while still sticking to the things they are sure about, they also are becoming more open to suggestions from the community than they used to be. And it is a good thing. I truly believe the worst times for Grin are over and now everything will be more streamlined.

I’d like to unpack this a bit as it raises an important question.
It is easy enough to say the old team was “open and approachable group of leaders” compared to the new team which is “unelected, with lots of wealth and power” but this is a little misleading.
It is particularly misleading to newer members of the community who may not have been around a year ago.

Igno left the project. Other contributors have come and gone. But the “core” team has remained surprisingly constant. We have welcomed one or two new members to core but has it really changed that dramatically?
Its effectively the same “tiny group” that it was a year ago. The decision making process has not changed. The vision remains the same.
The attitude and behavior of individual members of the core team have not changed significantly.
I’m interested in knowing why you feel the dramatic shift from “open and approachable” to “unelected with lots of power and wealth” when it is the same group of people continuing to do the same things.
If it is not internal changes to the core team then maybe something has shifted externally.
What is it that has shifted so dramatically?

I’d like to highlight a conversation that occurred on keybase as part of this wider discussion.
As everyone is likely aware John Davies is a vocal supporter of yours and on several occasions has advocated strongly for you to join the core team.

johndavies24 4:57 PM - Sun
Myself and many others have proposed adding blade and David and most of those conversations were either ignored or unpleasant. I’ve suggested that you shouldn’t have the keys to the funds that you pay yourself with and those getting paid shouldn’t have a vote on others getting paid. I’ve made many suggestions, as have others

antiochp 4:58 PM - Sun
I’m not clear on exactly how adding blade or David to “the core” would make it less centralized. Could you expand on that?

johndavies24 4:59 PM - Sun
They frequently voice opinions that I’m in agreement with and current core is not

While we can argue that dissenting views minimize “group think”, I do think his response is particularly revealing in its honesty.
That at the end of the day the concerns being raised are not so much about power being held by a small group of people as much as who is in the group.

3 Likes

A lot of interesting points here… I think there is a misunderstanding about Centralization. From my point of view, all projects needs some kind of leadership and that is not bad at all, a project without leadership is meant to fail. For sure some decisions could be labeled as “bad decisions” but I’m an optimistic guy, I think that the fact @david brought this conversation is, actually a good thing, since everything can be openly discussed.

4 Likes

Lehnberg is now the de facto voice of the team instead of Igno. There’s also financial incentives involved now. I don’t know which of these is the biggest contributor to the shift, or if it’s something else altogether. I only know the end result.

I do not speak for John, and neither does he speak for me. My motivation is to avoid power congregating into the hands of the few, regardless of who they are. While I take offense to having never been invited to join the core team, I have no interest in joining anyway. I did not become interested in bitcoin, and then later Grin, because I wanted more power. My desire has always been to replace the fed with a more sensible currency that’s not subject to the whims of a small centralized group of people. It’s disappointing that we apparently don’t agree on the importance of that goal.

2 Likes

I can take some blame for this. I don’t think anyone here currently considers themselves ‘the leader (or indeed the voice) of Grin’, but I think some of us are definitely happy to bury ourselves in our code and work while being happy to let Daniel put himself in the line of fire. I disagree with Daniel frequently and we have a few long-standing differences over several approaches. There shouldn’t be a ‘voice of the team’, just individual voices, and if that’s the perception it’s a failure. I can’t promise I’ll be joining in Telegram discussions (I have enough trouble keeping up with existing forums and chat channels,) but I will make a effort to be more vocal and encourage other members to make their individual voices heard a bit more.

If there are, they’re not very good ones. I’m happy to be allowed to continue to work on Grin full-time, but I don’t personally feel like I act in a protectionist manner over the fund.

I have to be honest with you here, I have no idea how to handle this now or any other time questions like this have been raised by anyone. It is extremely awkward, frustrating and limiting to not be able to respond publicly to damning questions like ‘why hasn’t such-and-such been invited to join the core team,’ because in each and every instance there are generally reasons, (which differ from person to person), why members of the core team have not felt it appropriate to invite such-and-such to join.

It is, however, extraordinary disrespectful to discuss these reasons in public, or indeed at all with anyone other than the person in question. I know you’ve not the one making these assertions, but I just wanted to clarify to everyone why it appears these kinds of questions are met with deaf ears; it is purely out of respect for the person concerned, nothing more.

I cannot say much here other than I have strongly advocated for you to be invited to core at times. Other times, I have been dead set against it. If you want to discuss this, I am perfectly happy to do so in private, as I’m sure most of the core members are. I will say that I have nothing but respect for your technical ability, development skills, tenacity, help and reviews you’ve given me with various issues, and your tireless contributions to Grin. The fact that you’re not currently on the core team represents more of a disappointment for me than anything else.

10 Likes

I heard my name being called… :slight_smile:

@david I think we both agree that what started as a friendly relationship has over time deterioriated. I respect your technical skills and commitment to Grin, but as you and I discussed as late as last week in the DMs, there’s a complete lack of trust between us by now. We could go over the reasons here, but I suggest we do it over a couple of beers at some point in instead. We both have our reasons. I hope we can rebuild relations at some point.

I do take onboard your feedback about the amount of space I take up in the core team, I’ll try to tone my voice down and let others do more of the talking moving forward.

Our personal relations aside, I want to understand how you think the core team should improve. Governance is hard, and our current process is far from perfect.

Ultimate authority was collected by a tiny group with no checks and balances in place

→ What do you think should be done to improve the situation, what are your proposed actions?

4 Likes

I chose David and Blade because they have great suggestions that I often agree with AND they have contributed substantial contributions to the grin ecosystem. I would not feel the necessity to suggest new additions if the core had some combination of better community engagement, sharing my opinions and/or being more receptive to opinions/suggestions from outside of the core. I believe these two people have earned it, so they are who I chose to suggest. Brian - Subcouncil Receptionist would have been on the list but he’s just a receptionist.

You’ve got it all backwards, it is not about who is on the core, it is about the opinions the core shares and how they engage the community and dissenting opinions. Someone needs to hold the keys (funds and commit keys), so there will always be some degree of centralized power. Since the community is small, especially with respect to substantial contributors, my suggestion was to ensure the echo chamber is broken by adding contributors that share some dissenting opinions.

3 Likes

this is mind boggeling. First there is more drama on a crypto-forum than on my usual eve daily soap and than john davies suddenly says something constructive in a well spoken manner. I must be dreaming

6 Likes

To me there are two things that may avoid centralization of decision

  1. voting system (infeasible trustlessly though I think)
  2. mega aura given by god himself that determines the mojo of the coin. Bitcoin for example. very very very hard to change. people can still whine about radical changes but they know they will lose so they don’t it too much. And the most courageous, stronger groups will manage to do a successful (important) fork. bitcoin cash here.

for grin it was tried to install 2. from the get go by saying “minimalistic” implementation of mimblewimble.
due to some factors, including the departure of the starting leader, “minimalistic” is not accepted by a good part of the community today. this also has to do with the usability issues and the lack of “beam-slick” beautiful wallet.
Fortunately, David has done a great great job trying his best to improve on that and helping relentlessly community members that dont know how to run CLI, while Core was more between the walls of its own tower, doing some great work, but not really at the encounter with the wider community, probably influenced by the “bitcoin culture” in a way.

In the presence of a splitted community, who decides will always be a fight, a fight for influence and for power to implement ideas.

I believe that we can work together and unite our force. It will take compromises, empathy, communication, intelligence, keeping a bit egos on check, and let this coin being bigger than any of us (like bitcoin is to its community) and slowly find, if lucky, a common implicit strong vision that will define the life and philosophy of this coin

7 Likes

For David’s sake, I would like to request that no one associates him with me. Just because I drink his kool-aid (meaning I frequently agree with how he engages, communicates and his ideas) doesn’t mean it is fair to associate him with me.

Good points. I wasn’t around when the work on the grin-wallet started so I’m guessing the idea is to have a CLI interface to make is easy for anyone to use. Since it is just a CLI it means that anyone can build a GUI that uses grin-wallet behind the scenes. The gain here is that there is a common interface for wallet interaction through CLI and that interaction has been accepted and tested by the community. Having isolated ‘functions’ that one can reuse seems like a sane pattern that makes it easy to compose stuff and build wrappers around it like a GUI (or maybe even just a one time signer that recovers account from a seed, signs a tx, deletes the account - to avoid storing accounts locally or whatever).

1 Like

I want to put some thought into it before proposing some long-term solutions. In the short-term, more community engagement would be the largest improvement by far. It’s clear Yeast and a few others have already started prioritizing this since the issue was raised. I think if that continues, at minimum the core team will start to regain trust from the more skeptical members of the community. When the core team is more involved with the community, whether they have ultimate decision-making abilities or not, core decisions feel a lot less like high-castle decrees.

13 Likes

This is the best discussion thread I’ve read in a while. On anything. Very sincere and constructive.

If I may add my two cents on the matter, I do wish to hammer home a certain point I’ve made in the past; An open-source project in its infancy does not have any place for an official fund, and certainly no place to have major contributors on payrolls. Those measures should be reserved for much later in the lifespan of the project. They severely impede the ability of a wide and qualitative community to develop. They estrange the core contributors from the hearts of the community, and vice versa.

Let there be no doubt in your mind as to whether these were good measures to begin with. They spelled disaster from the get go.

Nevertheless, I hope, and genuinely believe, that better times will come for Grin. Cheers.

8 Likes