Past Meetup

SOLD OUT! Workshop for Developers: Building Decentralized Apps From Scratch

This Meetup is past

14 people went

Location image of event venue

Details

**Note: this workshop is currently at capacity. However, you may still sign-up on a waitlist via the Blockmason link below and we will notify you 2 days before the workshop date if a spot opens up.**

This comprehensive workshop, geared towards mobile and web developers interested in blockchain technology, explores the different levels of smart contract complexity; from basic read and write transactions to more complex interactions including an in-depth analysis of smart contract design.

In this workshop, you will build DApps that interact with a programmable blockchain and smart contracts designed for managing:
- Ownership authority - asserting who owns what in a collectible DApp
- Tracking to-dos - Basic checklist of tasks (http://todomvc.com/) recorded to the blockchain

Once you have learned to build a DApp the "hard" way, we will introduce Link (by Blockmason), an application which makes interacting with, and even deploying, smart contracts significantly easier.

Students completing the workshop will walk away having built a fully functioning DApp, along with a greater understanding and appreciation of the current challenges and complexities of interacting with smart contracts and the tools available to make smart contract development easier.

Cost:
$100 per person.

Blockmason will cover 100% of the cost as a scholarship for participants who apply through https://blockmason.link/link-workshops/, up to the maximum room capacity. Registration is on a ‘first come, first served’ basis. Note: attending on Meetup is NOT your ticket.

Workshop Overview:

We will use web3.js, Solidity, Truffle, Ganache, MetaMask, Infura, the Ethereum testnet and Link in this workshop.

A simple front-end template will be provided for the DApps, which will then be used to:
- Read from and write directly to the blockchain
- Read from and write to a basic smart contract
- Interact with smart contracts using Link
In addition, we will discuss smart contract design, specifically best practices around security pitfalls.

Requirements:

While this workshop is geared towards general mobile and web developers, the following prerequisites are recommended to get the most from this workshop:
- Intermediate knowledge of JavaScript and an understanding of promises
- Beginner knowledge of Node.js and NPM
- Familiarity with web3.js (https://web3js.readthedocs.io/en/1.0/getting-started.html)
- Familiarity with Solidity (https://solidity.readthedocs.io/en/v0.4.25/)
- A modern Windows or Mac laptop with the latest version of the following installed:
- Node and NPM - https://nodejs.org/en/download/
- Ganache - https://truffleframework.com/ganache
- MetaMask browser extension - https://metamask.io/
- Sign up for an Infura API Key - https://infura.io/register

*Please go to this link to register for the workshop: https://blockmason.link/link-workshops/

Lunch will be provided. Please message the organizer if you have any dietary restrictions.

Taught by:

Devin Canterberry is a seasoned generalist with a deep background in applied cryptography. He is a steward of software craftsmanship and professionalism, applying sustainable and scalable practices to building libraries, applications, and teams. Currently based in Seattle, Devin is building the next generation of blockchain technology with Blockmason, laying the foundation for a new era of massively distributed applications.

Harish Raisinghani is a technology enthusiast with a passion to teach and share. He has worked as a systems engineer, software developer, product manager and sales support for startups and larger companies. At Blockmason, Harish manages business and product development and even tinkers with code.

This workshop is presented by Devhub, Canada's only coworking and community space for software developers and programmers. In this new series of workshops, Devhub is stepping into the educational space with a set of events aimed at expanding the skill sets of developers, both experienced and beginner.