Hello, Gossip community.
Today I want to discuss our vision of Gossip project, its purpose and future 
steps.
I think the main problem is that even I have not clear vision of our goals and 
future steps, I think all members of our small community - 5-10 members, have 
their our unique vision - it's illy.
Are we just implementation of Gossip? Or do we want to implement much more 
algorithms and to solve more problems? If yes, what problems?
Who is our user in both cases?
I think without this understanding and obtaining first users quickly community 
can fall apart.

I think our goal now:
1. Formulate goals and principles of Apache Gossip
2. After that we'll understand who is our exemplary user, which problems we can 
solve for him
3. Then we'll understand the shortest path to a real adaptation. We'll get one 
real user and do all stuff to make Gossip decent for him.

I'm GSoC participant, I have a lot of time now to work and I want to move 
Gossip to the new level. My tasks are CRDTs, SWIM and Consensus.
For example, I can't understand which of these tasks will lead us to users and 
to what kind of users?
CRDT umbrella task (GOSSIP-67) has a lot of CRDTs, I implemented almost all of 
them, two remaining Crdts are so rare and complicated that I think there is no 
need to implement them. I think even some of already implemented are not 
necessary. 
The same situation with SWIM. We have some algorithm now, but the system in 
general is not usable by anybody, we can't understand is this algorithm good or 
not? We mustn't fabricate needs of our users, we should analyze problems of 
real users.
The same with Consensus. Is it in our plan and does it correspond to our 
vision? Is there anybody who is interested in it?

"Features for features" is not our goal. "Features for solving users' pain" 
have sense.
I want to bring you one example of strong community and successful company. 
It's Hashicorp. They have SWIM implemented and running in production on 
thousands of machines. And they not just implement the most modern algorithms. 
They do research and innovations. And it's not only due to their passion to 
algorithms, it's due to pain of their users, their clear vision and desire to 
solve users' problems.
It's the only way to build big robust community (and company like Hashicorp) - 
formulate purpose and aim on obtaining users.
So let's think about our understanding of Apache Gossip and decide whether SWIM 
or Consensus is highest priority to obtain first users or not?
If we decide that it is, I'll do it with pleasure. If not, let's compose plan 
to first users and I'll bring them.

Thanks, Maxim Rusak

Reply via email to