Steemit Crypto Academy Season 3 Week 7 | Decentralized Apps (DApps) - Future Apps From Blockchain System| Homework post for Professor @wahyunahrul by damurq

2개월 전

image.png

Introducción



Entre todos los temas de esta semana este fue el que más me llamo la atención, esto debido a que soy un programador estudiante de la carrera Ingeniería informática, por lo que explorar el desarrollo de aplicaciones, así como pensar en nuevas formas de hacerlo es algo con lo que estoy íntimamente relacionado.

Antes de comenzar a contestar las preguntas que dejo planteadas el profesor @wahyunahrul, me gustaría explicar dos conceptos que serán cruciales a lo largo del desarrollo de la tarea.

Aplicaciones centralizadas

En esta área se encuentran la mayoría de las aplicaciones existentes hoy en día o al menos las más conocidas, por ejemplo: Facebook, Instagram, Tiktok, Discord.

¿Pero que hace que estas sean aplicaciones centralizadas?

Estas son consideradas aplicaciones centralizadas o simplemente aplicaciones, ya sea porque están basadas en una red centralizada (en palabras simples están gestionadas por un servidor central) o porque son gestionadas por una entidad central que tiene control completo sobre los datos de la aplicación, si bien esto en un principio se escucha dictatorial en mi humilde opinión diría que no lo es, la razón por la que digo esto es porque en la mayoría de los casos los dueños de estas aplicaciones tienen cierta responsabilidad para con su usuarios, de manera que deben mantener a estos contentos o puede que su modelo de negocio se derrumbe, del mismo modo las distintas leyes que hagan vida en el país donde este ubicada la cede de la empresa que desarrollo la aplicación o en los países donde esta se utiliza, pueden llegar a tomar acciones legales en caso de que estén haciendo un uso inadecuado, por ejemplo, en fechas recientes Facebook fue llevada a tribunales porque fue acusada de la venta de datos privados de los usuarios de sus aplicaciones, del mismo modo el descontento de las personas por el cambio de las políticas de Whatsapp provoco que mucho usuarios migraran otras aplicaciones de mensajería como por ejemplo Telegram, es así que se ganará una carrera entre los competidores donde (valga la redundancia) estos compiten por mantener un modelo de negocio sostenible a la vez que mantienen contentos a sus usuarios.

Aplicaciones descentralizadas

Este tipo de aplicaciones también son llamadas Dapps, su sistema está basado en una red descentralizada como indica su nombre, el cual surgió con la llegada de Blockchain, en el caso de este tipo de aplicaciones en la mayoría de los casos los datos son públicos y el control de las misma no recae en una sola persona, a su vez su código es open source esto permite que cualquier persona puede ser capaz de revisar el código y así ver como se trabaja con los datos. Algo interesante en este tipo de aplicaciones es que, para realizar algún cambio en el código, para agregar una funcionabilidad o realizar una actualización para cambiar algo, es necesario que la comunidad respalde esto para que sea realmente efectivo, esto fue explorado en tareas anteriores y es llamado fork.

image.png

1). Will DApps be able to replace centralized applications in other fields in the future?

image.png

En la actualidad diría que no, las aplicaciones centralizadas abarcan gran parte de nuestra forma de vida y es muy difícil que para el nivel actual de las Dapps estas terminen remplazándolas completamente en alguno de los campos, aunque esta es una opinión que debe agarrarse con pinzas, una de las razones por la que digo esto es porque considero que las Dapps están en su adolescencia, estas han ido abarcando terreno, creciendo y se han ido afianzando en los últimos años pero aún no están completamente maduras a diferencia de las aplicaciones centralizadas.

El escenario que considero más plausible es la existencia de ambos tipos de aplicaciones de manera simultánea en los distintos campos existentes.

A continuación, compartiré con ustedes alguno de los puntos que considero cruciales para comprender el presente y futuro de las apps centralizadas en comparación con las Dapps.

Facilidad en su uso

Apps centralizadas

