Hasta el momento se trata del último nanodegre que he realizado en Udacity. Se trata del muy conocido Blockchain Developer Nanodegree. Una vez más tenemos un curso intensivo de unos cuatro meses de duración y que combina a la perfección teórica y práctica. Pero en este caso tengo que darle un palo bastante gordo a Udacity. Y este motivo ha sido el que me ha llevado a decidir darme un descanso en su plataforma...
El gran problema de este curso es que está muy desactualizado, y para una tecnología tan nueva como Blockchain en constante evolución, tener un curso con contenidos que NO han sido actualizados desde el año 2018 me parece algo inaceptable. Y además supone darme cuenta de que la dirección de Udacity realmente YA no está interesada en ofrecer contenidos de calidad a sus usuarios, y simplemente está aprovechando el tiron y la calidad de los cursos qeu se generaron en su momento para seguir haciendo caja.
Aun así el curso tiene secciones por las que lógicamente no pasa el tiempo. Toda la parte teórica sobre Blockchain (primer bloque), así como lo que se explica en las secciones centrales sobre desarrollo en Ethereum siguen siendo válidas. El problema se encuentra en el uso de ciertas herramientas (truffle por ejemplo), para las cuales las versiones que se detallan en el curso están obsoletas, y toca bastante pelear con los errores encontrados. Esto es algo habitual en el día a día de un desarrollador, pero cuando pagas más de 400€ por este curso (eso contando con obtener los descuentos del 75% que aparecen continuamente) supone una desgana por parte de la compañía que deberían revisar si no quieren terminar cerrando la plataforma...
Respecto a los proyectos realizados durante el curso, la calidad es bastante buena en general. Excepto en el proyecto final. El cual me parece un proyecto que deja bastante que desear. Creo que se podía haber elegido algo bastante más interesante como proyecto final de este bootcamp.
Aquí dejo la lista de repositorios que mantuve tras terminar el nanodegree:
- Simple website to show how it works the mining process in a PoW Blockchain (similar to andersbrownworth) - Block mining sample
- Primer proyecto. Desarrollo de una blockchain PoW en Node - Private Blockchain.
Realmente el proyecto de Udacity no requiere llegar a tal nivel de implementación, pero me enganché basntante con este proyecto y continué desarrollandolo con la ayuda de los artículos de kashish khullar en Medium (Implementing Blockchain and Cryptocurrency with PoW consensus algorithm). Hasta desarrollar lo que sería un "embrion" de Bitcoin sobre NodeJS (con todas sus limitaciones claro está). Contiene los elementos principales de una red blockchain como Bitcoin. El concepto de bloque, hash, consenso, dificultad de la red (nonce), servidores descentralizados, compartición de cadena, etc.
-
Coffe Bean supply chain DApp Implemented on the ethereum network - CoffeBeanChain
-
FlightSurety is a sample application project for Udacity's Blockchain course - FlightSurety
El proyecto anterior contiene conceptos avanzados de desarrollode DApps como son: multiparity y oracles para obtener información de forma segura de aplicaciones externas a la red.
-
The capstone will build upon the knowledge gained in the course in order to build a decentralized housing product - RealStateNFT
Este proyecto final consiste en la implementación de un NFT bajo estándar ERC721, pero incluyendo conceptos avanzados como ZkSnarks como evidencia de propiedad del token. Para ello se utiliza ZoKrates. Por último los tokens debían ser publicados en OpenSea.
Al momemto de entregar este proyecto se produjo el Merge de Ethereum, y por tanto desplegué los smart contracts tanto en la antigua Rinkeby como en la nueva Goerli.