Conversaciones con un desarrollador junior de blockchain Parte II

Li₿ΞʁLiøη
15 min readOct 26, 2021

--

Traducción

Cardano Fans

Traducción: Conversations with a Junior Blockchain Developer Part II

A: Vaya, nuestra primera entrevista fue un gran éxito, ¡a la gente le encanta tu contenido!

B: Te lo agradezco.

A: ¿Podemos hacer un seguimiento?

B: seguro

A: Entonces, cuéntame solo sobre el tema de ETH y ADA … ¿cómo quieren estas cadenas enfocarse en la gobernanza?

B: ETH quiere centrarse más en la gobernanza centralizada y Cardano en la descentralizada.

A: ¿No hace que ETH esté centralizado?

B: Bueno, en realidad no, los contratos inteligentes siguen siendo lo que son (nadie puede manipular cosas), es solo la dirección del producto establecida por la Fundación Ethereum

A: Donde d o que reciben dinero para todo esto

B: Ethereum Foundation extrajo previamente algunos fondos en el pasado, con todo el movimiento de precios alrededor de 4k USD por ETH, digamos que están bien en los próximos años.

A: ¿Y luego?

B: Probablemente inversionistas y fundadores ricos para desarrollarlo aún más.

A: Pero estos inversores tal vez quieran influir en la cadena, ¿no?

B: Podría ser, aún existirá la Fundación Ethereum, es solo que podría ser influenciable por las ballenas

A: Y proyectos que se lanzan en Ethereum y se construyen como Plasma, Loopring, Raiden Network

B: En su mayoría son tokens de caridad … mira los precios que tienen ahora … no hay nada de malo con los tokens de caridad o los tokens de apoyo, pero el problema subyacente es que Ethereum no tiene un sistema de tesorería.

A: ¿Y en Cardano?

B: Cardano quiere descentralizar todo casi hasta la médula … actualmente la tesorería de Cardano al 26 de octubre de 2021 es de alrededor de 1.500 millones de dólares estadounidenses … Para sorpresa de muchos proyectos de calidad y las empresas están proponiendo y cada vez hay más fondos disponibles.

A: ¿Cardano también querrá descentralizar las empresas centrales de desarrollo?

B: Sí, incluida la capacidad de cambiar de empresa que desarrolla Cardano, IOHK

A: Cosas locas … nadie conoce a Haskell, así que nadie cambiará IOHK …

B: Te sorprendería, seguro que Haskell no es uno de los principales lenguajes principales, pero las grandes empresas tienen recursos para capacitar o contratar desarrolladores de Haskell.

A: Entonces dime, todo este FUD sobre eUTxO e incluso no solo de los no desarrolladores sino también de desarrolladores, ¿de qué se trata, real o no?

B: FUD, déjeme ilustrar esto con un ejemplo. Imagina que trabajas en Google y desarrollaste algo asombroso, publicas un artículo y lo muestras al mundo.

A: ¿Como qué?