La mayoría de las aplicaciones centralizadas existentes se pueden llegar a comprender fácilmente y del mismo modo sus interfaces son muy intuitivas, claras y fáciles de usar, esto conlleva a que para el público general sea más fácil entrar en contexto y asimilar rápidamente cada una de las funciones que abarca dicha aplicación.

Dapps.

En su mayoría las dapps son un poco toscas a las hora de presentar una interfaz intuitiva, ya sea porque los desarrolladores han puesto mayor esfuerzo en las funcionabilidades que la experiencia de usuario o por alguna otra razón, es así que para un público inexperto resulta difícil entrar y hacer vida en este tipo de aplicaciones, hay tantas cosas que hacer y conceptos detrás de esas cosas que en un principio parecen demasiado complejas por lo cual una parte de usuarios termina abandonando la plataforma.

Conclusión

En mi opinión es este el punto crucial en el cual se deben enfocar las Dapps y es justamente este punto el que la mayoría ignora, ya que si es atacado de manera correcta esta puede llegar a ganar una cantidad inmensa de usuarios en poco tiempo y hacer que sus comunidades sean más fuertes.

Seguridad

Apps centralizadas

A nivel de seguridad depende de la aplicación en si misma, el como se estructuro el código y como se abordo este tema en la creación de la aplicación, por otro lado, una de la desventaja de las aplicaciones centralizadas es la facilidad con la cual un hacker puede llegar a robar datos o hacer que la plataforma deje de funcionar en comparación con las Dapps.

Dapps.

Aquí las dapps marcan una gran ventaja ya que la forma en la que su red esta distribuida hace casi imposible que estas sean hackeadas ya que para hacerlo un grupo de hacker tendría que atacar todos los nodos que componen la red y que están ubicados en distintos lugares, siendo esta una de las principales razones por la cual muchos apoyan el uso de estas aplicaciones.

Conclusión

A nivel de seguridad las Dapps tienen una gran ventaja y es una de las principales razones por la cual sus usuarios las defiendes.

Gestión de los datos.

Apps centralizadas

En este tipo de aplicaciones la gestión de datos generalmente es llevada a cabo por una persona o grupo de persona que tiene el control total, por ejemplo, si Facebook quiere puede bloquearte la cuenta por 30 días y como un usuario normal no hay nada que puedas hacer, es más si Facebook lo deseará podría eliminar tu cuenta de su base de datos y tampoco podrías hacer mucho para evitarlo.

Dapps.

Otro punto fuerte para las Dapps las cuales son más libres en cuanto a la gestión y manejo de los datos, ninguna persona o institución tiene control acerca de los datos, además de que todos los miembros desempeñan un papel activo dentro de la misma.

Conclusión

La Dapps llevan una clara ventaja en este punto también.

Monetización y actualizaciones.

En este punto me gustaría hablar de estas dos cosas juntas ya que considero que tienen una gran influencia en el futuro de las Dapps y se relacionan directamente.

Apps centralizadas

En cuanto a la monetización esta varía dependiendo de la aplicación, pero existen varias aplicaciones que recompensan monetariamente a algunos usuarios cuando cumplen ciertas reglas o aspectos, como por ejemplo tik tok. Del mismo modo están aplicaciones poseen un sistema de negocios para ser rentables y para seguir siendo rentables estas deben estar sacando actualizaciones continuamente mejorando cada vez más la experiencia de usuario, al tener una institución o persona que gestiona todo es más fácil determinar que actualizaciones hacer, del mismo modo permite organizar mejor un equipo de programadores o desarrolladores que puedan hacer esto de la mejor forma.

Dapps.

