Get Started with Ethereum
*This document won't be maintained as the ecosystem is frequently changing but some scratch notes of mine..*
So you want to be a Blockchain developer?
https://tr3y.io/articles/crypto/how2bloccchain.html
What do blockchain developers commonly work with?
- Work with blockchains
- Smart Contracts
- Work with Solidity
- Work with Truffle
- Web3
- React.js
Timeframe (aggressive if you have some development / technical background)
10-20hrs a week of focused study.
- 1-3 months you may get work for small nft project or rug erc20 projects (your choice)
- 3-6 months small funded startup (more legitimate projects)
- 6-12 months probably a larger / midsize company (legitimate business)
Crypto Devs Community on Discord (highly recommend to join) -
*Watch for scams in DMs*
- Crypto Devs
- https://discord.gg/AQ96PSkcrV
Online Training - Good but less brand recognition for larger companies. This will get you up to speed quicker, but bigger companies may need more proof of your knowledge.
Core Fundamentals of Blockchain and Ethereum
- Build and Ethereum Blockchain App
- This course has high production quality as and teaching as if in a real class
7 Best Ethereum Courses [2022 JANUARY][UPDATED]
- Udemy - Ethereum and Solidity: The Complete Developer's Guide - $21.99 - Dev
- Udemy - Blockchain for Business: The New Industrial Revolution - Non-dev
- Udemy - Ethereum Blockchain Developer Bootcamp With Solidity (2022) - Dev
- Coursea courses
- Udasity - Become a Blockchain Developer - $1356 - requires preques
- https://www.udacity.com/course/blockchain-developer-nanodegree--nd1309
- https://d20vrrgs8k4bvw.cloudfront.net/documents/en-US/Blockchain+Developer+ND+v2+Syllabus.pdf
More Traditional but fast track route training from well known universities. These are blockchain, but are geared towards the FinTech route.
- Columbia Engineering FinTech Boot Camp - 24 weeks - 12k - technical
- Oxford High Level not developer 3.5k (30 Mar 2022) - reg closes april 5th - 6 weeks
- Fintech Boothcamp 13k - 24 weeks - technical
- Berkeley FinTech Boot Camp -
Solidity (Ethereum) Training
- Solidity Tutorial - A Full Course on Ethereum, Blockchain Development, Smart Contracts, and the EVM - 2 hrs
Blockchain Certifications
TBD…
How to get started with blockchain - Quote from a Dev
“You should start with Solidity.
Remix is pretty popular. People use Hardhat as well but I prefer Remix.
Also if you're going to be doing web3 functions you should get caught up on Linux servers, so you'll know how to deploy the web3 on the backend.
There is a test network both for Polygon and Ethereum so you can make free contracts with those. Just Google the stuff. You can PM with question
Although I will admit learning material is slim on Google on this stuff right now as new it is.
In order to access web3 and set it up ON LINUX, first you must build an Ethereum node, or go to quicknodes.com and get a membership
They have a free option with limited calls so you can learn ND get started but if you have the means it's best to run you're own node.
They recommend a large sever, but you can also just stop the instance so you won't get charged when you're not actively using it”
Remix can be used to get started without any VM setup, but it’s more limited
—-- —-- —-- —--
Install Ethereum Development setup (test env)
Follow along a free training video:
https://www.youtube.com/watch?v=XLahq4qyors&list=PLzGB3STNnvdESHeoaCx37XZ_ZmoMKJ4rn&index=5&t=181s
In my case, I installed Fedora in a VM using Parallels on Macos:
- Install Parallels
- It had the smoothest onboarding
- I had major performance issues using VirtualBox, even after installing VBox Tools
- Install Fedora from quick menu
- Install dependencies
- https://www.ethdocs.org/en/latest/ethereum-clients/cpp-ethereum/building-from-source/linux.html
- git clone --recursive https://github.com/ethereum/cpp-ethereum.git
- cd cpp-ethereum
- dnf install boost-devel leveldb-devel curl-devel libmicrohttpd-devel miniupnpc-devel gmp-devel
- Probably more packages than you actually need. Did not return to verify.
- Fedora 24 (Do not recommend) I had issues with Virtual Studio and other apps crashing as a result of the following setup: I had future success with an Ubuntu build environment.
- dnf install git automake autoconf libtool cmake gcc gcc-c++ xkeyboard-config \ leveldb-devel boost-devel gmp-devel cryptopp-devel miniupnpc-devel \ qt5-qtbase-devel qt5-qtdeclarative-devel qt5-qtquick1-devel qt5-qtwebkit-devel \ mesa-dri-drivers snappy-devel ncurses-devel readline-devel curl-devel \ python-devel jsoncpp-devel argtable-devel libmicrohttpd-devel
- https://snapcraft.io/install/truffle/fedora
- sudo dnf install snapd
- sudo ln -s /var/lib/snapd/snap /snap
- Reboot
- sudo snap install truffle --beta
- Download Ganache
- https://next-stack.github.io/ganache/
- Cd ~/Downloads
- ./ganache-*-linux-x86_64.AppImage
- sudo snap install sublime-text --classic
- Requires the above snapd to be installed
- Sublime-text.subl .
- Opens all current files in directory
- Open sublime
- https://duckduckgo.com/?q=sublime+solidity+syntax+highlighting&iar=videos&iax=videos&ia=videos&iai=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3D_zZ0wbx-Ycg
- View - Show Console
- Might be missing some steps, look for a script on the internet to insert here if no package control available
- Preferences - Package control
- Package Control: Install Package
- Ethereum
- Restart app
- Npm install
- Not sure if you should fix sec vuln or this will break things
- Generally you don’t want security vulnerabilities :)
- Npm install solc
- https://www.npmjs.com/package/solc
- Sudo npm install –g truffle@5.1.39
- This is the version used in the video being followed
- You can install alternate versions this way for compatibility
- Sudo npm install solc-js@0.5.0
- Truffle version
- To verify version, this matters when run labs you may follow using other versions may not be compatible
- Make edits to your defi_tutorial sample as covered in the video
- Important note for Truffle and solc
- If you have issues when you try to “truffle compile” check the versions
- If it looks okay and still doesn’t work reboot
- If still does not work then:
- npm uninstall -g truffle
- npm uninstall -g solc
- npm install -g truffle
- Npm install -g solc
- Reboot
- To be continued…
Solidity App Examples
https://solidity-by-example.org/first-app/
Study Fundamentals
https://ethernaut.openzeppelin.com/level/0x4E73b858fD5D7A5fc1c3455061dE52a53F35d966
https://101blockchains.com/become-ethereum-developer/
- Consensus algorithms
- Smart contracts
- Transactions, Gas and Prices of Gas
- Incentives for Miners and Security
- Comparison of proof of work and proof of stake
- Token standards
- Sharding
- Setting up metamask and remix test env to get started and labs
- https://ethereum-blockchain-developer.com/