>

Testeando
Página de Test

Presentando DTube: una plataforma descentralizada de vídeo usando STEEM e IPFS. PARTE I

¿Qué es DTube?

DTube es una aplicación escrito totalmente en Javascript, que se ejecuta sobre el explorador, y que te permite subir y ver vídeos en la parte superior de la red IPFS. Y sobre todo, usa STEEM como la base de datos y habilita ganar recompensas a partir de tus subidas de videos.

 



Esto podría sonarle conocido a quienes se recuerdan del anuncio del Proyecto SteemQ, el cual hizo ganar unos 5 mil dólares en recompensas, pero nunca fue liberado y terminó siendo abandonado. Aun después de un año sigue siendo no funcional, y es más, su versión Alfa actual utiliza un servidor back-end para todo y por lo tanto sigue siendo centralizado. Estoy seguro que no fui la única persona que quedó desepcionada por SteemQ.

Decidí por un enfoque distinto. Primero construir algo-hablar después. Si te estás preguntando, hice todo por mi cuenta(por supuesto, con la ayuda de las librerías de código abierto) y tomó casi 4 meses para llegar a lo que tengo ahora, comenzando desde cero.

Una buena parte de este artículo será técnico y quizás no sea tan interesante para algunos, pero creo que una gran parte de mis seguidores están interesados en este tipo de discusiones, así que voy a explicarles cómo es que funciona esto. Disculpen tanta palabrería

Cómo usar DTube

Ingresando

  1. Introduzca tu Usuario de STEEM
  2. Introduzca tu "Private Posting Key", lo encontrarás haciendo así, como lo indica la ilustración:

Ingresando Modo Multiusuario

Youtube y Facebook tienen esta característica maravillosa que te permite enlazar varios canales a tu cuenta e intercambiar entre ellos fácilmente. Estoy seguro que no soy el único usuario de STEEM que posee múltiples cuentas, y tener que usar diferentes navegadores o bots para votar con todas las cuentas y eso aburre rápidamente. En DTube, tú puedes ingresar con tantas cuentas como quieras e intercambiar entre ellas.

Yo no sé por qué SteemIt aun no tiene esta característica.

Configuración

DTube te permite tener un menú de configuración accesible desde cualquier parte de la aplicación. El menú te permite ajustar tu Poder de Voto, filtrar contenidos NSFW de manera similar como lo hace SteemIt.com, y sintonizar las puertas de enlace de IPFS: las puertas de enlace de IPFS es por donde cargamos los archivos, mientras que la API es lo que usamos para subirlos.

Subiendo archivos

Ante todo, necesitas haber ingresado a DTube para tener acceso a la página de carga. Entonces, simplemente agrega un vídeo, una miniatura, y finalmente llena el texto para el Cadena de Bloques y Enviar!

Si todo sale bien, entre 0 y 30 segundos después de haber enviado el archivo, deberá a comenzar a reproducirse el vídeo, dependiendo de la puerta de enlace y la velocidad de tu conexión.

Navegando por los Vídeos

Actualmente existen 3 maneras principales para encontrar contenidos en DTube. Puedes ir a la página principal y encontrar las categorías NEW(nuevo), HOT(caliente) y TRENDING (tendencia). Funcionan al igual que en SteemIt.
Puedes acceder a un canal de un usuario en particular yendo directamente a https://dtube.video/c/curator para ver mi cuenta de prueba por ejemplo. Finalmente, también puedes usar la opción de Búsqueda en la barra superior, más información sobre esto se tratará más adelante en este mismo artículo.


Cómo funciona DTube

Usando la Cadena de Bloques (Blockchain) STEEMcomo una base de datos.

Debido a que queremos que DTube sea realmente descentralizado,no podemos contar con un servidor que ejecute una base de datos y lo use para realizar consultas. El uso de un blockchain es la solución obvia. STEEM tiene muchas ventajas sobre otros Blockchains. Es rápido (cadenas de 3 segundos). Es gratis, cualquiera puede usarlo sin tener que depositar ningún tipo de moneda, y las transacciones no tienen ningún tipo de recargos. ¿Quién querría pagar algún dinero para subir vídeos, comentar un vídeo o incluso votar? Nadie. Como ñapa, ya STEEM tiene su propio mecanismo de recompensas. 

Cualquier vídeo subido en DTube llega a ser un contenido en STEEM, que puede ganar recompensar por 7 días. DTube no usa el título o el cuerpo de un contenido para almacenar información, por lo tanto si no quieres subir un video y que aparezca en tu FEED, puedes editarlo o eliminarlo, el vídeo seguirá estando intacto en DTube. Mientras no exista otra posibilidad de publicar en otras plataformas como steemit.com o busy.org, pienso que el comportamiento actual de la aplicación está bien y será de ayuda para su crecimiento y los usuarios obtengan sus recompensas.