En el caso de las Dapps estas en la mayoría de los casos cuentan con su economía interna la cual varía mucho dependiendo de la aplicación, así mismo estas pueden tener un sistema donde se deban realizar pagos para realizar transacciones, esto puede atraer inversionistas dependiendo del caso haciendo que el token suba de precio al mismo tiempo que puede imposibilitar que muchos usuarios se unan a la plataforma por su inexperiencia. Por otro lado, pero estrechamente relacionado con la monetización tenemos las actualizaciones que puede tener la Dapps y es aquí donde creo que las Dapps tienen un problema que en ocasiones las hace avanzar un poco más lento y es que al no tener un grupo de personas que toma decisiones sobre a donde dirigir la aplicación esta no puede solucionar sus errores o mejorar de forma tan acelerada como lo hacen las aplicaciones centralizadas. La razón por la que afirmo que esto esta relacionado con la monetización es porque en muchas ocasiones las personas que hacen uso de estas Dapps las ven como aplicaciones de inversión, es así que cuando se propone un gran cambio que puede llegar afectar sus ingresos estas dudan provocando tal vez que dicha actualización al final no sea llevada a cabo, esto debido a que muchas Dapps utilizan el consenso para decidir si realizar cambios o no.

Conclusión

Considero que dependiendo como se aborde la monetización las Dapp podrían utilizar esto como un plus para atraer usuarios pero que a su vez este nunca debe ser el objetivo final, del mismo modo una mejor organización, así como la creación de comunidades de programadores especializadas en el desarrollo de nuevas características o correcciones de errores de la plataforma podría resultar beneficioso para la misma y una buena gestión de esto puede hacer que las Dapps ganen terreno.

Conclusión final de la pregunta 1:

Tal como dije en un principio, en la forma en la que se están desarrollando las Dapps en la actualidad no considero que esta reemplace a las aplicaciones centralizadas en algún campo en específico, pero también considero que estas podrían ganar mayor terreno que las aplicaciones centralizadas, siempre que estas pueden llegar a eliminar sus debilidades actuales cosa que es muy difícil ya que se necesita mucha organización por parte de sus comunidades y por parte de los miembros mas influyentes de las mismas. Por ejemplo: crear un sistema que ayude a verificar errores y a mejorar las interfaces de usuario para hacerlas más amigables, al mismo tiempo que se tiene un grupo de desarrolladores capaces de programar dichas actualizaciones de manera eficiente seria un golpe sumamente duro a las aplicaciones centralizadas existentes. Al final puede que veamos a las Dapps viviendo con las aplicaciones centralizadas en igual medida.

image.png

2). Is there a possibility for DApps to steal user data?

image.png

Primero que nada, tenemos que tener en cuenta que los datos de los usuarios se registran en la cadena de bloques y que estos no pueden ser eliminados, ni modificados, además dichos datos son públicos así que cualquiera puede ver dichos datos, por lo cual considero difícil considerar que dichos datos que están a la disposición del publico puedan ser robados por las Dapps, porque tal y como dije antes son públicos.

Del mismo modo para ser considerada una Dapp esta debe ser open source, lo que implica que cualquiera puede revisar el código de la aplicación y verificar que esta sea segura lo que hace menos improbable que las DApps roben datos del usuario.

Lo que si puede pasar es que existan vulnerabilidades en el código de dicha Dapp haciendo que tenga huecos de seguridad que las personas puedan aprovechar, por ejemplo, en el año 2016 Ethereum sufrió un robo de 50 millones en Ether por una falla en el software de contrato inteligente, aunque posteriormente dicho robo fue “anulado” realizando un hard fork lo que al final dio origen a 2 Blockchian Ethereum (ETH) y Ethereum Classic (ETC).

También se debe destacar que las Dapps son propensas a lo que se conoce como ataques del 51, este consiste en que una entidad o grupo de personas se apodere de más de la mitad de los nodos que verifican las transacciones, abriendo las puertas a estos a realizar operaciones fraudulentas por tener control de la mayor parte de los nodos que componen la red.

En conclusión, aunque afirmo que las Dapps no pueden robar como tal los datos de los usuarios, podemos observar que si se pueden realizar operaciones fraudulentas si se llegan a encontrar vulnerabilidades en la Blockchain. Por último, me gustaría destacar que la autenticidad de los datos es validada también por medio de mecanismos de consenso, ya sea dicho mecanismo la prueba de trabajo o la prueba de partición.

image.png

3). Explain the ways in which a DApp promotes its application to the public?

image.png