B: mapa / reducción de Google (https://static.googleusercontent.com/media/research.google.com/pl//archive/mapreduce-osdi04.pdf)

A: ¿Y?

B: Y luego se lo muestra al mundo y la gente le dice que es un idiota y que procesa solo una operación de mapeo por segundo.

A: Bueno, ¿nadie hizo esto con la reducción de mapa o?

B: Sí, porque no está en criptografía, pero en realidad no había bibliotecas o marcos que pudieran aprovechar esta cosa fabulosa.

A: ¿Y ahora tenemos?

B: Claro, por ejemplo Spark, hace que sea trivial trabajar con map reduce

A: Ok, pero incluso los desarrolladores estaban sacando el mickey de Cardano, algunos de ellos realmente buenos desarrolladores de ETH.

B: Esto es cierto, pero ¿conoces https://en.wikipedia.org/wiki/Linguistic_relativity ?

A: No, ¿qué es esto?

B: Es una noción que su lengua materna afecta su forma de pensar

A: Ok, pero ¿qué tiene que ver con la programación?

B: Lo que pasa es que los lenguajes de programación y los desarrolladores también caen en esta trampa, sus procesos de pensamiento se ven afectados por las capacidades del lenguaje

A: ¿Me estás tomando el pelo?

B: No, es de verdad, es por eso que algunos de los desarrolladores más increíbles del mundo recomiendan aprender varios lenguajes de programación, como un idioma por año, en realidad originalmente Pragmatic Programmer de Dave Thomas ( https://www.informit.com/ store / pragmatic-programmer-from-journeyman-to-master-portable-9780132100670 )

A: Entonces, los desarrolladores de ETH solo conocen Solidity o qué, ¡vamos!

B: No, a menudo saben más, pero se dice que la mayoría conocen lenguajes de programación imperativos como JavaScript.

A: Pero JavaScript también tiene partes funcionales, ¿verdad?

B: Sí, pero no tan expresivo como los demás, por ejemplo, no creo que haya un método que funcione en JavaScript, afirmando que sí, pero esto es otra cosa.

A: ¡Gracias a Dios! ¿Mantenerlo simple o?

B: Bueno, depende, recuerda que aprender nuevos paradigmas te permite reescribir tu cerebro y pensar de nuevas formas.

A: Hm … interesante, ¿así que FUD de los desarrolladores de ETH debe tomarse con una pizca de sal?

B: Sí, hasta cierto punto, sí, por supuesto que hay desarrolladores de ETH excepcionales.

A: Ok, pero ¿quién escalará este material a millones? ¡Vamos! Haskell, Plutus, estos son buenos chistes que sabes …

B: Bueno, para DeFi en realidad no necesitas muchos desarrolladores, necesitas alrededor de 10 dapps muy, muy buenos

A: ¿Entonces la calidad importa más que la cantidad?

B: Sí, menos desarrolladores pero más contratos inteligentes de calidad

A: ¿Cómo se pueden realizar estos contratos inteligentes de calidad? ¿La solidez no puede hacerlo?

B: Puede, pero es mucho más difícil, no hay decenas de años de soporte de herramientas para este lenguaje y EVM sufre algunos problemas de diseño graves.

A: ¿Como qué?

B: Cosas complejas para esta entrevista, pero generalmente puede, por ejemplo, desbordar variables como esta

A: Por lo tanto, es más difícil escribir contratos inteligentes seguros.

B: Sí y lo peor de todo … no existen herramientas súper maduras para las pruebas basadas en propiedades para Solidity

A: Bueno, mientras estabas hablando y busqué en Google y encontré: https://repositorio-aberto.up.pt/bitstream/10216/132048/2/441868.pdf

B: Sí, 2020, algunas cosas están sucediendo pero aún no son suficientes y no olvidemos que esto es solo una parte del problema.

A: Antes de profundizar, ¿qué son las pruebas basadas en propiedades?

B: En programación, tiene un par de métodos para probar, como a través del método principal :), pruebas unitarias, pruebas basadas en el comportamiento (variación de las pruebas unitarias) y pruebas basadas en propiedades y una prueba matemática formal.

A: ¿Cuáles se utilizan?

B: En empresas típicas, en realidad, el método principal :) y las pruebas unitarias.

A: Entonces, ¿nadie hace pruebas basadas en propiedades o profesiones formales?

B: Bueno, no en empresas web2, no

A: ¿Por qué no?

B: Siempre puede revertir el código y reparar el estado roto en la base de datos si la mierda golpea la diversión, por lo que las pruebas basadas en propiedades no son necesarias

A: Ok, todo esto es tan abstracto, ¿qué son las pruebas basadas en propiedades?

B: Bueno, con las pruebas unitarias, generalmente afirmas para una función algunas condiciones como … como agregar (a, b) así que pasas: val a = agregar (1, 2) y luego afirmar (val, 3), esto es defectuoso, ¿Qué pasa si su función funciona bien para 1 y 2 pero no funciona para -1 y 2?

A: ¿Entonces qué?

B: depende pero puede ser catastrófico

A: Y luego revierte el código y arregla la base de datos rota

B: Sí, pero no es tan malo si se trata de un sistema centralizado, pero ¿y si se trata de un contrato inteligente?

A: La mierda podría llegar a millones, escuchamos sobre muchos hacks de contratos inteligentes y DeFi

B: Sí.

