Programando nuestro primer Smart Contract – Parte 1
Hola, muy buenas tardes etherians!
En esta oportunidad traemos una serie de artículos en la que aprenderemos a programar, ejecutar y modificar en la Blockchain Ethereum nuestro primer Contrato Inteligente o Smart Contract.
Brevísima explicación de un Contrato Inteligente
Un Contrato Inteligente (Smart Contract) no es más que una pieza de código programada en un lenguaje llamado Solidity que a simple vista nos hace recordar a Javascript con algunos matices de Go. Los contratos inteligentes se ejecutan en un entorno totalmente aislado de los archivos, procesos y conexiones de red de nuestra computadora, este entorno se llama Ethereum Virtual Machine (EVM). Un contrato inteligente se comportará siempre como el código se lo indique, el código es la ley.
Cosas que debes saber sobre un Contrato Inteligente:
- ¿Puede un contrato inteligente almacenar ETHER? Si, pero no siempre necesitaremos guardar los ETH recibidos, dependerá del uso de nuestro contrato inteligente.
- ¿Cómo publico un contrato inteligente? Para hacer público nuestro Contrato Inteligente y compartirlo con alguien más, debemos enviarlo a la red Ethereum a través de una transacción. La transacción será minada por un nodo y nos retornará la dirección del contrato.
- ¿Son las direcciones de los contratos diferentes a las de una cuenta? Las direcciones de los contratos tienen el mismo formato que cualquier dirección Ethereum común y corriente (0xf4d23…).
- ¿Cualquier persona a la que le envíes la dirección del contrato podrá interactuar con él? Si, cualquier persona, contrato o código podrá interactuar con él mediante transacciones o llamados (calls), solo con su dirección.
- ¿Puedo decidir quienes pueden interactuar con mi contrato inteligente? Podemos de manera opcional delimitar mediante código quienes pueden consultar, añadir y modificar información sobre estos contratos inteligentes.
¿Qué herramientas necesito para desarrollar un Contrato Inteligente?
Para esta labor utilizaremos solo 2 herramientas:
- Plugin Metamask para navegadores Google Chrome/Mozilla Firefox: Nos permitirá conectar nuestro navegador a la red Ethereum en sencillos pasos.
- Browser Solidity: Se trata de un entorno de programación para Solidity totalmente online. Nos permitirá programar y ejecutar nuestro Contrato Inteligente, realizar llamados a la funciones internas del contrato, añadir y modificar información del mismo.
Luego de muchas noches de lectura y programación en Solidity, pude comprender al fin que un Contrato Inteligente no es más que una especie de sub-Base de datos en la Blockchain Ethereum (pues la Blockchain ya es otro tipo de Base de datos).
En la segunda parte comenzaremos con Solidity, explicaremos algunas de sus características, funciones y variables globales, que a nuestro parecer es lo más relevante para comenzar a programar en él. Utilizaremos las redes de prueba de Ethereum (Rinkeby/Ropsten) para ejecutar el código creado, pues en estas redes los ETHER que se crean no son reales, pues son más fáciles de obtener y no pueden ser transferidos a la red Main Net (Red real).
¿Alguna duda?
Siempre puedes dejarla en los comentarios y te responderemos lo antes posible 😉
Segunda parte: [dApp] dMessenger – Libro de visitas descentralizado
Tercera parte: Tutorial – dApp Venta de entradas [dEvents]
Saludos etherians!
quiero crear una comunidad de desarrolladores de ethereum y queria saber si pueden ayudarnos?
Hola Cesar!
Estamos precisamente creando una comunidad, te acabo de enviar una invitación a tu correo para que puedas entrar al grupo.
Saludos.
Hola … Favor incluirme también en el grupo de desarrolladores…. Estoy empezando a investigar sobre la programación en ethereum y los contratos inteligentes… Gracias
Hola Antonio!
Según el sistema de Slack ya fuiste invitado. Por favor revisa tu bandeja de entrada o spam, si no aparece procura buscar «Slack» en tu proveedor de e-mail.
Saludos.
Hola qué tal? Me parece que este tema esta en pañales en Chile. Soy egresado de leyes, pero también tengo interés por la programación, creo que si el internet de las cosas sigue avanzando los smart contract serán el futuro y respaldo de todo. Una consulta: ¿ Creen que la vinculación leyes y contratos inteligentes irá en aumento o por el contrario debido a la autonomía de estos la relación cada vez será más nula?. Me gustaría participar, saludos!
Hola Franco, buenas tardes.
Es una tecnología muy nueva aún en Chile, por lo que creo que la regulación de estos contratos va a tardar más que en otros países. Faltan desarrolladores en Chile que programen en esta plataforma y generen «dependencia» de los contratos inteligentes.
Saludos!
Hola!
Me gustaría participar también en el slack de desarrolladores, actualmente me encuentro aprendiendo a través de la documentación de Truffle.
Saludos
Hola Vicente, buenas noches.
Al parecer ya ingresaste al slack con este correo. De todos modos te dejo un enlace para que te registres nuevamente de ser necesario Grupo Slack
Saludos!
Hola,
Por favor, me gustaría unirme a este grupo.
Muchas gracias!
Buenas tardes Victor, bienvenido.
Te acabo de añadir al Slack de la comunidad, solo debes pinchar el enlace que te llegará en unos minutos y completar un sencillo formulario. Si tienes problemas por favor envíanos un mensaje por el formulario de contacto.
Saludos!
Hola, estoy interesado en entrar en la comunidad de desarrollo!
Saludo
Hola Nicolas, buenas noches.
Primero que todo quería darte las gracias por tu interés en la comunidad Ethereum Chile. Te acabo de enviar una invitación para entrar al Slack donde estamos hablando. Te esperamos 😉
Saludos!
Hola, me podrian invitar al grupo de desarrolladores?
Saludos!
Hola Leonardo!
Te acabo de enviar la invitación para entrar al Slack, muchas gracias por tu interés.
Saludos.
Hola, me podrian invitar al grupo de desarrolladores?
Hola José, gracias por tu interés en la comunidad!
Te acabo de enviar una invitación para participar del grupo en Slack.
Saludos.
Hola, tambien estoy interesado en participar del grupo, me podrian invitar?
gracias
Saludos
Hola Eduardo,
Se te acaba de enviar una invitación para participar del grupo en Slack.
Saludos!
Me parece excelente que se esté armando una comunidad entorno a este tema, los felicito por la iniciativa! ¿Me podrán incluir en el slack? Me interesaría Participar 🙂
Hola Stefano!
Muchas gracias por tu interés en la comunidad, te acabo de enviar un enlace al correo.
Saludos.
Hola amigos, felicitaciones por haber iniciado esta comunidad hace tanto tiempo. Estará aún vigente? Me gustaría entrar.
Saludos!
Hola. ¿Podríais informarme de cómo puedo formar parte de la comunidad? He llegado aquí con la idea de encontrar más gente interesada en desarrollar en Ethereum para unir fuerzas y generar sinergias provechosas, y tengo algunas ideas en mente que creo podrían resultar interesantes. Muchas gracias y enhorabuena por la iniciativa. 🙂
Hola Izzu!
Nos estamos organizando mediante un grupo en Slack, te acabo de enviar una invitación. Muchísimas gracias por tu interés en formar parte de la comunidad de Ethereum en Chile!
Saludos.
Me gustaria poder formar parte del grupo slack, estoy viendo las posibilidades de los smart contract y me gustaria crear un prototipo de una idea. Gracias por el post, es muy buena ayuda para los que empezamos 🙂
Hola Cristobal,
Te acabo de enviar una invitación para ingresar al grupo en Slack, muchas gracias por tu interés!
Saludos!
Hola de nuevo, como puedo estar en vuestro grupo de Slack ? Gracias.
Hola Ismael!
Te acabo de enviar una invitación para entrar al grupo de Slack. Muchas gracias por tu interés en la comunidad.
Saludos.
hola estimados, favor de incluirme en el grupo ya que deseo poder aportar y aprender de la comunidad.
saludos
Hola Mario,
Muchas gracias por tu interés en la comunidad, te acabo de enviar una invitación para entrar al grupo en Slack.
Saludos!
Hola,
Gracias por todo el aporte realizado. Me interesaría también poder participar de la comunidad.
Gracias y saludos,
Hola Gonzalo,
Te acabo de enviar una invitación para participar en el grupo en Slack. Muchas gracias por tu interés.
Saludos!
Hola,
Me encantaría entrar a mí también.
Hola!
Te acabo de enviar una invitación para participar del grupo en Slack.
Saludos 😉
Señores soy novato en esto de las criptomonedas, lamento no a ver entrado antes a este mundo, me gusta la programacion y estoy convencido q el futuro sera para los programdores, por favor indiquenme por donde empiezo. Mil gracias
Soy licenciado en Estadística , profesor jubilado y he trabajado en varios lenguajes de programación. Me gustaría saber cuál o cuáles lenguajes se pueden usar para trabajar con la tecnología blockchain y como se maneja el almacenamiento en HDD.
Hola Fernando,
El lenguaje de programación que se utiliza para programar Contratos Inteligentes se llama Solidity y puedes encontrar su documentación oficial dando clic aquí. Respecto al almacenamiento, eso lo maneja la red, ya que la información se distribuye entre los distintos nodos que participan de Ethereum.
Saludos.
me gustaria formar parte de la comunidad de desarrolladores etherum gracias
Hola pep!
En breve deberías recibir la invitación para entrar al grupo en Slack. Muchas gracias 😀
Saludos.
Hola, Me interesaria estar en el grupo de desarrolladores. Saludos desde Bariloche, Arg.
Hola Facundo!
Se te acaba de enviar una invitación para formar parte del grupo en Slack 😀 . Muchas gracias por tu interés!
Saludos.
Hola, me gustaría formar parte de la comunidad de desarrolladores, gracias y saludos.
Hola Alan!
La invitación fue enviada hace días ya. La recibiste? Avísame por favor.
Saludos.
Hola!
Me interesaría estar en el grupo de desarrolladores de ethereum.
Vivo en Rosario, Argentina.
Saludos
Hola, me interesa estar en el grupo de desarrolladores. Estoy interesada en el área.
Hola Mei!
Te acabo de enviar la invitación a tu correo. Muchas gracias 😉
Saludos.
Hola. Me gustaría participar en la comunidad. Gracias.
Hola Albert, muchas gracias por tu interés!
Te acabo de enviar una invitación para formar parte del grupo en Slack de la comunidad.
Saludos.
Hola. Me gustaría formar parte de la comunidad. Escribí antes pero no me contestaron.
Gracias
Hola Maxi,
Muchas gracias por tu interés en formar parte de la comunidad. Te acabo de enviar una invitación, por favor avísame si no la recibiste.
Saludos!
Buenas!
me interesaria formar parte tambien, recien me estoy metiendo en este mundo, pero se ve interesante.
Saludos!
Hola Mauricio, muchas gracias por tu interés 😀
Te acabo de enviar una invitación para que formes parte del grupo en Slack.
Saludos!!
Saludos por favor agregarme:
moises@facilmedica.com
tengo una empresa de programación.
Hola Moises!
Invitación enviada, muchas gracias por tu interés en formar parte de la comunidad 😀
Saludos.
Saludos, trabajo en seguridad de la información.
Este tema es de gran interés para mi, ¿podrías invitarme? 🙂
Muchas gracias!!
Hola Sergio!
Te acabo de enviar la invitación para participar del grupo en Slack. Gracias por tu interés 😀
Saludos.
hola, me gustaria entrar a la comunidad.
siento que tiene mucho potencial aparte de tener un gran interes para seguir aprendiendo del tema.
Hola Hector!
Te acabo de enviar la invitación para entrar al grupo en Slack.
Saludos 😀
Hola Hector.
Excelente iniciativa te felicito, soy totalmente novato en el tema, pero me interesa mucho, me invitas a formar parte de esta comunidad?
Saludos
Hola Fernando!
Te acabo de enviar la invitación para entrar al Slack. Muchas gracias por tu interés, te esperamos!
Saludos 😀
Buenas, estoy actualmente estudiando el tema de Blockchain, me gustaria que me recomendaran algun sitio para comenzar a programar desde el nivel basico como el avanzado.
saludos
Hola Gustavo,
Te envié hace unos minutos la invitación para formar parte del Slack de la comunidad. Te estamos esperando 😀
Saludos 😉
Me gustaría participar de la comunidad.
HOLA SOY DE COLOMBIA QUIERO HACER PARTE DE LA COMUNIDAD
Hola María José!
La invitación ya fue enviada, por favor revisa tu correo 😀
Saludos.
Estimados,
Soy desarrollador y me gustaría ser parte de la comunidad para empezar aprender más sobre blockchain.
Saludos.
Hola Diego, muchas gracias por tu interés 😀
Te acabo de enviar la invitación, así que atento a tu correo!
Saludos 🙂
Buenas tardes,
Soy desarrollador y me gustaría ser parte de la comunidad para empezar aprender más sobre blockchain.
Saludos.
Hola Carlos!
Se te acaba de enviar la invitación, muchas gracias por tu interés en formar parte de la comunidad.
Saludos 😀
Hola, me gustaría unirme a la comunidad, los contratos inteligentes son fascinantes, es el futuro, saludos.
Hola skangel, muchas gracias por tu interés en la comunidad 😀
Te acabo de enviar una invitación para formar parte del Slack de la comunidad!
Saludos 🙂
Hola!! Me gustaría unirme a la comunidad!! Encuentro que los contratos inteligentes van a ser requisito en la medida que nos vamos adentrando en la tecnología (internet de las cosas, etc) No soy programador nato, pero tengo habilidad para los análisis y quiero aprender como se construyen! Saludos!
Hola Johan, muchas gracias por tu interés 😀
Te envié la invitación al e-mail de este comentario, por favor revisa que te haya llegado OK.
Saludos 😉
Hola, soy ingeniero informático y me gustaría ser parte de la comunidad para aprender más de Smart Contracts.
Hola Alex!
Te acabo de enviar la invitación para formar parte del grupo en Slack, muchas gracias por tu interés, te estamos esperando 😀
Saludos 😉
Quiero entrar a la comunidad de programadores, vivo en Quito Ecuador y aqui es nuevo todo este tema.
Hola Rafael!
Se te envió la invitación al e-mail que especificaste en este comentario, por favor revisa tu bandeja de entrada o correos no deseados en el peor de los casos 😀
Saludos.
Me puedes enviar la invitacion para unirme al grupo de desarrolladores
Hola Jose Luis, muchas gracias por tu interés en la comunidad 😀
Revisa tu bandeja de entrada o correos no deseados si es que no te aparece.
Saludos 😉
Hola amigos, podrían enviarme una invitaicón a su grupo slack.
Saludos!
Hola Camilo!
Te acabo de enviar la invitación, muchas gracias por tu interés 😀
Saludos.
Hola, me parece un proyecto muy interesante, serías tan amable de enviarme una invitación? gracias
Hola Galayo!
Se te acaba de enviar una invitación para formar parte del Slack de la comunidad, muchas gracias por tu interés 😀
Saludos 😉
Hola, interesante me tema. Me gustaría participar en su comunidad.
Saludos y gracias.
Hola Rafael, muchas gracias por tu interés en la comunidad 😀
Por favor revisa tu e-mail, te envié la invitación hace unos minutos.
Saludos 😉
Hola. Igual estoy interesado en esste proyecto y me gustaria participar. Souy desarrollador.
Hola Reinaldo 😀
Por favor revisa tu e-mail, te envié la invitación hace unos minutos. Gracias por tu interés!!
Saludos 😉
Buenas noches, quisiera ingresar al grupo de colaboradores. Gracias por su atención.
Hola Laura!!
Muchas gracias por tu interés en la comunidad de Ethereum en Chile. Te envié una invitación hace unos minutos, por favor revisa tu bandeja de entrada.
Saludos 😉
Hola, podrian enviarme la invitacion al grupo? Estoy muy interesado al tema.
Muchas gracias
Saludos desde IT
Hola Alessandro 😉
La invitación ya fue enviada, por favor revista tu correo. Gracias por tu interés!!
Saludos 😀
Hola…desde Mexico me interesa unirme a su grupo de programación en ethereum…ojal puedan agregarme…saludos
Saludos, quisiera ser parte de su equipo, tambien me estoy iniciando en el desarrollo de contratos inteligentes
Hola! Muy buena la iniciativa, felicitaciones
Estoy interesado en pertenecer al grupo de colaboradores.
Saludos !
Saludos, me parece muy interesante el tema, también quiero ser parte de la comunidad… Me enviarías una invitación? Muy agradecido
Buen día, a mi también me interesa participar en la comunidad de desarrollo, me podrían enviar una invitación por favor
Hola!
tengo una pregunta hace un tiempo
entiendo como funciona un smart contract, pero mi pregunta va a como se ejecuta en la realidad? cuando uno lo hace publico y es visible por todos, eso no es una garantia de que la contraparte lo cumpla cierto? eso aun no lo tengo claro, por favor si alguin me lo pudiese explicar…
muchas gracias!
Hola, estamos desarroyando una idea basada en smartcontract con un grupo de ingenieros Chilenos. pero ninguno tiene mucho conosimiento de solidity.
nos gustaria contactarnos con algun Dev. que nos pueda orientar y enventualmente implementar la idea.
Saludos,
Alfons
Hola! Estoy muy interesado en el tema! Me podrían enviar una invitación al grupo? Tengo varias ideas que me gustaría desarrolllar del tema.
Saludos
Hola amigos!! quiero unirme a la comunidad!! estoy investigando los sobre los contratos inteligentes y quiero aprender mucho mas!!! por favor podrian agregarme como miembro??
saludos!!!
Hola Lucas!
Puedes encontrar el foro de la comunidad en https://foro.uniendo.la
Muchas gracias por tu interés, un abrazo!
Me gustaría formar parte del grupo.
Soy programador y resido en España y estoy muy interesado en aprender sobre el tema.
Gracias.
Hola Daniel,
Revisa tu correo por favor 😀 Puedes encontrar la comunidad en https://foro.uniendo.la
Saludos!
me interesaría que me sumen al grupo. Si hay uno en telegram, mejor
Hola Hector!
Te puedes unir a la comunidad en https://foro.uniendo.la 😀 Cualquier duda o aporte es muy bien recibido.
Muchas gracias por tu interés, un abrazo 😀
Estimados, agradeceria me sumanar a la comunidad slack. Me interesa muchísimo aprender más sobre blockchain.
Hola Edison!
Te acabo de enviar una invitación para formar parte de la comunidad. Muchas gracias por tu interés 😀
Saludos, Javier Guajardo 🙂
Me parece increíble, me gustaría poder entrar a esta comunidad.
Por favor !!
Hola Romina!
Ahora mismo te envío la invitación para formar parte de la comunidad. También puedes visitar https://uniendo.la 😉
Saludos, Javier Guajardo.
Hola. Buen día.
Estoy interesa en el tema, me gustaría por favor me agregues al grupo o comunidad.
Hola, muchas gracias por tu interés!
Te acabo de enviar una invitación a tu correo electrónico. Avísame si te llegó por favor 🙂
Saludos, Javier Guajardo.
Hola, buenisimo el trabajo que estas realizando. Me gustaria unirme a la comunidad, soy de neuquen Argentina. Saludos!!!
Hola Ernesto!
Te acabo de enviar una invitación para formar parte de la comunidad 😀 . Muchas gracias por tu interés 🙂
Saludos, Javier Guajardo
Buenos días! Me gustaría unirme a la comunidad de desarrolladores! gracias
Hola Rocio!
Te acabo de enviar una invitación para formar parte del Slack de la comunidad. Muchas gracias por tu interés 😀
Saludos, Javier Guajardo.
Buenos días desde España, me gustaría recibir invitacion para formar parte del Slack.
Muchas gracias
Me interesa pertenecer a la comunidad, estoy recien empezando en blockchain
Buenos días estimado
Me gustaría formar parte del grupo de desarrolladores, de antemano, gracias.
Hola Felipe, la invitación fue enviada a tu casilla.
Muchas gracias por tu interés, nos vemos en el Slack 😉
Hola
Envié un msj, pero no sé si se publicó.
Me gustaría participar de esta iniciativa. Saludos
quiero participar en la comunidad.
Hola!!
Estoy muy interesada, me gustaría formar parte de la comunidad.
Muchas gracias!
Hola Camila,
Te acabo de enviar una invitación para formar parte de la comunidad. Muchas gracias por tu interés, que tengas buena noche 🙂
Saludos, Javier Guajardo
Hola Javier… Quiero ser parte del grupo de desarrolladores….
Estoy empezando en la programación en ethereum y los contratos inteligentes
Muchas Gracias
Hola Francisco,
Te acabo de enviar una invitación para formar parte del grupo. Cualquier consulta que tengas no dudes en enviar un mensaje a través de este canal.
Saludos, Javier Guajardo.
Hola
Me gustaría formar parte de la comunidad desarrolladores, estoy comenzando en esto 😀
Hola Barbara,
Te acabo de enviar una invitación para formar parte del grupo. Cualquier consulta que tengas no dudes en enviar un mensaje a través de este canal.
Saludos, Javier Guajardo.
hola!, me gustaria unirme al slack
Hola Damian,
Te envié una invitación hace unos días, la recibiste? Muchas gracias por tu interés 😀
Saludos, Javier Guajardo.
Hola, también me interesa participar. Ahora necesito hacer un contrato inteligente y no encuentro nada. Lo más cercano a lo que busco es una empresa española que me puede ayudar. Por favor añadirme a la estructura de trabajo que quieren hacer. Gracias
Interesante tu comunidad soy de Colombia y me gustaría estar en el grupo
Hola Juan Lopez,
Te envié una invitación hace unos días, la recibiste? Muchas gracias por tu interés 😀
Saludos, Javier Guajardo.
Hola Javier,
Estoy empezando en este mundo de solidity y me gustaria unirme a la comunidad de slack, ¿me podrias mandar una invitación?
Gracias.
Hola Jose Luis,
Te envié una invitación para formar parte de la comunidad, muchas gracias por tu interés 😀
Saludos, Javier Guajardo.
Buenas noches. Soy de Venezuela, quisiera unirme al slack. Tengo muchas ideas en Mente Sobre este tema que pienso y considero que sera la proxima revolucion despues del internet, lo que es la blockchain y los smartcontracts
Hola Sonny,
Te envié una invitación para formar parte de la comunidad, muchas gracias por tu interés 😀
Saludos, Javier Guajardo.
Saludos trabajo en el área de tecnología de la Administración pública y estoy introduciendo me en el tema de los smarts contracts , muy bueno el artículo