Skip to content

Latest commit

 

History

History
182 lines (116 loc) · 8.33 KB

README.md

File metadata and controls

182 lines (116 loc) · 8.33 KB

Resources for learning blockchain development

Companion resources for Patrick Gallagher's blockchain courses and workshops. #BUIDL

NOTE: Resources can be used for your course with permission. Just ask!

  • Make your own personal token
  • Splitter tool: Quickly split Ethereum among multiple addresses.
  • Public key encryption with paint.
  • Tokenize all the things!
  • Use a DApp to play Trivia
  • Introduction to wallets
  • Setting up MetaMask

Resources

Lesson 1 - Hands-on Blockchain

What is Blockchain

Ethereum-specific resources

Set up a Software wallet

Use-cases and DApps

Smart Contracts

Encryption

Online Training

Lesson 2 - Smart Contracts

Solidity

Development Environments, SDKs, tools

  • ConsenSys Truffle suite. Development environment, testing framework and asset pipeline for blockchains using Ethereum
  • JP Morgan Chase Cakeshop. Development environment and SDK for Ethereum-like ledgers.
  • Big list of tools

Wallets

  • Advanced wallet w/ crypto-collectibles Vault.io (warning: untested)

Q: What does m/44'/60'/0'/0 mean when using my hardware wallet?

  • 44 — BIP 44
  • 60 — Ethereum’s coin type
  • 0 — Account 0
  • 0 — Chain 0 (mainnet)

Vocabulary

DApps

DApps that make you think "this is a thing?"

Conference Videos

https://blockstack.org/berlin2018

Online Training

The best paid DApp course by Stephen Grider ($10 Udemy)

Coding Challenges

Newsletters

Books

  • Great examples of Smart Contracts: “Blockchain Applications: A Hands-On Approach” by Arshdeep Bahga and Vijay Madisetti
  • A big-picture understanding of the blockchain space: “Cryptoassets: The Innovative Investor's Guide to Bitcoin and Beyond” by Chris Burniske and Jack Tatar

Bounties Grants and jobs

Lesson 3 Decentralize Applications (DApps)

Using Web3

WARNING! Don't be a dummy like me and make sure you are using the correct version of web3. Check your package.json file and delete the caret "^" on web3 to prevent automatically updating to a newer version and breaking your DApp.

  • Truffle can have its own web3 syntax. Use these docs. Upon Truffle version 5 release, it will use web3 1.0.0.
  • For "web3": "0.2x.x" use these docs and assign variable directly
  • For "web3": "1.0.0-beta.26" use these docs and use .then() callback promises

Diagnosing issues

Security assessment

Wallet integration

Advanced Topics