A: Y a pesar de millones de hacks en BSC, AVAX y, por supuesto, Ethereum, todavía tiene casi 0,5 billones de dólares …

B: También me desconcierta, pero tiene la ventaja de ser el primero en moverse y también muchos inversores criptográficos son, en general, inversores muy arriesgados.

A: ¿Qué pasa si pierden su propio dinero, también entonces ávidos partidarios de Ethereum?

B: Luego les piden a los piratas informáticos que devuelvan los fondos.

A: ¿Y los hackers lo hacen?

B: Algunos hacen esto, sí, curiosamente

A: Realmente no puedes confiar en esto, ¿verdad?

B: Sí, pero la comunidad de desarrolladores de ETH necesita pasar por la transformación, muchos programadores mueven cosas rápidas allí.

A: Como sabemos por la cultura corporativa o la sociología en general, los cambios culturales son en realidad los más difíciles entre las personas, ¿verdad?

B: Creo que esto es super difícil, como ves, esto no es solo un problema de herramientas maduras (esto también) sino aún más mentalidad. Los desarrolladores de Eth en realidad tienen lenguajes de programación como Reach, Viper, por nombrar algunos

A: ¿Los están usando?

B: La popularidad está creciendo, todavía está muy lejos de lo que debería ser para evaluaciones de 0,5 billones de dólares

A: Entonces, si esos inversores criptográficos arriesgados no tienen miedo, ¿quién tiene miedo?

B: ¿Hablaste con tu mamá sobre poner dinero en un aven o en un compuesto y le dijiste que de vez en cuando te roban dinero y no hay forma de recuperarlo?

A: No de aave, vamos

B: No, me refiero en general a contratos inteligentes y DeFi

A: No, mi mamá nunca confiaría en algo así.

B: Por supuesto que no, esto es algo sensato, estamos en una burbuja criptográfica, no entendemos que la gente no confíe en esto.

A: necesitamos madurez

B: Sí, mucho. Cardano’s es más maduro pero no tiene la ventaja de ser el primero en moverse

A: Pero Plutus y Haskell …

B: Bueno, las cosas están progresando en direcciones interesantes recientemente.

A: Lo sé, la nueva versión de Haskell será tan fácil como JavaScript (rodando por el suelo y riendo)

B: No, pero hay un núcleo de Plutus y Plutus y estas son cosas completamente diferentes.

A: Explica

B: Plutus Core es en realidad un cálculo lambda inspirado en instrucciones de ca 15, Plutus es un lenguaje inspirado en Haskell que se compila en Plutus Core.

A: ¿Significa que puedo tener otro lenguaje de programación que se compile en la misma máquina virtual?

B: Sí, e incluso algunas propuestas de Catalyst (los fondos de innovación descentralizados de Cardano) están tratando de abordar este problema.

A: Entonces, ¿qué lenguajes se pueden compilar fácilmente en Plutus Core?

B: Seguramente los inspirados funcionalmente, Scala, Glow, Elm y Reach, donde escribir DSL es fácil

A: Veo que te gustan los TLA (siglas de tres letras), ¿qué es un DSL?

B: idioma específico del dominio

A: ¿Qué es eso?

B: subconjunto de un lenguaje para abordar un problema, tipo de programación declarativa

A: ¿Entonces Reach y Glow, por ejemplo, son declarativos? ¿Algún enlace?

B: ¡Oh, sí! https://reach.sh/ y https://glow-lang.org/

A: Pero espera, busqué en Google y miré los tutoriales y en realidad tienes que olvidarte de todo lo que tienes sobre Solidity y aprender nuevos paradigmas de todos modos.

B: Sí, no a todos los desarrolladores de Ethereum o de Cardano les gustará, pero al menos no puedes quejarte de la sintaxis 80ish

A: ¿Estos lenguajes se parecen sintácticamente a JavaScript pero se comportan semánticamente como Haskell / Plutus?

B: ¡Sí, estás empezando a entender esto muy bien!

A: Pero espera … Puedo ver que Reach ya está implementado y puedes compilar Reach en EVM pero no en Plutus Core. ¿Se basarán en Cardano?

B: Bueno, seguro que quieren a su fundador: Chris Swenor en realidad tiene un enorme respeto por IOG y la tecnología de Cardano.

