Holochain Analysis 1: The Philosophy and Key Concepts Behind Holochain and CeptrNov 11, 2018, 2:02PM
In part one of a three-part series on Holochain, we look at the philosophy and new ideas behind Holochain, an entirely new form of DLT.
What Is Holochain?
Holochain is a building block component of a broader project/initiative called Ceptr (from receptor), a cooperative framework for large-scale social coordination and distributed applications, and a bio-inspired computing architecture of fractal receptor units designed to be capable of organizing and evolving as complex adaptive systems. Holochain is the data integrity engine within that framework. It was first leveraged as a stand-alone architecture (to be gradually integrated or evolve into Ceptr) and introduced to the mainstream with its first hApp, Holo - an easily accessible, browser-based distributed alternative to on-demand cloud computing platforms such as Amazon Web Services, which enables regular people using general purpose hardware to host hApps (and earn Holo fuel for doing so).
In Self-Organization in Sensor and Actor Networks (Wiley Series in Communications Networking & Distributed Systems) Falko Dressler describes bio-inspired self-organization in the context of massively distributed systems:
One common ambiguity is the essentially different meanings of ‘self-organization’ and ‘bio-inspired’. In short, self-organization is a general paradigm for operation and control of massively distributed systems. We can observe many examples of self-organization in nature and many proposed solutions in this domain have their roots in biological mechanisms, and thus can be named bio-inspired. Nevertheless, self-organization is only one example of bio-inspired algorithms. Additionally, not all self-organization techniques are related to bio-inspired research.
The term ‘self-organization’ refers to a specific control paradigm for complex systems. Eigen and Schuster (1979) investigated the main concepts behind self-organization in the context of natural – mostly biological – systems and tried to transfer methods and techniques to control mechanisms for technical systems. Basically, he discovered that systems consisting of huge numbers of subsystems need some kind of controlled autonomy that enables a proper functioning in a highly scalable system. Similarly, self-organization mechanisms are required if systems need to face changing environmental conditions or have to adapt to previously unknown application scenarios. If a system is able to fulfill the described requirements, i.e. if it is scalable and adaptive and if it does not rely on external control, the system is said to be self-organizing.
Ceptr as a Semantic Self-Describing Protocol Stack
Another of the built-in properties and feature components of Ceptr is that it is a semantic framework (i.e., one dealing with meaning and context, not just structure or raw data) intended for enabling rich expressive capacities and self-describing protocols and employing Semtrex (SEMantic Tree Regular EXpressions) for the purpose of capturing value within contextual meaning. IOTA, in contrast, is designed to deal with probabilities, while blockchains operate as rigidly deterministic, limited and somewhat cumbersome walled-off systems, additionally bottlenecked by universal consensus requirements. Semtrex is a semantic tree regular expression matcher (similar to regex, but with the added capacity to match semantics or implied meaning within context, along with the corresponding literal values within that context/meaning).
The process of re-assembling data across the contextual frameworks of different semantic structures (or virtual machine receptors listening for particular signals, translating them to other signals and their cascading chain reactions across systems) is the impetus for a new field of systems design and information/computer science called ontology engineering, a kind of conceptual modeling "which studies the methods and methodologies for building ontologies: formal representations of a set of concepts within a domain and the relationships between those concepts."
Ontology engineering in computer science, information science and systems engineering is a field which studies the methods and methodologies for building ontologies: formal representations of a set of concepts within a domain and the relationships between those concepts. A large-scale representation of abstract concepts such as actions, time, physical objects and beliefs would be an example of ontological engineering. Ontology engineering is one of the areas of applied ontology, and can be seen as an application of philosophical ontology. Core ideas and objectives of ontology engineering are also central in conceptual modeling.
Ontology, in turn, defines epistemology. Or said otherwise, the basic structure of representation of the categories of being (what is there) and the range of possible relationships between them that can be formulated, determine the bodies of knowledge that could be built within that capacity, or what can be known and how it can be known. Ceptr, in that regard, aims to catalyze rich expressive capacities/forms of creativity of what could be articulated into existence or the kinds of knowledge, discovery, and insight that could be derived from setting these possibilities in motion.
Holochain Holography Vs. Techno-Medieval Blockchain Monoculture
Holochain begins with entirely new base assumptions and ontological categories as well as more carefully chosen terminology than the prevailing blockchain paradigm. Holochain is developed to be neither misleading nor obscurantist (tendencies which have otherwise sowed much confusion and laid the groundwork for many wrong impressions, misunderstandings, and erroneous assumptions in the crypto-sphere over the years). Unlike blockchain, Holochain is agent-centric rather than data-centric - that is, within the network(s), the actors/agents themselves form their alignments and agencies based on their subjective views of the network(s) and the web of relations they enter into.
As a blog post from the p2p foundation puts it: "Holochain is like having access to all of the capabilities of all of the Internet apps simultaneously without needing an API, because the languages are entirely compatible." Instead of an engineered scarcity and squeezing absolute truth through the bottlenecks of unscalable universal consensus to form a monolithic ledger in a monochrome world understanding only UTXOs (Unspent Transaction Outputs), the Ceptr/Holochain constellation merges everything into a chaosmos of dynamic relations in which individual agents differentiate themselves through what they are inclined, programmed, and/or positioned to "capture" and how they are predisposed to see it or react to it, depending on their needs, affinities, interests, and goals. For example, agents store and record only what is relevant to them in particular (making the system, thereby, already "sharded"), as opposed to everything that ever occurs across the network in a polygraph-style append-only database ledger of Merkle trees. Agents therefrom choose to join and merge within larger collective assemblages of enunciation or patterns of organizational coherence in other, larger and more distributed forms of agency.
Deleuzian Philosophy of Difference
The underlying philosophy/ontology of Ceptr and Holochain brings forth associations with many modern schools of thought and is somewhat reminiscent of the 21th century-relevant Deleuzian conceptual vocabulary - particularly, the notion of folding and unfolding the outside inside and vice versa in the process of subjectification (of the DHT-scape within agent source-chains and vice versa).
Specifically, the concept of the fold allows Deleuze to think creatively about the production of subjectivity and ultimately about the possibilities for, and production of, non-human forms of subjectivity. In fact, on one level the fold is a critique of typical accounts of subjectivity, that presume a simple interiority and exteriority (appearance and essence, or surface and depth). For the fold announces that the inside is nothing more than a fold of the outside. [...] There is a variety of modalities of folds: from the fold of our material selves, our bodies, to the folding of time, or simply memory. Indeed, subjectivity might be understood as precisely a topology of these different kinds of folds. In this sense. the fold can also be understood as the name for one's relation to oneself (or, the effect of the self on the self). The Greeks were the first to discover, and deploy, this technique of folding, or of 'self mastery'. They invented subjectivation taken to mean the self-production of one's subjectivity. Subsequent cultures, such as Christianity, have invented their own forms of subjectivation, or their own kinds of foldings; and of course it might be said that our own time has its own folds, or even that it requires new ones. This imbues the fold with explicitly ethical and political dimensions, for as Deleuze remarks, the emergence of new kinds of struggle inevitably also involves the production of new kinds of subjectivity, or new kinds of fold (here Deleuze has the uprisings of 1968 in mind).
"Line of Flight"
He (Deleuze) and Guattari prefer to consider things not as substances, but as assemblages or multiplicities, focusing on things in terms of unfolding forces - bodies and their powers to affect and be affected - rather than static essences. A 'line of flight' is a path of mutation precipitated through the actualisation of connections among bodies that were previously only implicit (or'virtual') that releases new powers in the capacities of those bodies to act and respond.
-- From "Adrian Parr - The Deleuze Dictionary" (Edinburgh University Press, 2005)
Another concept that is central to the philosophy of Deleuze and Guattari and which is likewise an apt representation/model that captures that nature of inter-connectivity and organization as envisioned in Holochain is that of the rhizome. "As a model for culture, the rhizome resists the organizational structure of the root-tree system which charts causality along chronological lines and looks for the original source of 'things' and looks towards the pinnacle or conclusion of those 'things.' A rhizome, on the other hand, is characterized by 'ceaselessly established connections between semiotic chains, organizations of power, and circumstances relative to the arts, sciences, and social struggles.' Rather than narrativize history and culture, the rhizome presents history and culture as a map or wide array of attractions and influences with no specific origin or genesis, for a 'rhizome has no beginning or end; it is always in the middle, between things, interbeing, intermezzo.'
Mutual Credit Accounting and Currencies
Holochain leverages an accounting system of mutual credit as most suited for a distributed economy. In a mutual credit system, no token/currency/credit can be issued out of fiat (i.e. every issuance must have a corresponding/offsetting debit in the registers).
Managing mutual credit limit (currency supply = set credit limits) can be set based on demand, allowing for the supply to expand and contract based on patterns of use, demonstrating the market demand for the value people (e.g., community) are providing.
Holochain allows for designing all kinds of "current-sees", depending on context and needs.
Arthur Brock writes in a blog post on designing social flows:
How is “awareness” wired into organizations? Through the currencies we create as shared symbol systems to shape, enable and measure value flows (Think “Current-Sees” to keep in mind they’re not just money.). These currencies form the nervous system of a social organism, and they are the best way to observe and to modify its pattern of awareness.
As humans, we know that people are born and that they die, but as far as the government is concerned, citizens are issued through birth certificates and expired through death certificates -- and a government’s systems are designed to service citizens. A government service literally cannot “see” you if you don’t show up in the currencies by which the flow of services are managed.
Holochain offers a general framework for currencies design and implementations as compositional abstractions, and Arthur Brock and Eric Harris-Braun, among the core founders of Ceptr, Holochain, and the Holo initiative, have extensive experience in designing custom currencies and currency solutions for various economies, communities, and businesses.
Sovereign Accountable Commons vs. Decentralized Autonomous Organizations
Sovereign Accountable Commons (SACs) is akin to Decentralized Autonomous Organizations (DAOs) on the blockchain but incorporated/implemented within the DHT-scape of Ceptr and Holochain's distributed architecture, rather than the blockchain.
A SAC runs as a collectively distributed application, it's algorithms setting availability and redundancy based on the size and scale of the network. Mutual sovereignty is ensured as assets are stored in a DHT with redundancy, with the group also maintaining a copy. Thus, neither the group nor any individual could threaten to withhold value that was generated by a participant in order to coerce them to continue to participate.
All data and assets shared into the commons are held in common and are not stored in identical copies of a global ledger, but rather in shards of a Distributed Hash Table (DHT) with algorithms to assure adequate redundancy and availability.
This mode of distribution of shared processes makes consensus and data verification byproducts, serving to validate that a node’s processing has not become corrupted. Corruption is immediately apparent, easily tracked and compromised nodes blacklisted from further access.
As the paper states:
Cells each carry instructions (in the form of DNA), not a record of the actions of every cell, which enables them to construct whatever future actions are needed. Language is carried by all language speakers as the processes to decode and encode the meaning of language, rather than a global ledger of every sentence everyone has spoken which needs some kind of crazy consensus to be committed into our brains. Ceptr is structured the same as the patterns of collective intelligence found in nature.
Usage is highly scalable because it is constructed via a fractal localized architecture instead of having the bottleneck of a global ledger which requires consensus about interactions and data which simply should not require any consensus to be validly committed. There’s no wasted processing power from Proof of Work or undesirable Pareto Effects from Proof of Stake.
Holochain as Designed For People
The Holochain framework for prototyping and developing distributed hApps is designed to be maximally intuitive and accessible to the wider audience with as little technical or other barriers to entry and participation as possible, not limited to niche specialist developers or fringe communities of particular nerd subcultures. It is akin to a user-friendly web development framework and is intended to further support a number of mainstream programming languages in the near future (such as Python, Ruby and - pleasantly surprising, among others also Lua, one of the best-suited languages for the purpose of writing scripts and tiny adjunct applications). In the following we'll give a general overview of the basic structure of a hApp, the tools provided and how to go about prototyping a hApp with relative ease (Linux as the OS is assumed, though Windows instructions are also found in the referenced links and official docs) and shed some more light on the project's vision and philosophy as we go along.
This is part one of a three-part series on Holochain. In part two of the series, we will look at the technical specifications and architecture of hApps in the Holochain ecosystem. In part three we will look at the projects and communities emerging around Holochain.
A list of available working hApps is available here. Examples include a distributed Twitter clone (Clutter), a Holochain implementation of the Ethereum DAO, a distributed notary system and public key infrastructure (DPKI), a vault for managing how other apps access one's personal information, etc.
The Mattermost Holochain and Ceptr community chat can be logged into here.
The developer documentation (not including the Rust rewrite) is hosted here.
The Github repository - here.
Ceptr's official site, blog, video material, and lectures are here.
An in-depth Reddit discussion on the similarities and differences with IOTA can be found here.
Disclaimer: information contained herein is provided without considering your personal circumstances, therefore should not be construed as financial advice, investment recommendation or an offer of, or solicitation for, any transactions in cryptocurrencies.