Skip to content
This repository has been archived by the owner on Sep 15, 2020. It is now read-only.

Some comments to the documentation #784

Open
serejandmyself opened this issue Jan 15, 2019 · 1 comment
Open

Some comments to the documentation #784

serejandmyself opened this issue Jan 15, 2019 · 1 comment

Comments

@serejandmyself
Copy link

Hey there!

I have been going through the documentation of your project and wanted to leave some comments.

Before I get on with it, let me just point out, that I am actually an investor (I mention this to point out that I put my money where my mouth is) and I am planning to write a couple of articles about holochain, explaining what a great project this is from a technological and an innovative perspective.

Saying all that, I would like to point out some things I have noticed, which left me with questions, and I didn't think of a better place to put it, but GitHub, as it is, in my opinion, not only a technical place but the main artery of communication with any open source team.

Here are the pointers/questions that I would like to bring to your attention:

  • Holo’s green paper on page 10 and 31 mentions DNS bridges. I agree that for adoption this is a great point, but I haven't noticed any mention or discussion with regards to new naming systems and web 3.0 in that regard.
    What I mean to say, is that, after even a brief analysis of open source projects, we can see that DNS, URI, HTTP etc are a centralized product of web 2.0 and many projects are already working on building completely new ecosystems, which will, allow users to speak to applications or to private servers directly (of course, in a sense that is exactly what holo is doing). The question is the following: is it worth it, spending resources and time on this when for now, we see a clear trend towards moving away from it?
    It also becomes obvious that a lot of hosting/naming systems will be absolutely different from each other. So, would the bridging systems be able to work with any possible web 3.0 solutions that are already out? Will it be open source, for devs to be able to connect those solutions?
  • I have noticed that in all 3 white papers, there is only a brief mention of a reputation system (although I have seen it being mentioned on your medium by one of the founders).
    I think it's quite clear, that a reputation system with (maybe) a possible TCL system is needed in place, in order for each “private source chain” within the system to be able to publish her / his own TCL and have others vote on / agree on those TCL’s.
    In return, that might spin a reputation system, which is needed for many obvious things (you already mention them in the medium article).
  • There is no mention of anonymity. And on one hand, that might seem like a feature, but I tend to disagree (of course, this is only a subjective opinion, like any other point on this list).
    Anonymity does give the option to transact in a safer way. It is a basic right, that should be available by default, where a person has the choice, to either stay anonymous or not.
  • There is not enough information about formalisms in the documentation, in the sense that (as far as I understood holochian correctly), anyone will be able to create a token, or in fact, any model/consensus inside his "private source chain", and share it with those agreeing (of course, it is partially unnecessary, especially when it comes to consensuses). But, it will definitely be something required by groups/markets/merchants etc.
    So basically, it would be great to see a little bit more information on that, even if it is in an ideological explanation, rather than a technical one.
  • It is mentioned in the green paper, that the Holo organization will be the main infrastructure provider (and the main provider of the reserves accounts) (once again, if I have misunderstood that, I apologize). In my opinion, this is a mistake already seen in the crypto space (for example steemit), which had given the organization too much power concentrated in the hands of itself, rather than decentralizing it from the beginning (of course, any decentralization begins from a centralized point, but that is a slightly different case here).
    It leads to all kinds of mistakes. Some being: monetary issues, incorrect power decisions, unnecessary bureaucracy and so on.
    In my opinion, it is much better to let the community, to try and take part in all the stages of the project from the beginning, by those - solving those and other issues.
  • There is a mention, in one of the documents, about the lack of being able to restore accounts (I think the end of the green paper). Well, once again, if we look at DPOS solutions, we see a (semi) ready solution, which allows you to restore accounts through devoted accounts/friends (secret sharing) and so on. That might be a possible solution.
  • I think that for a project the size and the importance of holochain, it looks a bit unprofessional not to update the white papers for such a while - since its launch.
    I do not mean to insult you, and as an ex CEO of crypto projects and a consultant, I understand exactly how much you have on your hands, but what I mean is:
    There are a lot of links in the documentation that either do not work or are not completed (in fact there is a link to a fourth paper, that doesn't work, which is a shame, as it might have some more information for curious people like myself).
    There are still the words “draft” written over the WP, which in a sense, shows some incompetence, and shows unsureness for the investors and for the community.
    The yellow marks and the “to do” mentions in some documents, also require an update in my opinion, as to show the completeness of these.
  • One of the main point that I want to mention is actually mentioned in a number of places, all over the documentation. It is a difficult one to explain and to talk about, but I will try:
    In a number of places, you mention that you would like to cooperate with the authorities (things with regards to national currencies and development of some apps).
    In my opinion and in my experience it is a complete waste of time and resources. I understand your struggle here to stay on the legal frame. But it is a bit of a paradox, to talk about decentralization, freedom from centralized entities, and at the same time, hope that those institutes will cooperate with you (in fact not with you, but with the project, which is the whole community and its users).
    Your development is spot on - it is at the edges, and not the center. And this is what's great about Holo. If we are talking about routing any transaction, and true decentralization, then there is no point spending unnecessary sums of money on lawyers and consultants for cooperating with authorities on most questions. Because simply: a) they will not offer any solutions b) they will always think of you as an inferior being trying to steal from them c) look for ways to work against you (as opposed to "with you").
    If I were you, I would turn those resources (which is most importantly your time) on doing what you guys do best, and develop the code base, look for more developers, carry out hackathons (as you already do) and so on.
  • One last point (might be a bit silly): but if I am at it already, I will mention it:
    What actually happens when nodes (source chains) simply do not agree on what is inside a DHT?
    As in: each equal (in numbers and reputation) group, says that “this is” the way how something particular should be run (regardless on the past time stamps and signatures).
    At the same time, we assume, that this particular information (in the DHT) is required for a use in an application, but because of the disagreement between (let's say hosts and providers), it cannot be run onwards (lets say it stops something urgent to be carried out: a delivery on a big scale), as they simply don't agree on the rules.
    How would this be solved (as we do not have a consensus in the system)? One possible answer would be to have 2 \ 3 \ 4 etc… solutions running side by side, to suit everyone needs.
    But, can there be such a scenario, where the solution is required immediately and it takes too long for the issue to be solved and new code to be written?

Once again: I would like to point out that this is by no means something else, but constructive criticism. And I am in favor of Holo and will be publishing a series (I hope) of articles about its use and its technology, as I truly believe that this is one of the best projects in the space right now. And I hope it succeeds!

Of course, all opinions and points are highly subjective, so you are welcome to ignore any if they are out of understanding somewhere.

Thanks and BR

@pdaoust
Copy link

pdaoust commented Jan 16, 2019

Hello! These are some really worthwhile questions and critiques. I don't have the time to get back right now, but I'd like to dig into them with you later. Stay tuned, and if I don't do it by the weekend, please ping me because I probably got sucked into some task or other!

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants