Ethereum - Getting Started for Newbies (byThetta.io microcompany tokenization platform)
Ethereum - smart contracts run on top of Ethereum Virtual Machine. Each state change is “saved” to the blockchain, but not to the memory of the single computer.
Very good list of Blockchain resources is available here (but don’t stop to read this document!) -https://a16z.com/2018/02/10/crypto-readings-resources/
**Very good book that is must read for any blockchain developer. Currently Ethereum uses same crypto-consensus algorithm, just like Bitcoin does. There is no necessity to read the whole book, you can skip chapters and sections.
https://www.amazon.com/Introducing-Ethereum-Solidity-Foundations-Cryptocurrency/dp/1484225341/
https://www.dropbox.com/s/c0pzi0fv51ow66w/Ethereum.pdf?dl=0
https://medium.com/blockchannel/tools-and-technologies-in-the-ethereum-ecosystem-e5b7e5060eb9
http://candidtim.github.io/ethereum/2016/03/24/ethereum-quick-start.html
http://blockgeeks.com/guides/what-is-ethereum/
Ethereum smart contracts guide is available here - https://github.com/ethereum/guide
PoS - https://github.com/ethereum/wiki/wiki/Proof-of-Stake-FAQ
https://habrahabr.ru/company/alfa/blog/323070/
https://habrahabr.ru/company/microsoft/blog/323548/
https://habrahabr.ru/company/neobit/blog/324456/
-
Research the https://www.myetherwallet.com
- generate new wallet- export the wallet to JSON
- load the JSON
- send or receive test transaction (say, 0.00000001 ETH)
-
Create coinbase account -very easy way to keep you crypto (but please don’t keep a lot! you can loose your money, because the service is centralized; also it can be hacked).
-
Check how block Explorer works -http://etherscan.io/
- see you transaction- check your transactions
- switch between mainnet and testnet
-
install geth and start it from your console
-
install parity and start it from your console (kovan or rinkeby testnet) + connect from the browser
-
Install Mist (Ethereum Wallet) and start syncing it with the mainnet (can take more than 100+ GB on your hdd)
- create new account
- check how smart contract deployment works
-
MetaMask chrome add-on
-
Brave web-browser
-
DApp vs ordinary web app
-
Infura.io
-
Miner
-
Node
-
Lightnode, different modes
-
Lightwallet
-
Blockcain sync
-
Consensus
-
PoW, PoS, (D)PoS, Raft/Paxos
-
Differences between decentralization and distributed systems
-
DHT (torrents)
-
Block, basic structures
-
MIner’s fee, rewards
-
Coinbase-tx
-
Public/private keys
-
Lightning network/Raiden
-
Segwit
-
51% attack
-
Transaction Maleability attack
-
Sybil attack
-
Eclipse attack
-
Blockchain bloat attack
-
Sharding
-
Plasma
-
Zero-Knowledge Proofs
-
Will for cycle (read-only iteration) eat gas?
-
What if the method throws - will gas be eaten?
-
What if you specified low gaslimit value?
-
**call vs send? What can be called in thefallback functionof the contract?
****http://ethereum.stackexchange.com/questions/765/what-is-the-difference-between-a-transaction-and-a-call
**http://ethereum.stackexchange.com/questions/6470/send-vs-call-differences-and-when-to-use-and-when-not-to-use -
**How to send tx in the Parity, if it stuck?
**https://kovan.etherscan.io/address/0xdf8845a26e1db43236e591a863289ad5c1fcda5a -
**tx.originvsmsg.sender?
**http://ethereum.stackexchange.com/questions/1891/whats-the-difference-between-msg-sender-and-tx-origin -
**mappingsandarrays of mappings?
**http://ethereum.stackexchange.com/questions/2718/is-it-possible-to-have-mappings-inside-mappings[** -
Why new solc version requires ‘payable’ modifier to be specified? Even if no money-consuming operations occur inside the fallback.
-
Contract address and account address have different formats?
-
**How to startprivatenode?
**https://blockgeeks.com/how-to-setup-an-ethereum-private-node/ -
**PoS vs PoW
****https://blockgeeks.com/guides/proof-of-work-vs-proof-of-stake/
**https://github.com/ethereum/wiki/wiki/Proof-of-Stake-FAQ -
What is PoA (Kovan)?
-
Is Byzantine generals problem solved?
-
What happens if you send ETH from the wallet that is not synced?
-
**How to execute arbitrary binary code? Is it even possible?
**https://github.com/ChainCloud/jibrel-contracts/blob/master/contracts/feature/bytecode/BytecodeExecutor.sol -
**How to get string hash?
**https://github.com/ChainCloud/jibrel-contracts/blob/master/contracts/feature/assetid/AssetID.sol -
**How to pass arrays/strings between contracts?
**https://gist.github.com/AnthonyAkentiev/68c90721d062b7b21879af7b74b1e95e -
**pure? view? staticcall?
**https://medium.com/blockchannel/state-specifiers-and-staticcall-d50d5b2e4920 -
**delegatecall
**https://ethereum.stackexchange.com/questions/3667/difference-between-call-callcode-and-delegatecall -
**memory vs storage?
**https://ethereum.stackexchange.com/questions/1701/what-does-the-keyword-memory-do-exactly -
Libraries -https://vomtom.at/upgrade-smart-contracts-on-chain/
-
NatSpec -https://ethereum.gitbooks.io/frontier-guide/content/natspec.html
-
**How to check if address is contract?
**https://github.com/ethereum/yellowpaper/issues/320
-
Cloneable -https://github.com/Giveth/minime
-
Token-curated registry -https://medium.com/@simondlr/city-walls-bo-taoshi-exploring-the-power-of-token-curated-registries-588f208c17d5
-
**LN Payment Channels
**https://medium.com/@matthewdif/ethereum-payment-channel-in-50-lines-of-code-a94fad2704bc
-
https://medium.com/@matthewdif/ethereum-payment-channel-in-50-lines-of-code-a94fad2704bc
-
https://funfair.io/approach-turing-complete-state-channels-part-1/
- Trusted Relay Networks (By Consensys) -https://blog.gridplus.io/introducing-trusted-relay-networks-6c168f72a6f6
-
ERC721 (non-fungible token, CryptoKitties) -https://github.com/ethereum/EIPs/issues/721
-
ERC223 (tokenFallback - receiving tokens callback) -https://github.com/ethereum/EIPs/issues/223