En los últimos años hemos sido testigo del surgimiento de un gran número de Dapps, algunas han logrado triunfar, otras se están formando un camino y otras intentan no quedarse en el olvido o intentan salir de la sombra otra de Dapp más famosa. Con el internet plagado de diversas aplicaciones, las Dapps comienzan abrirse camino creando comunidades y sus propias economías, a su vez estas intentan destacar y darse a conocer y para ello han surgido varios métodos, te presentaré alguno de ellos a continuación.

Airdrops

Eventos realizados para dar a conocer a una Dapps donde se distribuyen tokens de manera gratuita realizando alguna tarea o cumpliendo una serie de reglas, generalmente estas reglas o tareas implican compartir información en una red social o algo parecido para dar a conocer a la nueva Dapps ICO Es un método utilizado por las Dapps que están comenzando en el mercado para recaudar fondos, conseguir inversionistas y promocionarse, las siglas de ICO vienen de “Initial Coin Offering “.

Pros

• Es un proceso que no es tan complicado de llevar a cabo • Ofrece gran liquidez en un corto periodo de tiempo para los inversores

Contra

• En el caso de ser un inverso hay que tener cuidado para no sufrir una estafa por parte de un scan. Un ejemplo de ICO, es NXT, este proyecto logro recaudar 16800 dólares en bitcoin por medio de la distribución de mil millones de tokens, cada token alcanzo para el año 2017 un valor de 1,94$.

STO

Más complejo que el proceso anterior y con costes más elevados porque implica la emisión de un contrato de inversión que se registra en la plataforma blockchain y que esta respaldado. A su vez este resulta más seguro que ICO. Las siglas STO vienen de security token offering’

IEO

Este es más fácil de explicar ya que consiste en vender los tokens en un Exchange sin ofrecerlos en una ICO. Este ofrece mayor seguridad, debido a que la plataforma donde se comercian los tokens ofrece confianza y protege a los inversores de actividades de fraude. En este caso las siglas vienen de Initial Exchange Offerings.

IDO

Es prácticamente un IEO con la particularidad que la plataforma a utilizar para el intercambio es una Exchange descentralizada también llamadas DEX.

ICO

Un proceso muy parecido a la oferta pública de venta, donde se vende a los inversores los tokens para recaudar dinero. La mayoría lo hace como una inversión porque saben lo rápido que puede subir el precio de una criptomoneda. Ethreum es un claro ejemplo de un ICO bien llevado, recaudando 18 millones de dólares antes de lanzarse. ICO es un acrónimo de Initial Coin Offering.

Anuncios

Promocionar la aplicación por medio de anuncios en distintas plataformas con una comunidad ya establecida es una opción que también se puede utilizar para promocionar una Dapp.

image.png

4). Choose a DApp and do a detailed analysis that proves that the DApp is a good one to use. (Provide proof with screenshot).

image.png

La Dapp que decidí escoger fue steemit.

Esta la podemos encontrar en la lista de Dapps de DappRadar.

Screenshot_15.png

Screenchot de DappRadar

Experiencia de usuario

Primero que nada me gustaría hablar sobre la distribución de los botones de cada perfil, lo cual consideró que aporta valor a la aplicación porque esta muy bien logrado, en un lado podernos encontrar una barra de navegación con todo lo referente a los post y del otro lado a la wallet y las configuraciones del perfil.

Screenshot_16.png

Screenchot de steemit
Las card que contienen un resumen del post tambien estan muy bien logradas, con un uso perfecto del espacio y con los botones necesarios para la interacción, el uso de animaciones de "Hover" al pasar el cursosr sobre ellas agrega un plus a las misma.

Screenshot_17.png

Screenchot de steemit
En cuanto a la wallet podemos encontrar una disposición adecuada de las secciones, así como un breve resumen en cada recuadro lo que puede ser de ayuda para un usuario que está utilizando la plataforma por primera vez. Así mismo podemos ver debajo una lista de las transacciones que se actualiza cada vez que se realiza una transacción relacionada con la cuenta

image.png

image.png

Screenchot de steemit

Facilidad de la plataforma ante los desarrolladores

Steemit ofrece una sección dedicada para hablar sobre las herramientas que podemos utilizar para interactuar con la blockchain algo indispensable para el desarrollo de herramientas como bots entre otras cosas.

