Getting Up to Speed on Ethereum

  1. You’re a professional software engineer
  2. You want to have a deep working understanding of Ethereum and the related ecosystem.
  1. You understand the concept of a blockchain and how Bitcoin uses it to create a trustless digital currency. No? Watch this short video or watch this long video. Hint, you should probably watch the long one.
  2. You’re a professional software engineer. Seriously, I mean, nontrivial amounts of real-world software engineering experience. Understanding systems/architecture/math is a learning efficiency multiplier.
  3. Like a week of your free time. I told you we’re skipping the nonsense.
  4. You understand the basic concept of a merkle tree and how it can be used to quickly verify information correctness.

Ethereum

Smart Contract

Gas

Distributed App (dApp)

dApp Client

dApp Browsers

  1. Provide a connection to an Ethereum node (either to one hosted locally or remotely) and an easy way to change that connection to point to a different node (which might be connected to a different network),
  2. And provide an account interface (“wallet”) for the user so that they can easily interface with these dApps.

Ethereum Nodes

Ethereum Tokens

ERC20 / ERC223 / ERC777 / ERC827 / All the Tokens

ERC721 / NFT Tokens

Interfacing with Smart Contracts

Truffle, Embark, Populous, Perigord & Others

ETHPM & NPM

State of the Networks

“Accounts” vs “Wallet”

EVM and the State of Smart Contract Creation

Solidity

pragma solidity ^0.4.11;contract BasicToken {mapping(address => uint256) balances;function transfer(address _to, uint256 _value) returns () {
balances[msg.sender] = balances[msg.sender] - _value;
balances[_to] = balances[_to] + _value;
}
function balanceOf(address _owner) constant returns (uint256 balance) {
return balances[_owner];
}
}

LLL

(seq
(def 'node-bytes 0x00)
(def 'owner 0x20) ; address
(def 'set-node-owner 0x5b0fc9c3) ; setOwner(bytes32,address)
(def 'get-owner (node)
(sload (+ node owner)))
.... this is just for illustration purposes, this definitely won't compile.

Serpent

Vyper (previously Viper)

Bamboo

Others

Smart Contract Decompilation/Disassembly

Smart Contract Security

Whisper

Decentralized Autonomous Organizations (DAOs)

Ethereum Classic and the DAO Hack

Aragon

Swarm

Projects

IPFS & FileCoin

Augur

Gnosis

Golem

0xProject

Swap

Bancor

Stablecoins, MakerDAO, & Dai

Oraclize

BTCRelay

Open Zeppelin & zeppelin_os

ENS - Ethereum Name Service

The Brave Browser & The Basic Attention Token

uPort & Civic

district0x

People and Players

ConsenSys

Zeppelin

Protocol Labs

Blockchain Capital Landscape

Financial Landscape

Community

Future

Finally

--

--

--

Love podcasts or audiobooks? Learn on the go with our new app.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
one of the many matts

one of the many matts

More from Medium

Everything wrong with NFT’s

Welcome and thank everyone for joining the

Opinion 12–30–21

Exploring new horizons with meta, NFTs, and crypto