Technologies like Ethereum enable an entire new class of applications to be developed: DApps. Those are fully decentralized applications that use Ethereum and other technologies to completely remove the need for a central trusted 3rd party. 

In this workshop we will focus on the entire process of transforming an idea into a smart contract. If possible come with a simple idea that you want to realise as a contract. Otherwise some default ideas will be provided as a fallback. During the workshop you will develop, test and deploy the contract. 

Please note that the expected prior knowledge is at least basic familiarity with solidity (at the level of our first workshop). Basic knowledge of Javascript is also strongly recommended. If you’re unsure, have a look at the example contracts of the first workshop.

Topics include:

• Mapping the real world to contracts

• “Advanced” Solidity (e.g. Libraries, Inheritance)

• EPM: Ethereum Package Manager

• Truffle Development Framework

• Testing (with JS and Solidity)

• Standard contracts (ENS, ERC-20, etc.) 

• Manual Deployment

Requirements:

• working installation of node.js (a recent version)

• truffle (npm install -g truffle)

• ethereumjs-testrpc (npm install -g ethereumjs-testrpc) 

• geth (instructions (geth section), not required for most of the workshop)

If you have problems with setting things up, you can come 15 minutes earlier and we can help you out.