Como programador en python esta sección me ayudo mucho a la hora de realizar un bot de discor dpar auna comunidad, del mismo modo los ejemplos y eexplicaciones on claros,

Como programador en python esta sección me ayudó mucho a la hora de realizar un bot de discord para una comunidad, del mismo modo los ejemplos y explicaciones son claros y simples y ofrece una amplia gamma de opciones para interactuar con la api, ya que podemos utilizar lenguajes como javascript, ruby o el mencionado anteriormente Python.

Screenshot_23.png

Screenshot_25.png

Facilidad de encontror información para los recien llegados.

Steemit también posee una sección de preguntas dedicadas a los recién llegados que permite conocer la plataforma y comprender como funciona y opera.

Screenshot_26.png

Prueba de participación delegada (DPoS).

Por último, me gustaría destacar el protocolo de consenso utilizado por steemit el cual es la prueba de participación delegada (DPoS), este brinda altos niveles de escalabilidad y seguridad, pero ¿En qué consiste? Pues todos los participantes de la red tienen la responsabilidad de elegir a los delegados, en el caso de steemit estos se conocen como witness, estos witness se turnan para generar y validar los nuevos bloques, esta acción les permite ganar una recompensa. Del mismo modo este tipo de consenso también establece que cada usuario dentro de la plataforma posee un poder de voto, en el caso de steemit este poder depende de la cantidad de SP (steempower) que posea la cuenta.

image.png

5). If you were a DApps developer, what kind of app would you like to create? Explain all the details of the DApp plan that you will make.

image.png

Bueno yo soy un desarrollador y hace un tiempo me estuve haciendo justamente esta pregunta y aunque realmente tengo varias ideas para Dapps una de las que creo que podría llegar a tener mayor impulso.

¿Por qué surge esta propuesta?

Considero que el conocimiento tiene valor y desde el inicio de la humanidad este ha ido creciendo y sigue aumentando cada vez más, entonces porque no crear una aplicación que organice este conocimiento y que permita a las personas ganar dinero por aprender y enseñar, es así que surge esta propuesta.

Nombre del proyecto:

Forest.

El nombre forest surge de la idea de que el conocimiento es muy extenso, y este no crece ni aumenta de un día para otro. Además de que, el mismo debe ser constantemente repasado para que se mantenga vivo. De ese modo, consideramos cada especialidad un árbol buscando crear un bosque (forest).

Descripción:

Una aplicación que permita crear diversos bosques (Especialidades) que cuenten con distintos árboles (Tecnologías, habilidades) y que de estos se desprenden ramas que vendrían a ser otras habilidades, herramientas o conocimientos necesarios. A su vez, una rama tiene un grosor que dependerá de los elementos que la constituyan, tales como, preguntas, foros, información, errores, dichos elementos también pueden ser enlaces a otras páginas webs.

Además, mientras más aportes haga un miembro mayor reputación tendrá dentro de la página, esto le permitirá acceder a ramas superiores y le dará permisos para podar, organizar, recortar y crear nuevas ramas. La reputación se obtiene ayudando a otros o contribuyendo y obteniendo beneficios. Así mismo, esta reputación se pierde al hacer actos indebidos.

Funcionalidades:

La aplicación sería un hard fork de STEEM utilizando como base su sistema de curación, generación de tokens y repartición de recompensas, haciendo cambios en algunos algoritmos para que se adecuen a la propuesta Permitir a los usuarios realizar posts, comentarios, votar, entre otras caracteristicas.

Ganar tokens en la plataforma:

A través de publicaciones y votación: utilizando un sistema de curación similar a steemit. Compras a través de Exchange.

Reputación:

Se utilizará un algoritmo especial que permita generar un número que tomará en cuenta, el número de publicaciones realizadas, el impacto de las mismas y el nivel de la rama en la cual se publicó, del mismo modo las personas que posean un título universitario podrán verificarse en su área y comenzar con una reputación un poco más alta que el resto de las personas. Las acciones indebidas provocarán que la reputación baje o que la cuenta sea censurada.

Nombre del token:

