Acerca de Internet Computer

A lo largo de este sitio quizá encuentres términos que te suenen extraños si no eres asiduo al ecosistema, para eso hemos creado un Diccionario que puedes consultar cuando lo desees 🤓

Un poco de historia

He encontrado este párrafo en una publicación de Dominic y creo que es una muy buena forma de comenzar a contar esta historia. Esto decía Dominic acerca de como nace la idea de Internet Computer:

Cuando comencé a trabajar a tiempo completo en blockchain en 2013, mi principal interés personal era diseñar mecanismos de consenso más rápidos que funcionaran con arquitecturas de prueba de participación. En el verano de 2014, comencé a trabajar en un concepto llamado Pebble. Ese proyecto no sucedió en gran parte debido a los aprendizajes que obtuve en la escena Ethereum. En ese momento, absorbí el concepto de una “computadora mundial” y se convirtió en mi Santo Grial: esto era lo que pensaba que debería ser Internet en el futuro.

Dominic Williams

Introducción

Internet Computer es una blockchain pública que tiene como objetivo desarrollar una nueva internet capaz de albergar prácticamente cualquier escala de aplicación, desde simples contratos inteligentes o aplicaciones DeFi hasta sistemas empresariales sin necesidad de recurrir a los cloud-services centralizados como AWS, Azure o Google.

Nosotros decimos que Internet Computer, es una blockchain de tercera generación. Así como Bitcoin, en un comienzo se creó como una reserva de valor (el famoso “oro digital”) y luego llegó Ethereum con sus DeFi y la ejecución de software on-chain, hoy llega Internet Computer para extender, descentralizar y mejorar la World Wide Web (ni mas ni menos 😅).


Estructura

Internet Computer se basa en un protocolo blockchain llamado Internet Computer Protocol (ICP). La red en sí está construida a partir de una estructura que consta de varias partes. En la parte inferior hay centros de datos independientes (data centers) que alojan nodos de hardware especializados (nodes). Estos nodos se combinan para crear subredes (subnets) y las subredes alojan contratos inteligentes (canisters) que son unidades informáticas interoperables que cargan los usuarios y contienen código y estado. Aquí te dejamos un gráfico que quizá te ayude a comprenderlo 👇🏽

Si quieres ver un desarrollo completo del aspecto técnico, puedes entrar aquí

smart contracts Canisters

Una de las grandes particularidades que distinguen a Internet Computer de otras blockchains es su evolución de los contratos inteligentes: los Canisters. Estos brindan muchas características que actualmente son atendidas por diferentes partes de la pila de tecnología heredada. Debido a la forma en que se construyen y funcionan los canisters, los usuarios ya no necesitan contar con servidores de base de datos, servicios DNS, servidores web o cortafuegos, entre otras cosas, porque todos estos servicios y funciones los proporcionan los canisters trabajando en un entorno a prueba de manipulaciones.

Algunas características de los canisters son:

  • Se ejecutan a la velocidad de la web
  • Pueden ofrecer experiencias web directamente a los usuarios finales proporcionando seguridad de blockchain de extremo a extremo
  • Se pueden usar para crear dApps escalables
  • Pueden procesar y almacenar datos a una pequeña fracción del costo de otras blockchains

Puedes leer mas acerca de los canisters en el Medium de DFINITY.

NNS

Otro de los conceptos básicos necesarios para entender el funcionamiento de Internet Computer es el del NNS (Network Nervous System).

El NNS es el sistema de gobernanza que se encarga de gestionar la Internet Computer de forma abierta, descentralizada y segura. Almacena información sobre qué nodos pertenecen a cada subnet, toma decisiones sobre cómo actualizar esta información y se encarga de la economía de los tokens, entre otras cosas.

Dentro del NNS, los usuarios pueden bloquear sus ICP en una neurona para obtener capacidad de voto, este voto lo pueden utilizar para aceptar o rechazar distintas propuestas relacionadas con la red o incluso realizar sus propias propuestas. Aquellas neuronas que participen de las votaciones, recibirán recompensas de forma proporcional a su actividad en tokens ICP.

Creando en el IC

Construir dApps en Internet Computer se puede hacer de forma muy fácil, utilizando cualquier lenguaje que pueda ser compilado por WebAssembly, es decir: Rust, God, o Motoko. Este ultimo es el lenguaje que ha creado DFINITY para que desarrolladores puedan hacer dApps en el Internet Computer aprovechando al máximo las características de la plataforma.

Para impulsar los cálculos y la gestión de memoria de los canisters, se utilizan ciclos, funcionando mediante un mecanismo comparable al gas de Ethereum. Los ciclos se crean a partir de tokens ICP en el NNS y su valor es casi constante, lo que garantiza que el costo del cálculo no fluctúe. Los ciclos reflejan costos operativos como hardware, energía, almacenamiento y ancho de banda, y se queman cuando se usan.

Gracias al modelo de reverse gas, no son los usuarios sino los desarrolladores quienes pagan por el cómputo de los canisters, esto es un gran beneficio, ya que sus dApps son mucho más accesibles al público general.


¿Código abierto?

Una pregunta muy recurrente a la hora de hablar de Internet Computer es si es de código abierto. La respuesta a esta pregunta es si.

El 10 de mayo de 2021, tres días después del lanzamiento de la etapa Mercury Genesis, la fundación DFINITY, publicó el código de fuente de Internet Computer aquí.

Este importante lanzamiento refleja la visión de la Fundación DFINITY de hacer que el código sea accesible y comprensible, al tiempo que invita a la comunidad de desarrolladores a inspeccionarlo y verificarlo.

DFINITY Foundation

Los principales elementos del código publicado son:

  • Réplica: Es una colección de componentes de protocolo que son necesarios para que un nodo participe en una subred.
  • Administrador de nodos: El administrador de nodos es un componente de Internet Computer que administra la réplica.
  • Network Nervous System Canisters: El NNS es el sistema algorítmico autónomo que gobierna la red de Internet Computer y gestiona todo, desde la economía hasta la estructura de la red.

¿Bajo que licencia? La mayoría está bajo licencia Apache 2.0, a excepeción de algunas cosas que se encuentran bajo Internet Computer Community Source License y Internet Computer Shared Community Source License.

Esta información esta en constante actualización


Roadmap

En enero de 2021, Dominic Williams, publicaba este roadmap a 20 años el cual podríamos resumir en tres puntos claves:

Dentro de cinco años: las escuelas enseñarán sobre Internet Computer y Motoko. Algunos servicios abiertos de internet habrán logrado un éxito sustancial y habrá una comprensión generalizada de lo que es el ICP.
Dentro de 10 años: Internet Computer estará en camino de superar el ecosistema de internet de propiedad cerrada de las grandes tecnologías; grandes compañías de internet redirigirán sus fondos a ICP y DeFi estará a la par con la tecnología financiera tradicional.
Dentro de 20 años: ICP será más grande que la internet cerrada de hoy. La mayor parte de la infraestructura crucial de la sociedad se alojará en él y las personas de todo el mundo se beneficiarán de una privacidad y libertades personales enormemente mejoradas.

Si te das un poco de maña con el inglés o puedes contar con la ayuda de algún traductor, te recomendamos leer el roadmap completo!

Cierre

Estos son algunos de los conceptos claves para entender qué es y cómo funciona Internet Computer, con el paso del tiempo, iremos profundizando sobre algunos de los temas que aquí aparecen y agregando nuevos que ayuden a entender su funcionamiento y estructura.