In the world of crypto (but not of it!)

Emaline Friedman
Holochain
Published in
6 min readOct 24, 2017

Vean una fantástica traducción al español a continuación por Giancarlo Sandoval

In the (recent) beginning, there was Bitcoin. Who’d have thunk that a decentralized, ledger-based payment system would launch a network protocol, Blockchain, capable of stirring up the web as we know it?

Alternatives to the mess of corporate-controlled mega-platforms have become more complex ever since. As decentralized and distributed technologies begin to displace existing power structures, the topic of how to participate becomes more urgent.

But participation could mean anything from crypto-investing, to clandestine transacting, to re-configuring supply chain management, to who knows what? We’re taking a look at what this new world means for developers. We have to ask: What should I build? On which system? What the heck am I in for?

And it’s worth the time to really think about this. Here are some of the points of comparison that are useful in cutting through the hype of tech that bucks the man. Because after the hype comes actually building things that work — and that get creative with new architectures to increase freedom, agency, security….all the great things that motivated many to entertain decentralized and alternative networks in the first place.

Let’s take the following dimensions: decentralization, distributed app environment, scalability, custom data validations, data integrity, distributed hash table usage, and secure hash chains

…to compare blockchain, IPFS, relational databases, and our baby (in alpha, aww!), Holochain.

Feature comparison…go!

Holochain in Context

While it solves plenty of problems related to data integrity and validation, that has ramifications that extend beyond the decentralization space, Holochain’s primary purpose is to run distributed apps. This of course makes Ethereum/Blockchain the main comparison above to press. Scrutinizing the chart a bit, though, one sees that Holochain infuses a distributed app environment with features normally used to make file-sharing databases that can scale both secure and feasible.

Costliness of gas is definitely something one needs to consider at the offset. This is one part of an overarching sense of the “high-stakes” ethos of developing on blockchain — some former blockchainers working on the project have described it as preparing for a rocket launch, with all the requisite time and energy spent in tests and reviews. When it’s out there, it’s out there. Ethereum is just plain not a full stack development environment anyway — it often requires off-chain solutions to support the full transaction demands of more complex systems, let alone tools and interfaces that are geared toward end-users.

In constrast, Holochain was set up to enable the same low barrier of entry for developers as for users (hence its first app, Holo, a hosting ecosystem geared toward letting users who aren’t committed to running full nodes use dApps). We’re currently setting up RAD (rapid app dev) tools to make the process more accessible, over and above the fact that you can also write on it using familiar languages, like Javascript.

Going back to the chart, another major point distinguishing Holochain from Ethereum/blockchain is the load required by clients. It looks quite a bit more like that required by databases than by distributed app environments. This is because Holochain doesn’t require that every client hold a full ledger of all transactions on the network. While it’s not within the scope of this post to give a full explanation of how holochains work, suffice to say that the distributed hash table and custom data validations are key pieces of a wholly different mode of distributed computing. One that centers on individuals and the apps they use in order to ensure the system’s eventual consistency, instead of the massive load required for each client to carry around bird’s eye view of transactions that don’t even pertain to them.

Stay tuned for more comparisons, deeper musings, and other collaborative posts!

— — — — —

En el mundo de cripto (¡pero no de él!)

En el comienzo reciente estaba Bitcoin. ¿Quién hubiera pensado que un sistema descentralizado de pago basado en un registro lanzaría un protocolo de red, la Blockchain, capaz de cambiar el mundo como lo conocemos?

Las alternativas al desastre de las mega-plataformas controladas por corporaciones se han hecho más complejas desde entonces. En tanto las tecnologías descentralizadas y distribuidas han continuado desplazando las estructuras de poder existentes, el tema de cómo participar se hace más urgente.

Pero la participación puede significar cualquier cosa desde invertir en cripto-monedas, transacciones clandestinas, la reconfiguración del manejo de la cadena de suministros, hasta quién sabe qué. Estamos adentrandonos a lo que este nuevo mundo significa para desarrolladores. Tenemos que preguntar: ¿Qué se tiene que construir? ¿En qué sistema? ¿Qué me espera?

Y vale el tiempo para pensar seriamente sobre esto. Aquí hay algunos puntos de comparación que son útiles para sobrepasar el hype de la tecnología. Porque después del hype viene la creación de cosas que funcionan — y el ponerse creativos con nueva arquitectura para incrementar libertad, agencia, seguridad. Todas las geniales cosas que motivaron a muchos a pensar en redes descentralizadas y alternativas en primer lugar.

Veamos las siguientes dimensiones: descentralización, ambiente para apps distribuidos, escalabilidad, validación personalizada de datos, integridad de datos, uso de la tabla distribuida de ha, y cadenas de hash seguras…

…para comparar a la blockchain, IPFS, bases de datos relacionales, y nuestro bebé (en alpha, aww!), Holochain

Holochain en contexto

Mientras que muestra muchos problemas relacionados a la integridad de datos y validación, lo que tiene ramificaciones que exceden más allá del espacio descentralizado, el objetivo primario de Holochain es ejecutar apps distribuidos. Esto hace que la comparación con Ethereum/Blockchain sea la más importante. Escrutinizando la tabla, sin embargo, uno ve que Holochain implementa un ambiente para apps distribuídos con características que normalmente son utilizadas para hacer que las bases de datos para compartir archivos puedan escalar tanto seguramente como factualmente.

El costo del gas es definitamente algo que que hay que considerar desde el comienzo. Esta es una parte de un sentido más general del ethos de las “apuestas altas” de desarrollar en la blockchain. Algunas personas que solían trabajar en blockchain han descrito esto como prepararse para el lanzamiento de un cohete, con todo el tiempo y energía requeridos para pruebas y cambios. Cuando está afuera, está afuera. Ethereum es simplemente no un ambiente de desarrollo full stack, siempre requiere soluciones fuera de la cadena para apoyar las demandas de sistemas más complejos, sin mencionar las herramientas e interfaces que están dirigidas a usuarios.

En contraste, Holochain fue creada para habilitar una baja barrera de entrada para desarrolladores como para usuario (por ende su primer app, Holo, un ecosistema de hosting con el objetivo de que los usuarios que no están comprometidos a ejecutar nodos completos usen dApps). Estamos actualmente completando herramientas RAD (rapid app dev) para hacer que este proceso sea más accesible, sin contar con que se pueden desarrollar usando lenguajes familiares, como Javascript.

Volviendo a la tabla, otro punto importante que distingue a Holochain de Ethereum/blockchain es la carga requerida por sus clientes. En este sentido se ve más como lo que es requerido por bases de datos que lo que es requerido por ambientes para apps distribuidos. Esto es porque Holochain no requiere que cada cliente tenga una copia completa de todas las transacciones en su red. Mientras que no está en el rango de este post dar una explicación completa sobre como las holochains funcionan, es suficiente con decir que la tabla distribuida de hash y la validación de datos personalizada son piezas claves de un modo de computación distribuida completamente diferente. Uno que se centra en individuos y los apps que usan para poder asegurar la eventual consistencia del sistema, en vez de un carga masiva requerida para que cada cliente lleve una copia de transacciones que ni siquiera les pertenecen.

¡Mantente atentx para más comparaciones, meditaciones más profundas, y otros posts colaborativos!

--

--

Emaline Friedman
Holochain

autonomist marxist, psychoanalytic therapist, comms director @neighbour_hoods