Tras el éxito de la actualización de la fusión de Ethereum en septiembre, todas las miradas están puestas de nuevo en la red, que se prepara para lanzar su próxima gran actualización.
Ésta, llamada Shanghai, promete ofrecer algo que los usuarios de Ethereum han estado esperando con impaciencia: una forma de recuperar los 25.000 millones de dólares en ETH que han prometido a la red a través de su programa de staking. Sólo hay un problema: los desarrolladores del núcleo de Ethereum, el pequeño grupo de programadores responsables de realizar cambios en la red, están discutiendo sobre cómo y cuándo debe implementarse la actualización.
Ethereum pasó a un sistema de prueba de participación hace apenas unos meses mediante la fusión, un evento que fusionó la mainnet de Ethereum con la Beacon Chain, una versión preliminar de prueba de participación de Ethereum lanzada en diciembre de 2020. Las redes de prueba de participación permiten a los usuarios depositar fondos para convertirse en validadores y ayudar a autenticar las transacciones en la cadena; dichos usuarios acumulan recompensas en forma de Token recién generados. Desde diciembre de 2020, los usuarios han podido hacer staking con su ETH y ganar recompensas. Ahora, con Shanghái, los usuarios podrán acceder por fin a esas recompensas y a sus depósitos originales de ETH.
Según todos los indicios, Shanghai parece estar listo para su lanzamiento en marzo. Pero recientemente, una minoría de desarrolladores del núcleo de Ethereum ha empezado a expresar su preocupación por que la actualización se esté llevando a cabo demasiado deprisa, por miedo a represalias públicas, a costa de costos técnicos que podrían tener un impacto duradero en la red.
"Da la sensación de que no estamos pensando en la salud a largo plazo de Ethereum", advirtió Micah Zoltu, desarrollador del núcleo de Ethereum, en una reunión de todos los desarrolladores del núcleo celebrada el jueves. "Estamos pensando: '¿Cómo hacemos lo que el público quiere, hoy?".
A Zoltu y a algunos de los otros 30 desarrolladores del núcleo de la red les preocupa que la reciente decisión de renunciar a un ajuste técnico en Shanghái exponga a Ethereum a una deuda técnica innecesaria, con implicaciones desconocidas para los próximos años y décadas. Según las estimaciones de estos desarrolladores, el ajuste habría tomado entre dos y cuatro semanas más de trabajo, una cantidad de tiempo que el resto de desarrolladores del núcleo de Ethereum no estaban dispuestos a hacer esperar al público.
La deuda técnica se refiere al trabajo futuro o dolores de cabeza creados cuando los desarrolladores de software priorizan la velocidad de lanzamiento de un producto sobre un código perfecto. En este caso, los desarrolladores de Ethereum decidieron no hacer que los retiros de ETH fueran compatibles con simple serialize, o SSZ, un método de codificación flexible y moderno descrito por los desarrolladores como "el futuro de la codificación de Ethereum." En lugar de utilizar SSZ, Ethereum se está apegando a la serialización de prefijo de longitud recursiva, o RLP, un método de codificación existente que eventualmente puede ser eliminado y retirado.
Aunque la diferencia es muy técnica y aparentemente semántica, podría crear interminables dolores de cabeza a los desarrolladores de Ethereum en el futuro. Un gran contingente de desarrolladores del núcleo de Ethereum han señalado su voluntad de cambiar los retiros de ETH al nuevo método de codificación en la actualización posterior a Shanghái, que se está llamando "Cancún".
Sin embargo, esto significaría que cualquier actividad de los retiros iniciada entre Shanghái y Cancún se habría codificado con el método antiguo. Y gracias al inmutable libro mayor de Ethereum, esa actividad—incluso si tuvo lugar en unos pocos meses—podría seguir viviendo en la blockchain de Ethereum, para siempre.
Por lo tanto, los desarrolladores tendrán que traducir finalmente toda esa codificación del método antiguo al nuevo, una tarea ardua. Más allá de eso, sin embargo, el desajuste creado por la codificación de los retiros tempranos con el viejo método RLP, y el resto con el nuevo SSZ, podría tener repercusiones de mayor alcance.
"Podría haber incógnitas desconocidas en torno a lo que significa este desajuste—con los retiros, problemas de diseño, vulnerabilidades", dijo a Decrypt Matt Nelson, otro desarrollador del núcleo de Ethereum. "Simplemente no lo sabemos".
En su reunión del jueves, Tomasz Stańczak, otro desarrollador del núcleo, se opuso a estas preocupaciones, afirmando que ni siquiera era seguro todavía si Ethereum iba a cambiar completamente al nuevo método de codificación, SSZ.
"Un retraso ahora en aras de una mejor red a largo plazo sería muy convincente. Pero este cambio concreto formará parte de un proceso más amplio. De reflexión, de diseño", dijo. "Preferiría que lo viéramos de forma holística y nos diéramos el tiempo adecuado, como preparación para Cancún".
Zoltu consideró que los argumentos del jueves sobre la incertidumbre del futuro de SSZ se habían hecho potencialmente de mala fe, ya que considera un hecho establecido que Ethereum cambiará finalmente su capa de ejecución a SSZ.
"Introducir código que sabemos que va a ser reemplazado en un futuro próximo significa que estamos añadiendo deuda técnica que podría evitarse", dijo a Decrypt.
¿Por qué, entonces, la mayoría de los desarrolladores de Ethereum son tan reacios a pasar unas semanas más evitando una cantidad incalculable de problemas futuros? Para Nelson, la respuesta tiene mucho que ver con la historia reciente.
La fusión, la transición histórica de Ethereum a la prueba de participación, se debatió por primera vez hace más de 5 años. En los años siguientes, la dirección de la red se vio obligada a justificar la larga planificaciíon de la actualización ante inversionistas y miembros de la comunidad descontentos; después de que los planes para la fusión se concretaran en 2021, la fecha de lanzamiento de la actualización se retrasó repetidamente, debido a consideraciones técnicas, antes de su lanzamiento final en septiembre de 2022.
"Creo que [la actual línea de tiempo de Shanghai] definitivamente fue impulsada por una gran cantidad de escrutinio que se puso de alguna manera justa en la fusión, que se retrasó innumerables veces por las razones correctas, pero aún así se retrasó", dijo Nelson.
Los desarrolladores de Ethereum, dice Nelson, son reacios a atraer de nuevo la ira de las masas. En parte le parece comprensible: Shanghai afectará a fondos por valor de decenas de miles de millones de dólares, algunos de los cuales llevan años bloqueados en la red.
La tensión revela el papel único que desempeña el grupo de desarrolladores del núcleo de Etthereum: su trabajo es, ante todo, crear una blockchain lo más perfecta posible. Pero no pueden eludir las presiones que también se derivan de ser los encargados de diseñar la red detrás de la segunda criptomoneda más grande del mundo. Ethereum cuenta actualmente con una capitalización de mercado de 189.000 millones de dólares.
Aunque Nelson habría preferido dar prioridad a las necesidades técnicas de Ethereum, entiende por qué los desarrolladores de Ethereum decidieron el jueves proceder sin realizar los cambios solicitados.
"En este caso, tenemos una opción en la que podemos ser expeditivos sin sacrificar demasiado, demasiado", dijo. "Y así se hizo esa elección".