Usando IPFS como un almacenamiento de archivos estático.

IPFS es un protocolo que permite el almacenamiento de archivos descentralizado. El prinicipio que está detrás de esto se llama Tablas de Hash Distribuidas (DHT por sus siglas en inglés). El mismo principio también potencia la Red BitTorrent. Así como las Criptomonedas usa la criptografía asimétrica, las Redes DHT usan "hash (#)" o funciones resumen en contenidos para identificar un archivo. El hash (resumen) puede convertirse en el identificador de un archivo, y es tan fácil como re-hashing un archivo y asegurarnos que los "hashes" (resúmenes) coinciden para asegurarnos que es el mismo archivo original que nos fue enviado. 

Entonces, ¿por qué no usar Torrent? Torrent sin duda alguna ya tiene más contenido y es el más corriente. Sin embargo, Torrent no fue concebido para la Web. Algunas implementaciones como WebTorrent están intentando que funciones, pero todavía requiere de algunos clientes "híbridos" que actuarían como puentes para transferir archivos desde clientes rígidos como μTorrent a clientes Web que se ejecutan en un navegador. No muy conveniente, mucho menos eficiente. Estoy seguro que muchos de ustedes han usado PopcornTime para ver algunos contenidos "piratas" y lo han disfrutado, pero construir algo similar que se ejecute en un navegador sin tener que recurrir a clientes híbridos para conectar a la gente, es tristemente imposible. 

IPFS es un protocolo más joven, de código abierto, y desarrollado activamente. Tiene un futuro brillante por delante. Usarlo como el prinicipal medio de almacenamiento para este proyecto fue algo más que obvio.

IPFS: Costo de Almacenamiento.

IPFS es chévere, pero no es mágico. Alguien necesita sembrar los archivos, y tu navegador no puede almacenar de manera permanente archivos grandes (el almacenamiento local está limitado hasta 50MB en la mayoría de los navegadores), así que sembrar a través de la aplicación no es posible por ahora. Aunque mi primera idea fue pedirle a algunos testigos (witness) para ejecutar algunos nodos de IPFS, llegó a estar claro luego de pocas conversaciones que esto crearía más problemas que soluciones debido a que la mayoría de los testigos (witnesses) no son personas técnicas y ejecutar y configurar un nodo IPFS de manera correcta parece ser una Gigantesco Desafío para la mayoría. Todavía creo que esta solución es la correcta, pero claramente necesitaría configurar un docker o algo fácil para que los testigos se unan activamente a la red DTube y comenzar a sembrar archivos (y ganar y compartir recompensas).

En vez de hacer eso, busqué los nodos IPFS existentes y contacté el propietario de la Tienda IPFS, un sitio web que te permite pagar en Bitcoin para mantener tus archivos en la red IPFS. Después de obtener unas respuestas positivas e instructivas de parte de @nannal (steem, twitter/etc),supe que había encontrado el hombre indicado.

He creado recientemente la cuenta @dtube. Esta cuenta será usada para cobrar un 25% de las recompensar del autor de DTube. 10% de estos cargos serán utilizados para pagar el almacenamiento de los archivos a largo plazo en la Tienda IPFS. La tarifa de $0.044 por GB por mes. Así que, por ejemplo, digamos que subes un vídeo de 100MB, que gana $10, entonces $0,25 irá para @nannal y asegurar la redundancia de datos por ~57 meses. Una vez pasado este tiempo, los usuarios necesitarán bien sea pagar por su cuenta (criptomonedas son aceptadas por supuesto) para mantener los archivos sembrados, o sembrar directamente en su propia PC y conexión.

Diseño

La mayoría de los desarrolladores conocen el dicho "no reinventes la rueda". Lo mismo aplica para el diseño y la experiencia del usuario. La plataforma líder de Vídeo YouTube se ha ejecutado con éxito durante años, y copiarlo tiene sentido. Especialmente cuando soy un pichón en el desarrollo del front-end y desarrollo de la Interfaz de Usuario (UI). He intentado copiar la apariencia de YouTube utilizando el marco de Semantic UI. Aunque me siento orgulloso de cómo se ve, estoy seguro también de hay más gente talentosa que me "cachetearía" por cómo se ve de malo y cómo se ejectuta.

Estoy muy abierto a las sugerencias y recomendaciones. O si eres un diseñador web, con un buen portafolio, y con experiencia en Semantic UI, siéntase libre de contactarme en el chat de steem.chat.

Pie de Nota Importante:
Esta es una traducción del post original en Inglés de https://steemit.com/video/@heimindanger/introducing-dtube-a-decentralized-video-platform-using-steem-and-ipfs, autorizado por el mismo autor @heimidanger.

Exponsor SeedingUp | Digital Content Marketing