A: ¿Presentaron alguna propuesta de Catalyst u obtuvieron financiamiento directo de la Fundación Cardano o IOHK?

B: Hicieron todo lo posible pero por alguna razón sus propuestas directamente con IOHK y la Fundación Cardano no tuvieron éxito.

A: ¿Por qué?

B: Es difícil de decir, tal vez el precio sea demasiado alto, tal vez demasiado pronto, esto fue en la era de Shelley.

A: ¿Y el catalizador de Cardano? https://cardano.ideascale.com/

B: ¡Sí! Hay una propuesta de PoC https://cardano.ideascale.com/a/dtd/Reach-POC-on-Cardano/368725-48088 y también tenemos una propuesta para desarrollar el compilador Elm -> Plutus Core aunque de un desarrollador diferente.

A: Vaya, 180k USD por un PoC, parece mucho.

B: Depende a quién le preguntes, creo que está bastante bien considerando su historial y sus increíbles desarrolladores, por ejemplo, Jay McCarthy.

A: Solo busco en Google, este tipo es un desarrollador de Scheme y Haskell.

B: Bueno, partes de Reach están en Haskell

A: Pero no hay desarrolladores de Haskell …

B: Bueno, hay y aún más interesante Chris Swenor, el CEO está interesado en seguir adelante con Cardano.

A: Sabes qué, de hecho hablé con algunos desarrolladores de ETH y desarrolladores empresariales y simplemente no respetan a Charles Hoskinson como arquitecto de Blockchain, el tipo es un matemático, no es un programador, toda la hoja de ruta de Cardano parece que esto es una cascada. , deberían implementar y aprender paso a paso, iterar, cambiar y aprender …

B: ¿Te refieres al libro Out Of Ether y material similar como este?

A: De Ether y otros, pero me refiero a más del lado de los desarrolladores, ya sabes, y cómo se desarrolla realmente el software. Gavin Wood, Vitalik, todos estos son programadores, no matemáticos, ¿sabes?

B: Bueno, ¿por dónde empiezo? Bueno, ¿no has pensado realmente que lo que hay en este libro podría ser un montón de mentiras para desacreditar a Charles?

A: ¿Por qué harían esto?

B: Bueno, seguro que hubo tensiones, los fundadores no se pusieron de acuerdo en muchos aspectos y algunas cosas podrían ser … coloreadas y mentidas sobre sí. Hay mucho dinero sobre la mesa, la historia se ha pavimentado de sangre, no es imposible que haya muchas cosas turbias en esos libros para desacreditar a Charles.

A: ¿No todos o?

B: Bueno, la gente también crece, tal vez perdió los estribos un par de veces, pero eso no significa que alguien sea malvado hasta la médula o?

A: Es más fácil creer que es malvado hasta la médula …

B: Eso es seguro, pero supongamos por el momento que no es una buena persona … hay varias personas que no son buenas, puedes ser un estafador, un mentiroso o un simple ser humano que pierde los estribos de vez en cuando.

A: OK …

B: ¿Sabes quién es Linus Torvalds?

A: ¿Creador del kernel de Linux?

B: Sí, en realidad es bastante malo como persona, mucha gente dice esto, pierde los estribos a menudo, pero nadie diría que no es un genio o un ser humano malvado. Simplemente no tiene mucha paciencia y no acepta soluciones fallidas. Él es, además del kernel de Linux, creó el sistema de control de fuente git.

Además, ¿en términos de integridad? Ni Charles ni Linus defraudaron a nadie. Bueno, Cardano está desplegado desde 2017 (era Byron), los fondos que tienen estas 3 entidades, 3 — Emurgo, Fundación Cardano e IOHK han sido verificables en cadena y mientras se están agotando, se están agotando muy lentamente. De hecho, está bastante descentralizado y cada vez se unen más empresas como DcSpark, Mutual Knowledge Systems. El hecho de que estas nuevas empresas se unan significa que a veces hay tensiones y esto solo muestra un ecosistema descentralizado.

A: ¿Puedes mostrarme un ejemplo?

B: Sí, ves este FR: en Github podría haber sido mal visto en IOHK: https://github.com/input-output-hk/cardano-node/issues/324 7

