ProgramaDesarrollo con Blockchains

Imagen de criptomonedas Bitcoin, Ethereum, Litecoin, Ripple, Zcash, Monero, Dash

Aprendé los conceptos, lenguajes de programación y herramientas de desarrollo en Blockchains, basadas en la plataforma más prometedora de estas tecnologías: Ethereum.
Desarrollá apps descentralizadas en Solidity, estándar para aplicaciones de Smart Contracts.
Estudiá con los mejores profesores, con experiencia en desarrollo de sistemas Blockchains para organizaciones globales.

En conjunto con

Duración: 16 semanas

Inicio: 25 de marzo del 2020

Días: Miércoles

Modalidad: Presencial

Tipo: Programa Ejecutivo

Horario: 19 a 22 hs.

Área: Tecnología

Sede UP: Mario Bravo 1050

Más información sobre el curso de desarrollo en Blockchain

Las tecnologías de blockchains están revolucionando las formas de transaccionar en la economía moderna. Esto parece exagerado pero no lo es. Las blockchains permiten distribuir la confianza entre una gran cantidad de pares, haciendo extremadamente difícil el fraude y la alteración de los registros de transacción, y haciendo innecesaria la mediación de entidades o autoridades de provisión de confianza.

Esto está alterando de manera tan profunda las bases sobre las que se construyen los sistemas y emprendimientos en Internet, que hace muy difícil pronosticar quiénes serán los futuros líderes de la economía digital. Sin embargo está claro que las tecnologías de blockchains serán el ingrediente principal de las soluciones y protagonistas que triunfen en esta evolución.

La cantidad de áreas de la economía que ya están siendo afectadas por estas tecnologías es muy grande. Algunos ejemplos son: criptomonedas, fintech, alimentos y agricultura, energía, salud, elecciones y e-democracia, publicidad en Internet, sistemas de gestión y redes sociales.

La comprensión y las habilidades de los conceptos y herramientas de desarrollo asociadas a los blockchains son la llave para asomarse a la gran cantidad de oportunidades profesionales y de emprendimiento que existen y que se generarán en el futuro inmediato.

El Programa en Desarrollo con Blockchains de la Facultad de Ingeniería de la UP es una introducción a los conceptos, lenguajes y herramientas de desarrollo de Blockchains, basadas en la plataforma más prometedora de estas tecnologías, Ethereum, para trabajar con transacciones, criptomonedas, contratos inteligentes, emisión de valores y otras aplicaciones.

En este programa aprenderás a desarrollar aplicaciones descentralizadas en Solidity, estándar para aplicaciones de Smart Contracts, tanto en redes públicas como privadas. Se dará gran importancia a los aspectos de seguridad y optimización. Se incluye una introducción a los protocolos más importantes de seguridad y transacción digital, su evolución hasta las blockchains, las plataformas y emprendimientos que se perfilan como referentes en esta, transformación. El programa apunta a formar desarrolladores e innovadores de sistemas basados en blockchains, tiene un gran componente práctico, e incluye el desarrollo de un proyecto final.

A quién está dirigido

Está orientado a desarrolladores e innovadores de sistemas basados en blockchains, tiene un gran componente práctico e incluye el desarrollo de un proyecto final.

Se recomienda poseer conocimientos básicos sobre programación en alguno de los lenguajes modernos (Javascript, Java, o Python, o similar).

Cada alumno debe contar con su notebook para la realización de las prácticas en clase.

Plan de estudios

Módulo 1: Introducción a Blockchain

Perspectiva histórica. P2P. Problema de doble gasto. Problema de los generales bizantinos. Criptografía. Diversos métodos de consenso. Merkle tree. Dapp. Blockchain. Bitcoin. Ethereum. Monero. Zcash. Ripple. Wallets. Exchanges. Oráculos. Tokens. ICOs. Gobernabilidad. Aspectos legales y regulatorios.

Módulo 2: Ethereum y Smart Contracts en Solidity EVM 

Environment setup (Nodo + Web3 + Compilador + IDE), Data types, Operators, Functions, Visibility, ERC20 token standard interface, Events and logging, inheritance and polymorphism, Exceptions, Security concerns, Deployment on Ethereum blockchain, Wei vs Ether, Mnemonic Phrases, Ropsten. MetaMask.

Módulo 3: Limitaciones y Eficiencia

Costos de transacción o Gas, ejecución y almacenamiento. Cálculo del tiempo. Pseudo-Random numbers. Opcodes de la EVM. Uso de gas. Estructuras de datos más eficientes. Optimizaciones. Consecuencias no deseadas. No-String variables. Bounded loops. Quitar peso de cálculo.

Módulo 4: Seguridad

Conflicto de the Dao, Detectar vulnerabilidades de código, honeypot. Reentrancy Attacks. Call of the unknown. Exception disorder. Gasless Send / Transfer. Type Casts. Cast unknown. Keeping secrets. Inmutable Bugs. Ether lost in transfer. Stack size limit. Unpredictable state. Generating randomness. Mapping collisions.

Módulo 5: Futuro

