Tribalyte Technologies Tribalyte Technologies
  • Inicio
  • Misión y visión
  • Nuestros expertos
  • Nuestras soluciones
  • Casos de éxito
  • Blog
  • Contáctanos
  • Únete al equipo
Tribalyte Technologies Tribalyte Technologies
  • Inicio
  • Misión y visión
  • Nuestros expertos
  • Nuestras soluciones
  • Casos de éxito
  • Blog
  • Contáctanos
  • Únete al equipo
Ene 10

Lanzamiento de BrightByte v0.2

  • enero 10, 2019
  • Esteban Lopez
  • Blockchain, Desarrollo de software, Tecnologías

¡Hola a todos! En esta entrada del blog hablaremos sobre un proyecto que hemos desarrollado internamente en Tribalyte Technologies.

Se trata de BrightByte, un sistema de reputación en la nube que hace uso de la tecnología blockchain y smart contracts. En este caso el sistema está orientado a generar una reputación para desarrolladores de software en base a la calidad del código escrito. Para ello BrighByte nos permite valorar los cambios («commits» en Git) que otros usuarios suben a un repositorio remoto, de tal forma que el sistema genera una reputación para cada usuario, que va variando en el tiempo.

Actualmente el sistema soporta direcciones de BitBucket y GitHub, aunque en el futuro se ampliará su compatibilidad con más servicios de repositorios Git en la nube como puede ser GitLab.

La aplicación se ha desarrollado como código libre y se encuentra públicamente disponible en el siguiente repositorio: https://github.com/TribalyteTechnologies/BrightByte. De esta manera cualquiera puede descargar y desplegar el sistema en su empresa o comunidad de desarrollo.

 

Funcionamiento

La primera vez que queramos acceder a la aplicación debemos registrarnos. Se nos pedirá una contraseña y se generará un fichero de identidad (formato JSON) encriptado con esa contraseña, por tanto, no debemos olvidar la contraseña, ni perder el fichero de identidad, ya que contiene nuestra clave privada, que es irrecuperable.

Cada vez que queramos entrar en la aplicación (hacer «login«) deberemos cargar el fichero de identidad e introducir nuestra contraseña, como se muestra a continuación:

image3

 

El primer apartado que analizaremos es el de mis cambios o «commits». En este apartado dispondremos de todos los cambios que hemos registrado en el sistema. Cuando añadimos un cambio («add commit«), tenemos que indicar la dirección (URL) del «commit» de BitBucket o GitHub y las personas que queremos que revisen ese «commit». La lista de revisores se selecciona entre todos los usuarios registrados en el sistema. Si seleccionamos alguno de los «commits» que ya haya sido revisado, nos aparecerán los comentarios de los usuarios que indicamos para revisar (revisores) y podremos valorar positivamente o negativamente sus comentarios.

image1

 

En el apartado de revisiones aparecerán todas las peticiones de revisión de «commits» en los que el usuario ha sido mencionado para revisar, donde podrá comentarlos y puntuarlos mediante un sistema de clasificación basado en estrellas (rating de 0 a 5). El número de estrellas que posea ese «commit» será la media de las puntuaciones dadas por los usuarios que lo hayan revisado.

image2

 

Dispondremos de un apartado de clasificación o ranking donde se nos mostrarán todos los usuarios ordenados por reputación, siendo el primer usuario el que tiene más reputación y el último el que menos. También se nos mostrarán las revisiones que ha realizado («reviews»), y la cantidad de «commits» que han subido. Por último, se mostrará un porcentaje de aceptación que indicará si sus revisiones han sido aceptadas o denegadas, siendo 100% todo votos positivos (o sin votar) y 0 todos los votos negativos.

image5

 

Tecnologías utilizadas

A continuación detallaremos la tecnología que hemos empleado en el desarrollo del sistema. El diseño de arquitectura del sistema se basa en la simplificación extrema, por lo que actualmente (BrighByte v0.2.0) se compone solamente de una aplicación web desarrollada con Ionic Framework (front-end) y una serie de smart contracts que se despliegan directamente sobre una red blockchain. De esta manera, el front-end actualmente interactúa directamente con los nodos de la red blockchain a través de su API JSON-RPC, a través de librerías que veremos a continuación.

image4

Truffle

Antes que nada se deben compilar los smart contracts y se deben desplegar en la red blockchain. Para ello se hará uso de Truffle.

