Yoram Kornatzky
Aug 25, 2018 · 3 min read

Developing for Ethereum requires several moving parts. Our goal is to kickstart your debugging experience. Instructions apply to both MacOSX and Windows.

Image for post
Image for post

Geth — A Local Ethereum Node

Why Geth?

Initializing Geth

geth --datadir=./datadir init genesis.json

Creating Accounts

geth --datadir=./datadir account new

Mine Only When There Are Transactions

geth --datadir=./datadir console
miner.start()

Running Geth for Development

geth --datadir=./datadir --nodiscover --rpc --rpcapi "db,personal,eth,net,web3,debug" --rpccorsdomain='*' --rpcaddr="localhost" --rpcport 8545 --unlock 0,1,2,3,4 --password password.geth.remix.txt  --jspath . --preload ethtxminer.js  console

Remix

http://remix.ethereum.org

Remixd

npm install -g remixd
remixd -s contracts

Open Local Files in Remix

Creating Accounts

ABI and Bytecode

Using Openzeppelin

github.com/OpenZeppelin/
github.com/OpenZeppelin/openzeppelin-solidity/contracts/crowdsale/Crowdsale.sol

Debugging

What Cannot be Done in Remix?

What Does Not Work in Remix

Common Errors

Out of Gas in Remix

Oversized Data in Deploy

Image for post
Image for post

2key

Re-Inventing the Link

Yoram Kornatzky

Written by

Open source, Mobile, Web, Cloud, Server - Independent Information Technology and Services Professional http://yoramkornatzky.com kornatzky@gmail.com

2key

2key

Re-Inventing the Link

Yoram Kornatzky

Written by

Open source, Mobile, Web, Cloud, Server - Independent Information Technology and Services Professional http://yoramkornatzky.com kornatzky@gmail.com

2key

2key

Re-Inventing the Link

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch

Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore

Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade

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