Postagens

Segundo Tutorial: Java e Ethereum - Smart Contracts

Imagem
Agora que já vimos uma operação simples de envio e recebimento de valores entre contas / wallets no Ethereum, vamos entrar no mundo dos contratos inteligentes.

Um contrato inteligente é um software cujo deploy é feito na rede Ethereum, ou seja, é distribuido ao redor de todos os nós da rede.

Para este exemplo vamos utilizar a linguagem Solidity para criação do contrato, você também pode utilizar a linguagem Serpent.

Vamos criar um contrato bem simples, que já está no repositório do GitHub:

https://github.com/alexjavabraz/javaParity

Inicializar o Parity: parity --chain testnet --rpcapi "eth,net,web3,personal,parity"


O Smart Contract de exemplo está dentro do projeto Maven.

src/main/resources/ContratoAlex.sol




1-Instalando o solc no Linux Ubuntu: O Solc é o solidity comand line compiler, é com ele que iremos compilar nossos smart contracts, gerando então os arquivos .abi e .bin.
O arquivo .abi (application binary interface specification) é a especificação do Smart Contract, por …

Primeiro Tutorial: Programando Ethereum com Java

Imagem
Pela primeira vez vou utilizar uma integração com a rede Ethereum na linguagem Java.

Durante muito tempo acreditei que isso não fosse possível, que teria que utilizar Go, NodeJS, Python e de fato estudei e criei algumas coisas nestas linguagens, principalmente em Go.

Mas o fato é que temos a possibilidade de utilizar Java, justamente por conta da integração via RPC, foi um tanto quanto difícil de fazer esta integração em Java pois navegando pela documentação do Parity e do web3J, existe muita coisa desatualizada, em menos de um mês o nó que utilizo neste artigo já fora atualizado 2x.

Vamos utilizar o Parity, se você ainda não tem ele instalado, acesse https://parity.io/

Após instalar é preciso inicializar ele, com o seguinte comando.

parity --chain testnet --rpcapi "eth,net,web3,personal,parity"


O projeto completo está em : https://github.com/alexjavabraz/javaParity.git

Este é um projeto que utiliza o Maven, a dependência do web3J está dentro do pom.xml


Verificando a versão …

Ethereum programação básica Part. 2

Imagem
Conforme prometido segue mais um pouco desta tríade sobre o desenvolvimento com Ethereum.

Hoje vou falar sobre como implementar chamadas, consultas, enfim interagir com a rede Ethereum.

Espero que você já tenha um nó Ethereum (Parity) instalado, vamos colocar este nó para rodar utilizando a rede de teste kovan.

parity --chain kovan

O nó vai começar a sincronizar com a rede, baixando os blocos até estar atualizado:



Muito bem agora que o nó está executando, podemos rodar alguns comandos básicos, para este exemplo vou utilizar nodeJs com NPM, utilizando o pacote web3.

Hein?

Node JS 
NPM

Como editor de código, estou usando o Microsoft Code.

Depois de instalar o Node e o NPM, você precisa instalar a dependência web3:

Aqui você pode ter mais detalhes.

npm install web3



Criei um arquivo chamado teste1.js e meu workspace ficou assim:


O conteúdo deste arquivo você encontra em : 

https://github.com/alexjavabraz/parityTest


Boas iniciativas com Blockchain

Hoje vou apresentar algumas boas iniciativas que existem rodando na plataforma Blockchain, algumas dessas iniciativas são aplicações derivadas do código fonte do Bitcoin, ou seja, são FORKS .

O primeiro FORK do Bitcoin originou a Namecoin, que é uma alt coin bem interessante, que visa prover um DNS distribuido ou seja, de-centralizado. Você pode baixar agora mesmo o software e criar seu domínio .BIT . Utiliza o conceito de Merged Mining que é uma forma de economizar energia minerando para duas redes ao mesmo tempo.

O Madesafe não é um projeto novo, ou seja, já tem uma boa maturidade tecnológica, o conceito principal é criar um compartilhamento de recursos, como disco e rede, e premiar os participantes. Desta forma você poderá armazenar seus documentos de maneira segura e distribuida, ao mesmo tempo poderá ter um nó rodando na sua máquina provendo recursos para outros usuários e sendo recompensado por isso na forma da moeda utilizada na rede, a safecoin.

O esquema de mineração desta mo…

Apple inovação e criatividade

A Apple nasceu no porão da casa de seu fundador Steve Jobs, e por muito tempo pensei que Jobs fosse o dinamo por trás da empresa movendo suas engrenagens em direção á inovação constante, por meio de sua tão discutida criatividade. De fato o principal criador da empresa, tem em grande parte responsabilidade pelo dna criativo da companhia, mas não é apenas isto o que fez da Apple o que ela é hoje.
Ouvindo as palestras de Walter Isaacson, escritor da biografia de Steve Jobs, nota-se que a dentro da companhia existia o que ele definiu como "Regras Apple". Sob estas regras, produtos como iPad, iPhone não nasceram de um estalo de gênialidade, mas de um time compentente formado por várias pessoas, juntamente com processos e máquinas. "A tecnologia sempre será disruptiva",  observou Isaacson. "Mas a personalidade criativa pode conectar ahumana à tecnologia".
Dessa forma entendo que a cultura de criatividade dentro da empresa, aliada á tecnologia, seja nos processos …

Adoção de Blockchain pelas grandes companhias

Não é segredo para ninguém que a tecnologia Blockchain tem se destacado no que diz respeito à sua possibilidade relativamente rápida de adoção pelas grandes corporações, como forma de melhorar seus processos administrativos, workflows de negócio, cadeia de produção, melhoria de performance e redução de custos.
Pelo menos é isso o que especialistas bradam aos quatro cantos, e talvez estejam certos, agora observando isso no dia-a-dia, este processo é muito mais complexo do que imaginamos, a tecnologia por si só já é provada, agora o desafio é sair do laboratório, e adentrar na produção e é aí que estão os principais pontos de atenção:
1 - Suporte: Qualquer grande empresa, precisa de um suporte para um novo produto, imagine então uma nova tecnologia tão promissora quanto à Blockchain.
2 - Expertise: É necessário ter um time dentro de casa com capacidade de dar uma resposta a curto prazo, em caso de problemas em ambiente de produção. Hoje existe uma defasagem de profissionais com os conhecim…

Meu Roadmap para aprender sobre Bitcoin

Ultimamente tem crescido muito o interesse das pessoas sobre o Bitcoin, recentemente ocorreram alguns casos que chamaram a atenção de gente antenada sobre o assunto, matérias na mídia mainstream, e em programas de TV tradicionais. Isso nos traz a uma reflexão muito interessante sobre a realidade do Bitcoin e até a sua ‘popularidade’, o que num país como o Brasil significa muito para esta criptomoeda.

Em virtude de todo este crescente interesse, como mencionado acima, trago a minha experiência no aprendizado da criptomoeda e das tecnologias por trás dela, este processo de aprendizado, confesso, para mim foi um grande desafio, eu que há 15 anos trabalho com desenvolvimento e delivery de software, em grandes instituições, centralizadas, acostumado à um poder central, este novo paradigma exigiu de mim máxima intensidade, máxima dedicação e muitas noites em claro, mas a visão que se abriu depois fez valer à pena.

Eu comecei lendo este livro do Fernando Ulrich e , disponível no site do instit…