A: FR: ¿Aumentar el rendimiento de la red de Sebastien desde DcSpark?

B: Sí, para los desarrolladores de IOGK es obvio lo que está escrito allí, pero recién están terminando la era Goguen y el año que viene se trata de Basho.

A: ¡Veo que ETH Maxis usa esta solicitud de función ahora para atacar a Cardano!

B: Lamentablemente sí, pero esto le muestra el poder del ecosistema descentralizado en realidad, no ideal, sino ideal porque es más equilibrado y más cercano a la verdad, también una verdad inconveniente …

A: Con respecto a la integridad de esas 3 entidades en Cardano, ¿no están haciendo dumping con los inversores minoristas y se están comportando de manera muy razonable? Quiero decir, sabemos lo que Ripple hizo a los inversores pobres de XRP con la descarga masiva de XRP durante años o?

B: Sí, ves, no tienes que ser religioso para apreciar la Biblia, dice: “No escuches lo que dicen, los conocerás por sus frutos”, en este sentido Cardano incluyendo a Charles, IOHK y otros tienen un historial de integridad mucho mejor que, digamos, otras cadenas de VC … (en el sentido de que se demuestra más con el tiempo)

A: ¿Te refieres a algo como el efecto Lindy aplicado a las criptomonedas https://en.wikipedia.org/wiki/Lindy_effect ?

B: Por supuesto. Así que creo que la comunidad de ETH creó un montón de mentiras para desacreditar a Charles. Puede que no estés de acuerdo, pero esto es lo que pienso.

A: ¿No estás jugando ahora a quién es un ángel y quién es un juego de diablos?

B: No, pero muchas personas participan en este tipo de juegos y digamos que las cosas son complejas. Creo que había suficientes inventos en la Fundación Ethereum para destruir a Charles conociendo su brillantez.

A: Hablando de brillantez, en realidad no hablamos de esto en absoluto … ¿Blockchain Architect y ninguna línea de código? Quién realmente usa cosas como pruebas basadas en propiedades. ¡Dijiste que en las empresas los programadores no usan esto!

B: No digamos que todo es blanco y negro, muchos aspectos de Cardano no están probados en base a propiedades, esto sería increíblemente costoso, las reglas del libro mayor y algunos de los códigos más importantes son en términos de Charles. Creo que está rodeado de muchos desarrolladores inteligentes y, al observar el historial de la cadena Cardano, funcionó casi sin problemas desde 2017.

A: ¡Sin hipo, sea honesto!

B: Pequeños, en los cambios de época, sí, una o dos veces, pero los cosméticos en general, en ETH, sin embargo, tiene divisiones de cadena … en la red de Solana deja de funcionar, Avalanche tuvo un error de acuñación … El desarrollo de Cardano es lento pero metodológico

A: ¿Te refieres a uno reciente, London Hard-Fork?

B: Por ejemplo, pero en realidad hubo más

A: Mierda pasa

B: Cierto, pero puedes diseñar tu tecnología para que suceda menos …

A: ¿Cómo?

B: IOHK inventó el combinador de horquilla dura (HFC)

A: Hm …

B: Es una tecnología para realizar horquillas duras indoloras … solo tomó 3 doctorados y 1 año de trabajo sólido … Ethereum no lo tiene, puede ser mucho más frágil en horquillas duras

A: ¿Y es más seguro?

B: Muuuuuuuuuch mucho más seguro, los operadores y desarrolladores de Stake Pool duermen bien en esas bifurcaciones …

¿Un enlace?

B: Claro, https://github.com/cardano-foundation/docs-cardano-org/blob/main/explore-cardano/what-is-a-hard-fork-combinator.md

A: ¿Sabes que me olvidé de preguntarte por qué nadie realiza una verificación formal?

B: Sí, nos saltamos eso, ¡básicamente es muy caro!

A: ¿Mejor que las pruebas de propiedad e incluso más caro?

B: Sí, pero entonces tiene un 100% de certeza de que una función realmente cubre todos los casos.

A: Nadie lo hace bien …

B: En casos especiales se hace, en realidad un lenguaje de programación llamado TLA + creado por el inventor del teorema CAP — Leslie Lamport. https://en.wikipedia.org/wiki/TLA%2B