Innovaciones. RSK. Cardano. Algorand. Spectre, Avalanche, DFINITY. Exchanges descentralizados. marketplaces. Securitización de activos.

Aranceles vigentes al .

Más información sobre el curso de desarrollo en Blockchain

Las tecnologías de blockchains están revolucionando las formas de transaccionar en la economía moderna. Esto parece exagerado pero no lo es. Las blockchains permiten distribuir la confianza entre una gran cantidad de pares, haciendo extremadamente difícil el fraude y la alteración de los registros de transacción, y haciendo innecesaria la mediación de entidades o autoridades de provisión de confianza.

Esto está alterando de manera tan profunda las bases sobre las que se construyen los sistemas y emprendimientos en Internet, que hace muy difícil pronosticar quiénes serán los futuros líderes de la economía digital. Sin embargo está claro que las tecnologías de blockchains serán el ingrediente principal de las soluciones y protagonistas que triunfen en esta evolución.

La cantidad de áreas de la economía que ya están siendo afectadas por estas tecnologías es muy grande. Algunos ejemplos son: criptomonedas, fintech, alimentos y agricultura, energía, salud, elecciones y e-democracia, publicidad en Internet, sistemas de gestión y redes sociales.

La comprensión y las habilidades de los conceptos y herramientas de desarrollo asociadas a los blockchains son la llave para asomarse a la gran cantidad de oportunidades profesionales y de emprendimiento que existen y que se generarán en el futuro inmediato.

El Programa en Desarrollo con Blockchains de la Facultad de Ingeniería de la UP es una introducción a los conceptos, lenguajes y herramientas de desarrollo de Blockchains, basadas en la plataforma más prometedora de estas tecnologías, Ethereum, para trabajar con transacciones, criptomonedas, contratos inteligentes, emisión de valores y otras aplicaciones.

En este programa aprenderás a desarrollar aplicaciones descentralizadas en Solidity, estándar para aplicaciones de Smart Contracts, tanto en redes públicas como privadas. Se dará gran importancia a los aspectos de seguridad y optimización. Se incluye una introducción a los protocolos más importantes de seguridad y transacción digital, su evolución hasta las blockchains, las plataformas y emprendimientos que se perfilan como referentes en esta, transformación. El programa apunta a formar desarrolladores e innovadores de sistemas basados en blockchains, tiene un gran componente práctico, e incluye el desarrollo de un proyecto final.

A quién está dirigido

Está orientado a desarrolladores e innovadores de sistemas basados en blockchains, tiene un gran componente práctico e incluye el desarrollo de un proyecto final.

Se recomienda poseer conocimientos básicos sobre programación en alguno de los lenguajes modernos (Javascript, Java, o Python, o similar).

Cada alumno debe contar con su notebook para la realización de las prácticas en clase.

Plan de estudios

Módulo 1: Introducción a Blockchain

Perspectiva histórica. P2P. Problema de doble gasto. Problema de los generales bizantinos. Criptografía. Diversos métodos de consenso. Merkle tree. Dapp. Blockchain. Bitcoin. Ethereum. Monero. Zcash. Ripple. Wallets. Exchanges. Oráculos. Tokens. ICOs. Gobernabilidad. Aspectos legales y regulatorios.

Módulo 2: Ethereum y Smart Contracts en Solidity EVM 

Environment setup (Nodo + Web3 + Compilador + IDE), Data types, Operators, Functions, Visibility, ERC20 token standard interface, Events and logging, inheritance and polymorphism, Exceptions, Security concerns, Deployment on Ethereum blockchain, Wei vs Ether, Mnemonic Phrases, Ropsten. MetaMask.

Módulo 3: Limitaciones y Eficiencia

Costos de transacción o Gas, ejecución y almacenamiento. Cálculo del tiempo. Pseudo-Random numbers. Opcodes de la EVM. Uso de gas. Estructuras de datos más eficientes. Optimizaciones. Consecuencias no deseadas. No-String variables. Bounded loops. Quitar peso de cálculo.

Módulo 4: Seguridad

Conflicto de the Dao, Detectar vulnerabilidades de código, honeypot. Reentrancy Attacks. Call of the unknown. Exception disorder. Gasless Send / Transfer. Type Casts. Cast unknown. Keeping secrets. Inmutable Bugs. Ether lost in transfer. Stack size limit. Unpredictable state. Generating randomness. Mapping collisions.

Módulo 5: Futuro

Innovaciones. RSK. Cardano. Algorand. Spectre, Avalanche, DFINITY. Exchanges descentralizados. marketplaces. Securitización de activos.

Este Programa Ejecutivo se encuentra habilitado para utilizar el beneficio de crédito fiscal Pyme por capacitación (reintegro) otorgado por la Secretaría de Emprendedores y de la Pequeña y Mediana Empresa (SEPYME) del Ministerio de Producción y Trabajo.

La Universidad de Palermo es Unidad Capacitadora (UNCAP) registrada ante la SEPYME, lo que permite a las PyMES y emprendedores -que cumplan con los requisitos establecidos por la SEPYME- solicitar el reintegro de la capacitación en forma de crédito fiscal.