Truffle es un framework que nos permite compilar, desplegar y testear smart contracts de manera sencilla y rápida, permitiéndonos crear y desplegar aplicaciones descentralizadas.

Web3

Web3 es una colección de librerías de javascript que nos va a permitir conectar nuestro front-end con los smart contracts. Su uso es fundamental ya que nos va a permitir llamar a los métodos que hemos creado en los smart contracts desde el front-end.

Blockchain

Blockchain o cadena de bloques es una red descentralizada, formada por un gran número nodos encargados de verificar y validar las operaciones y generar los bloques, de manera que el bloque correspondiente a una determinada operación (en cada bloque puede haber un número variable de transacciones) se registre en un “gigantesco libro de cuentas” único, común y compartido. A pesar de que la blockchain más conocida es Bitcoin, existen algunas como Ethereum que presentan mejoras debido a que permiten el uso de Smart Contracts, de los cuales hablaremos posteriormente.

Es por ello que nuestra aplicación funciona sobre Alastria. Alastria es una red Blockchain/DLT semipública, independiente, permisionada y neutral, diseñada para ser conforme con la regulación existente, que permite a los asociados experimentar estas tecnologías en un entorno cooperativo. Para más información sobre Alastria, podéis acceder a nuestro post aquí.

Smart Contracts

Los smart contracts son programas informáticos que ejecutan acuerdos establecidos entre dos o más partes cuando ocurre una determinada condición. Es decir, son contratos que se ejecutan y se cumplen de manera autónoma sin depender de una tercera persona que lo haga cumplir. Para la creación de nuestros smart contracts hemos usado el lenguaje de programación Solidity, que es un lenguaje de programación de alto nivel que posee características similares a Javascript. Para más información acerca de los smart contracts, podéis consultar nuestro post aquí.

Esperamos que con esto podáis tener más claro como es el funcionamiento de BrightByte y animamos a todos los equipos de desarrollo a utilizarlo y enviarnos vuestros comentarios. ¡Hasta el próximo post!

 

Artículos Relacionados:

  • Introducción a la programación de un Smart ContractIntroducción a la programación de un Smart Contract
  • 6º aniversario¡Celebramos nuestro 6º aniversario!
  • Ionic 4 (parte 1) - IntroducciónIonic 4 (parte 1) - Introducción
  • Devops : Qué es y cómo implementarlo - Tribalyte Technologies | Alessandro Barbera FormicaIntroducción a DevOps. Qué es y cómo implementarlo
  • Los 5 mejores regalos tecnológicosLos 5 mejores regalos tecnológicos
  • Facebook
  • Twitter
  • LinkedIn
  • E-Mail

About The Author

Esteban es ingeniero informático. Su función en Tribalyte se centra en el desarrollo de aplicaciones Blockchain full-stack, trabajando con Typescript, Angular y Solidity. Posee un gran entusiasmo por la tecnología y cada día se dedica al máximo para mejorar y adquirir nuevos conocimientos.

Comments are closed.

ELIGE UNA CATEGORÍA

  • Blockchain
  • Consejos tecnológicos
  • Desarrollo de aplicaciones
  • Desarrollo de software
  • General
  • Sistema embebido
  • Tecnologías
  • Uncategorized

Una compañía dedicada al desarrollo de apps, software y soluciones embebidas para empresas.

SOCIOS

Contacto

Glorieta de Quevedo 8 6º2
28015 Madrid (ESPAÑA)
Phone: +34 919 049 820 E-Mail: contact@tribalyte.com Web: www.tribalyte.com
Sello PYME INNOVADORA 21/01/2025
PYME INNOVADORA
Válido hasta el 21 de enero de 2025
escudo de MEIC 21/01/2025

AYUDA

  • Política de privacidad
  • Política de calidad
  • Política de seguridad
  • Términos de uso

CERTIFICACIONES

⠀⠀⠀⠀⠀⠀⠀⠀⠀

SUBVENCIONES

Tribalyte Technologies S.L. ha    conseguido la ayuda C007/20-ED de Red.es para el impulso y la promoción de actividades de I+i y para el fomento de la inversión empresarial para desarrollar el proyecto iPatia. Así mismo, valoramos muy positivamente la contribución del FEDER, principal fondo de la política de cohesión europea, por lo que supone de impulso a nuestro trabajo y en consecuencia al crecimiento económico y la creación de empleo de esta región y de España en su conjunto.
Esta página web utiliza cookies para mejorar su experiencia de usuario y para recabar estadísticas anónimas de uso. Aceptar Más información