SEED.

¿Publico objetivos o posibles usuarios?

Uno de los mayores problemas que enfrentan los jóvenes hoy en día es ¿Qué estudio ahora? Y ¿Cómo voy a pagar mis estudios? Sea cual sea país donde vive, es así que una plataforma que le permita obtener el conocimiento suficiente a la vez que gana dinero seria totalmente irresistible, por supuesto, tal como comenté en la parte de arriba el acceso a conocimientos avanzados estaría restringidos a usuarios con una reputación más alta, de manera que para seguir aprendiendo debes aportar también.

De cierto modo se podría decir que en cripto academy se está llevando a cabo algo similar, pero a una escala muchísimo más pequeña, centrado en un punto especifico (las criptomonedas).

Uno de los principales objetivos de la plataforma sería orientar a los jóvenes y ayudarlos a encontrar su camino, pero también brindar un basto conocimiento a aquellos que quieran aprender. No hablo solo de temas generales, si no recopilar inclusos errores y sus posibles soluciones, por ejemplo, supongamos que yo soy un programador de Python y estoy estudiando inteligencia artificial, uso una librería llamada Seaborn y me doy cuenta que tengo un error el cual tarde horas en solucionar porque no conseguía información correcta, peo al final lo logro solucionar, si yo realizará un post de esto en la plataforma esta se encargaría de archivarlo en la especialidad (Inteligencia artificial), rama (Python), subrama (Seaborn) , hoja (número o descripción del error), de esta manera la información estaría clasificada si alguien más esta pasando por le mismo problema que yo no tendría que pasar horas buscando en internet en mi post podría encontrar fácil y rápidamente la solución.

El conocimiento en si mismo tiene valor, una dapps compuesta solo de conocimiento, propiamente organizado y archivado que incentiva a las personas aprender y ayudarse creo que sería un gran paso para las futuras generaciones. Del mismo modo el conocimiento al ser publico podría ser usado en otros proyectos, como por ejemplo una inteligencia artificial que pueda ir mejorando y aprendiendo en base a la data recolectada, proyectos de IA se han llevado a cabo recientemente como Git Hub copilots, el cual puede escribir código automáticamente utilizando como data los millones de proyectos almacenados en Github.

image.png

Conclusión

image.png

Considero que las Dapps han llegado para revolucionar diversas áreas como las finanzas y lo videojuegos, pero que estas aun no han alcanzado su madurez. Del mismo modo creo que es esencial que las personas influyentes en la plataforma se organicen y se planteen metas claras, esto permitirá que la misma pueda ir mejorando cada vez más. Por otro lado la experiencia de usuario es algo que nunca se debe dejar de lado y menos en este tipo de aplicaciones, ya que si se aborda de la forma adecuada puedes llegar atraer aun sin número de personas.

PresentationCard.png

Cc: @wahyunahrul
Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
STEEMKR.COM IS SPONSORED BY
ADVERTISEMENT
Sort Order:  trending

Hi @damurq, Thanks for taking my class.
Based on the homework that you have made, here are the details of the assessment you get:

No.
Aspects of Assessment
Rating
1
Personal opinion on DApps replacing Centralized Apps
1
2
Possible data theft via DApps
1
3
How to promote a DApps
1
4
Analysis of a DApps
2
5
DApps creation plan
2
6
Conclusion
1
7
Writing procedure and structure
1
8
Following the Rules and Guidelines
1
Total
10

My Reviews and Suggestions:

  • You have completed the given task very well.

  • I see you are really serious about this assignment, good job!!

  • I like the description of the DApp you want to create. But it would be even better if you add an image that explains the flow of creating your DApp to make it more interesting. But what you've done is good enough.

  • Vary headers and sub-headers to make your articles look more interesting.

  • Give space between paragraphs so that they are not too long and easy to read.

  • Use numbered lists, bullet listed, etc to highlight important points.

Thank you!

·

Gracias, levantarme y leer esto alegro mi día y me anima a esforzarme aun más en las tareas de esta semana.

Tomaré en cuenta los consejos que me proporcionaste para las tareas de esta semana.