A: ¿Imposibilidad de búsqueda en Google, consistencia / disponibilidad y particionamiento en sistemas distribuidos?

B: Sí, básicamente puedes tener 2 pero no 3 …

A: Suena similar al trilema de blockchain

B: Muy relacionado, pero en el caso de blockchains también se ejecutan en escenarios inestables y adversarios (bizantino)

A: Sí, está bien, pero no conozco ningún desarrollador de ETH o, de hecho, desarrolladores empresariales que hagan esto, me parece un problema académico.

B: Bueno, en muchos aspectos ni siquiera estamos solicitando un nivel de garantía TLA +, estamos solicitando garantías de pruebas basadas en propiedades …

A: ¿Y cuánto cubren las pruebas basadas en propiedades?

B: En muchos aspectos, realmente es suficiente.

A: Escuché que gente como Anatoly Yakovenko (Solana) y Emin Gün Sirer (Avalanche) no creen que este método de rigor sea realmente necesario. Recuerdo haber escuchado a Anatoly decir que nadie realmente hace pruebas basadas en propiedades en las empresas, y mucho menos TLA +, prof. Sirer decía algo como: “Muchos académicos olvidan que nuestro objetivo, como profesión, es * no * publicar artículos. Es cambiar el mundo “. Para mí, aunque no se menciona a Cardano y Charles, casi parece que se están tomando el mickey de forma encubierta.

B: Sí, se ve extraño pero hay respeto por IOHK detrás de las cortinas, yo diría que simplemente no están de acuerdo si esto es realmente necesario para ir tan lento y tan metodológico.

A: Avalanche se lanzó bastante rápido …

B: Sí, bastante impresionante, probablemente trabajaron día y noche en esto para ser honesto. Aunque el consenso novedoso que tienen está patentado. Sin duda una gran innovación.

A: ¿Y Anatoly?

B: Él tiene sus propios caminos, muévete rápido … y …

A: romper cosas?

B: Mierda pasa, Solana se detuvo dos veces sí y se reinició.

A: ¿Cómo se puede reiniciar una cadena de bloques?

B: Es posible, pero sí, es un poco extraño, tiene que coordinar esto entre múltiples validadores, si pueden hacer esto ahora, ¿por qué no ingresar a la llamada y comenzar a jugar con la lógica de validación? Planteó algunas preguntas válidas en la industria para seguro

A: ¿AVAX nunca se detuvo o?

B: No, pero hubo un gasto doble: una vez.

A: ¿Quién lo fundó?

B: Avalanche Labs de su bolsillo

A: ¿Cuánto tiempo no funcionó blockchain? Creo que Bicoin también tuvo un problema grave en los días o?

B: En realidad no lo sé, una de las cadenas se degradó o algo así, detalles: https://medium.com/avalancheavax/preliminary-analysis-of-the-invalid-minting-bug-bee940cbd9e9

A: Está bien, pero se están desarrollando rápido …

B: Eso es seguro, pero también es posible tener errores de regresión.

A: ¿Qué es esto?

B: Sin el conjunto de pruebas adecuado, tanto las pruebas unitarias como las pruebas basadas en propiedades, los nuevos desarrolladores del proyecto, pero también los establecidos, pueden introducir errores.

A: ¿Los conjuntos de prueba unitaria y los conjuntos de propiedad verifican automáticamente el código?

B: Sí, en cada compilación, incluso los desarrolladores empresariales hacen esto (pruebas unitarias), generalmente a través de la denominada CI (Integración continua).

A: Tenemos que terminar pero chico … ¡tenemos que hacerlo de nuevo!

B: Claro, llévame en cualquier momento para la tercera parte de la serie de entrevistas.

¿Quieres apoyar al escritor? Delega al ticker: CRFA o dona cualquier valor a: addr1q8nq8wdhrpq402qj4hyn5rxn624l0ccua8k3epl2xl3fz57zddeldn7syvs5x2uvuefk66azhr7lelrj423lxapuxkksknwfdj

--

--

Li₿ΞʁLiøη

Researcher • Ϛʁyptø_Writer • Content Creator | 𝕏 @liberlion17 | nostr liberlion@iris.to | website: liberlion.com