Holochain Forum

DEARTH: Privatizing Earth [Goodbye Climate Change]

What started out as a solution to cure climate-change and its causal market-externalities ended up becoming a full-blown ownership-registry and property appropriation protocol.


Note that it’d only make sense if you’ve already read Vril: The Ultimate Currency Project

I invite you all to read and share opinions.
[PS: the thread is absolutely unmoderated; dissent (civil or otherwise) is highly welcome. Haha!]

[cc @pospi, @bhaugen, @zippy, @zeemarx, @TiberiusB, …]

Hey @pospi, I was wondering how one might represent liabilities in REA… Did some research, but couldn’t find any satisfactory results… I would appreciate it if you could throw some light on it…

I’m guessing that liabilities are also Resources; just Resources that nobody wants; Resources that have a negative subjective value to all rational agents. So you’d only accept, let’s say, 1 tonne of Carbon Monoxide, if I were also to give you, let’s say, 10,000 dollars alongside it… Is that the REA “duality” for trading liabilities? Or do we just not represent them? (Which, if you ask me, would be a bad idea…)

Also, what’s https://github.com/holo-rea/ecosystem/wiki/Modules-in-the-HoloREA-framework#legal-dispute-resolution @pospi? Might you throw some light on it as well…

@pospi, @thedavidmeister, @guillemcordoba, or whoever with an opinion on this:

Is there a Holochain design principle that says a (h)app must always behave consistently throughout its lifetime? That it must not change its behavior all of a sudden? [Like the one that says zomes of the same DNA shouldn’t talk to each other, because otherwise what’s the point of encapsulating code in zomes anyway! Though nobody follows this one; everyone’s zomes are just chit-chatting all the time like nonsense!]

For example, entries of type Pong can only be created once an entry of type Ping has been created. That is to say, the validation callback create_pong() returns false if no Ping entry could be found on the DHT, and true otherwise. In such a scenario, the behavior of the (h)app depends on which phrase (or which stage) it is in. In Holochain’s terminology, the app metamorphoses when a Ping is created. Should this be problematic?

I’d love it if you could review at least the technical section of the Octave Zome, @thedavidmeister
I’ve exploited the specific use-case of the problem so as to avoid Hotspots, and at the same time regain order and structure, in my implementation of the Octree. Please do check out.

As for David Friedman’s private law society, here are some cool videos I found. [Thanks to BitButter, who’s done this excellent job of videofying his ideas…]

Look guys, the tech is already here:

Would add more illustrative videos as I find them… (in case you don’t want to go through the bother of going through the links in the references section).

you can certainly make validation rules change based on the existence of something, but pass the ‘something’ in to the validation callback to keep it deterministic

if you rely on network gets you’ll introduce inconsistent validation between peers which opens a gap for malicious and buggy behaviour to slip through

1 Like

direct link?

Only temporarily, I guess. Because given long enough time, even network gets would yield consistent results…

Imagine that people would be creating the Pong entries days after I’ve created the Ping entry. So, by that time, network would have well saturated to equilibrium. They would all yield consistent results.
But yeah, if someone was to create a Pong just seconds or minutes after someone else had created a Ping, then sure, some validating nodes will say “valid”, while some others will claim “invalid”… I guess one just needs to make sure there passes sufficient time first…

Page 26 & 27, to be exact.

Right now, it’s just textual description…
Gonna pick up coding ASAP.
Just wanted to make sure I wasn’t heading towards unchartered territory…
Is it too unconventional of a use-case for Holochain?

Basically, if you know the DNA-Hash of the Dearth (h)app, and you know your location (lat, long, alt, etc), then you can, without having to go through any anchor of-sorts, simply calculate (offline) the Block hash that you’re standing on. If you calculate the hashes of all the Blocks (or simply, nodes) of the Path leading you to that block (i.e., node of the Octree) all the way to the root, and if there’s no Flag (i.e., a link with the tag “flag”) attached to any nodes in the whole path, then you can be damn sure you’re standing on an unowned property. You get the idea…

This is possible because of the inherently consistent nature of the Octree data structure, and how it has been structured in the (h)app (i.e., its entry definition, which includes the hash of the parent, and the Octant it represents).

The validation rules of a Block can easily check whether, let’s say, the 3rd link (i.e., the link with the tag “third child”) of the Block whose hash the given Block has included in its entry as Preseed does indeed have this Block as the link-address. In practice, the whole function (that created the child Block with the Parent’s hash and also links the parent to the child) would operate in the workflow’s scratch space, so either both the operations succeed or none at all; nothing in between.

But I’m concerned about the behaviour of the validation routines: the create_link and the create_block_entry ones. The create_link requires that the Block actually exist, and the create_block requires that the link be there. So would the new RSM workspaces guarantee consistent behaviour in this scenario? At least on my node (i.e., machine; not node of the tree; there’s such a lack of words in tech space these days)? Of course, one could make the create_link routine a bit more flexible (by not having it verify whether the block exist; just that the block’s hash is consistent with the Octree’s structure), but I’m reluctant to do so…

Basically, the challenge is to keep a data-structure structurally resilient in the distributed system that Holochain is.

[PS: note that Blocks here have got nothing to do with blocks in a blockchain. They are simply boxes or cubes within other larger cubes; or simply, nodes of the Octree.]

the problem isn’t that honest agent will be consistent, the problem is that we can no longer reliably discern between ‘honest node on a network partition’ and ‘dishonest node lying about validation’

if you have a situation where you expect the data to be available and you are confident of that fact, just attach its hash to the validation data e.g. Some(entry_hash) and return ‘missing dependencies’ from the validation result if you can’t get it

‘missing dependencies’ neither invalidates nor validates the data, it queues it to be retried by RSM, after ‘enough’ failed attempts it will get garbage collected

1 Like

makes sense to me, i designed paths with something like this in mind for geo data

https://what3words.com/about might be interesting to you

1 Like

Wow man! It blew my head off! You’re awesome!

I remember reading somewhere a few days ago that all stars in the universe can be given pronounceable names just 22 letters long! So, yeah, with geo locations, it sure would be possible to do so in just 3 dictionary words. I wonder what secret-sauce algorithm they use… It’s probably something simple enough to be calculated even offline (if you know the schema or whatever), I’m assuming…

Got it! Thanks really. I’d never looked too deeply into the “validation_data” thing up till now… (partially because it was always a work-in-progress back when I was trying stuff on RSM)

Wow! Can’t get any better!

not sure but hopefully they’ve articulated it into some kind of open standard

the exact retry logic is open to optimisation and not finalised, it makes sense that we would back off retries if we keep failing because being endlessly aggressive about it doesn’t help all that much if the agent with the data just went offline, and can easily clog the network

1 Like

Privatizing Earth

I have a question. You’re excited about Holochain. Many in this community talk about unenclosability, commons etc., yet you’re calling for privatization. For me privatization is the opposite of the aims of Holochain. For me privatization calls for hierarchy, secrecy and non-transparency.

What is your definition of privatization?

I am wondering if this might be a case of ‘coalescism’, where my desire to help grow systems for non-hierarchical (a system of networks, instead of pyramids), transparent and open ownership (and stewardship) of the commons, is basically the same as your desire for privatization. Or do I misunderstand, and your desire really is to create a new pyramid (which you might sit atop?), a new system of hierarchy? A pyramid built on Holochain tech?

I really do believe you are already on my team, do you believe it too?

1 Like

Exactly! That’s what I’m getting confused about.

We’re all using different terms but essentially advocating the same system, I guess… Still waiting for @TiberiusB’s reply, and can’t say much prior to it…

Whereby I own part of the forest as my personal capital and remain eligible for the benefits that may reap off of it.

REA is a great tool, it’s like a horizontal innovation; it enables us to do what we already used to do (capitalistic trades, managing (even cross-organizational) production-processes, etc) but much more efficiently than before… But I don’t think it can make possible @TiberiusB’s hypothetical systems of commons-based peer-production; those kind of systems suffer from a great many HUGE impossibilities, and the calculation-problem is just one of them…

A society whereby code (or the network) dictates resource-allocations, code decides rewards and incentives, either democratically or otherwise, is as pyramidical as it can get! And the people who program those code rules (and the reward algorithms, etc, that @tiberiusB talked about) sit on top of it. That’s how I see it. I’m totally against centralized planning, but that’s how these systems seem… I prefer an unplanned economy over ones where a few notables (or even democratically; it makes no difference whatsoever) decide how many trees are OKAY, and what’s too much deforestation, etc, all in the name of “the greater good”!

The core notion that lies at the heart of such systems is that man is inherently evil (which he is, no doubt), and that we can somehow know what’s good, and can somehow make everyone play in the good system, obeying the good rules (good as in good vs evil). But that’s utter nonsense! The same reason that renders man evil also renders those (democratically elected) code-gods evil as well; but the core argument is that such a system is bound to be inefficient! When the park-cleaner isn’t employed by the park-owner (since nobody owns it, as far as I understand) and rather gets paid by some metrics that measure her performance then the system is bound to fail! Plus, no new tech or innovation can spawn within such a socioeconomic system… It lives off of the wealth it inherits from todays capitalistic system. For example, how might an ingenious innovator/entrepreneur convince the community that a better idea would be to build, I don’t know, a fusion plant on the park? It just doesn’t happen! [Contrast it with the free-market whereby he can outbid others if he sees the potential future possibility of value-returns in doing it.]

I’m not in for giving people what they deserve, or creating a morally superior system where everyone looks after everyone else, where everyone can contribute and everyone can reap anything, where labourers own the means of production, where pollution stays within the prescribed limits. Rather, I want flying cars! And I don’t see how an un-privatized system might get us there faster than a privatized one. I hope that makes sense…

I am (except for calling it a ‘morally superior system’). I believe the holochain pattern will just cause an inevitable shift: a reorganization of the economy into a system of communal property - away from the capitalist/bourgeois private property system of today. In one word: communism (or socialism, Marx used both interchangeably). Take care and good luck.


The catch is: if you truely were, and were rational enough to see how, you’d realize that only a free-market capitalistic system does the greatest good to the common man.

The very curse of capitalism is that it makes the prices of the goods that people value plunge forever, pushing poverty to non-existence! But it takes brains to realize that!