# Blockchain Starter CookBook by [blocsoc.eth](https://x.com/0xblocsoc).
Blocsoc is positioned to be a place with faster execution and open discussions. People with a curiosity to learn, execute and ambitious to change the world are welcomed here. High executing people will receive better incentives, positions, and decision making power at the club related activities. We expect everyone to maintain the minimum integrity with your peers and anyone from the team.
Weather you are choosing the dev or non dev path, it is always important to stay active on twitter. Crypto communities are very nice, find one to reside.
This starter guide is divided into 2 parts, with the first part being general for everyone in the club to read and learn. The second part contains dedicated sections for RnD and Non-Dev teams. There is an Appendix to with a few links to Circom, Gnark, Go and Rust learning resources.
## Part 1: General Overview about blockchains.
This list is meant for those getting started with blockchain or coming across blockchains for the first time. These are easy to understand blogs and videos about blockchain and Zero knowledge.
As a member of Blocsoc, we expect you to know about the fundamentals blockchain and web3. Remember blockchain is not equivalent to cryptocurrencies. Blockchain is far bigger and better than cryptocurrencies philosophically and technologically.
[What is BlockChain?](https://www.ibm.com/topics/blockchain)
[What is BlockChain? - Video](https://www.youtube.com/watch?v=kHybf1aC-jE)
[Ideology of web3](https://medium.com/coinmonks/the-ideology-of-web-3-38d3d9849e5a)
[What is CryptoCurrency?](https://www.forbes.com/advisor/portfolio/what-is-cryptocurrency/)
[History of BitCoin](https://historycooperative.org/the-history-of-bitcoin/)
[What is Ethereum?](https://ethereum.org/en/what-is-ethereum/)
[What are crypto wallets?](https://crypto.com/university/crypto-wallets)
[What are Layer 2s?](https://ethereum.org/en/layer-2/)
[Zero knowledge 101](https://pontem.network/posts/zero-knowledge-101)
[Zero knowledge proofs](https://ethereum.org/en/zero-knowledge-proofs/)
Optional Readings:
[Bitcoin White paper](https://bitcoin.org/bitcoin.pdf)
[Etherum White paper](https://ethereum.org/en/whitepaper/)
## Part 2: Domain specific.
As you have the necessary idea of block chains and zero knowledge. Its time to deep dive into the space. For easy learning the sections are divided into multiple parts and It is not necessary to complete everything given at once. The materials provided may be very long to read.
==[Skip to Non Dev Cook Book](#Non-Dev-Team)==
### Research and Development:
#### Ethereum Part 1:
This part focuses on ethereum consensus after the famous [Merge](https://ethereum.org/en/roadmap/merge), where it transformed from proof of work to proof of stake.
[Byzantine Generals Problem](https://medium.com/@learnwithwhiteboard_digest/what-is-byzantine-fault-tolerance-bft-in-blockchain-explained-cb06a12559be)
[How does new Ethereum Work?](https://www.preethikasireddy.com/post/how-does-the-new-ethereum-work)
[Why Proof of Stake?](https://vitalik.eth.limo/general/2020/11/06/pos2020.html)
[Ethereum Consensus](https://eth2book.info/capella/part2/consensus/)
#### Ethereum Part 2:
This part dives into state merklization and signature schemes used in proof of stake Ethereum.
[Signatures in Etheruem](https://eth2book.info/capella/part2/building_blocks/signatures/)
[Merkelization in Ethereum](https://eth2book.info/capella/part2/building_blocks/merkleization/)
#### EIPs:
[ERC20 - Fungible Token Standard for Ethereum](https://eips.ethereum.org/EIPS/eip-20)
[ERC721 - Non Fungible Token Standard for Ethereum](https://eips.ethereum.org/EIPS/eip-721)
[ERC1155 - Multi Token Standard](https://eips.ethereum.org/EIPS/eip-1155)
[EIP1559 - Fee Market Change](https://eips.ethereum.org/EIPS/eip-1559)
[ERC4337 - Account Abstraction](https://eips.ethereum.org/EIPS/eip-4337)
[ERC4844 - Blobs/DankSharding](https://eips.ethereum.org/EIPS/eip-4844)
[RIP7560 - Native Account Abstraction for Rollups](https://eip.directory/rips/rip-7560)
#### Defi Part 1:
The Defi - Decentralised finance, challenges the structure and functioning of current generation financial institutions. The raise of Defi and AMMs(Automated Market Makers) started with the introduction of UniSwap and there is no looking back interms of innovative solutions that followed. Until today, the best product market fit for blockchains found is DeFi and we observe a lot of tooling, mindshare, educative resources and support for DeFi around the blockchain Ecosystem.
Below contains neat explainers of Defi, ERC20 and Stable coins along with white papers of a must to know defi protocols UniSwap, Aave, Curve, Compound.
[What is Defi?](https://chain.link/education/defi)
[Why Defi?](https://andrecronje.medium.com/why-defi-14e961620ef9)
[Differences between CEX and DEX](https://medium.com/@bitstakecrypto/key-differences-between-dex-and-cex-40c171a220a0)
[ERC20 - Fungible Token Standard for Ethereum](https://eips.ethereum.org/EIPS/eip-20)
[Stable coins fully explained](https://medium.com/coinmonks/stablecoins-fully-explained-the-insiders-guide-to-understanding-crypto-s-killer-app-for-payments-863fb6cec6a9) - Cryptocurrencies are known for their volatile prices. Stable coins maintain their price constant with respect to a given instrument or currency like U.S. Dollar.
[UniSwap White Paper](https://app.uniswap.org/whitepaper.pdf) - Uniswap is the first Automated Market Maker. On Blockchains, its not possible for trades to match and get executed as in order book. AMMs introduce liquidity pools and a swap function for users to trade against liquidity.
[Aave White Paper](https://github.com/aave/aave-protocol/blob/master/docs/Aave_Protocol_Whitepaper_v1_0.pdf)
[Curve White Paper](https://dao.curve.fi/whitepaper)
[Compound White Paper](https://compound.finance/documents/Compound.Whitepaper.pdf)
#### Defi Part 2:
Defi is known for its innovative methods over time and ambitions to be as efficient and fast as CeFi. Along with reading about various concepts and whitepapers of protocols, one is advised to play around with the defi protocols.
[Defi Playlist by Smart Contract Programmer](https://www.youtube.com/playlist?list=PLO5VPQH6OWdX-Rh7RonjZhOd9pb9zOnHW)
[Lido Explained](https://oxor.io/blog/2024-02-01-lido-decoded-a-deep-dive-into-ethereums-liquid-staking-solution/) - Ethereum does not have delegated proof of Stake and anyone willing to participate in network activities as a validator need to stake 32ETH. For users intrested in earning yield from staking and does not want to burden themselves with node maintainance, but also participate in network decisions, use liquid staking solutions like lido.
[Ethernaut](https://ctf.openzeppelin.com/challenges) - Learn about Defi, by solving capture the flag challenges in solidity.
[Uniswap Explainer](https://uniswapv3book.com/) - A exhaustive explainer of uniswap v3.
[Yearn Finance](https://yearn.fi)
[Yield Farming](https://blockonomi.com/yield-farming/)
[Dune Web3 Analytics Dashboard](https://dune.com/discover/content/trending)
#### Learning Platforms:
There is no perfect way or platform to learn web3. Organised Web3 educational resources are scarce once up on a time, but with time there evolved good learning platforms.
[Alchemy University](https://university.alchemy.com/) - Ethereum Bootcamp and Learn Solidity courses from Alchemy uni are highly recomended.
[Cyfrin Updraft](https://www.cyfrin.io/updraft) - Updraft is the platform by most reknowed web3 tutor Patric Collins, offering the perfect begginers guide to start in web3 ecosystem.
[Learn Web3](https://learnweb3.io/) - Gamified Web3 Learning.
[Crypto Zombies](https://cryptozombies.io/) - Learn solidity by battling zombies.
look at the [Appendix](#Appendix) for more.
#### Zero Knowledge:
Zero Knowledge is a niche concept of cryptography, popularised by blockchains in late last decade for the ability to prove computational integrity of computation with private information. Zero knowledge comes as a pure math disciplane, but its implimentation requires good programming abilities. Its always fun learning zk.
The blogs consist of various levels of technical difficulty. ZK Book by RareSkills, MIT IAP and Stark 101 are the easiest to start with.
[Zero Knowledge Proofs: An illustrated primer](https://blog.cryptographyengineering.com/2014/11/27/zero-knowledge-proofs-illustrated-primer/)
[ZkSnarks vs ZkStarks](https://pseudotheos.mirror.xyz/_LAi4cCFz2gaC-3WgNmri1eTvckA32L7v31A8saJvqg)
[Zk Book by RareSkills](https://www.rareskills.io/zk-book)
[Quadratic Arithmatic Programmes](https://medium.com/@VitalikButerin/quadratic-arithmetic-programs-from-zero-to-hero-f6d558cea649)
[Exploring Elliptic Curve Pairings](https://medium.com/@VitalikButerin/exploring-elliptic-curve-pairings-c73c1864e627)
[Zk-Snarks Under the Hood](https://medium.com/@VitalikButerin/exploring-elliptic-curve-pairings-c73c1864e627)
[Stark 101](https://starkware.co/stark-101/)
[KZG Polynomial Commitments](https://dankradfeist.de/ethereum/2020/06/16/kate-polynomial-commitments.html)
[How to do trusted Setups work?](https://vitalik.eth.limo/general/2022/03/14/trustedsetup.html)
[MIT IAP 2023](https://zkiap.com/)
[Stark Math by StarkWare](https://medium.com/starkware/tagged/stark-math)
[Zero Knowledge White Board Sessions](https://www.youtube.com/playlist?list=PLj80z0cJm8QErn3akRcqvxUsyXWC81OGq)
[Zero Knowledge Puzzles](https://github.com/RareSkills/zero-knowledge-puzzles)
Zero Knowledge development go hands in hands with circom, go, python and rust. You can find more in the [Appendix](#Appendix)
#### Layer 2 Scaling Methods:
When Ethereum wanted to scale itself, a lot of ways were explored. Few argued ethereum should increase its minimum hardware requirements to scale easily at the cost of decentralisation. A lot on the sharding had explored too. But at the end Ethereum community settled down to the idea of Layer 2 scaling networks. Layer 2 networks, execute transactions offchain and settle them on Ethereum periodically. The layer 2 vision is such nice and generic that, now there have been a lot of alt research and implementations going on. This gave raise to [modular ecosystem](https://celestia.org/learn/beginners/modular-blockchains-for-beginners/).
These blogs are long and extensive exploring various perspectives of rollups.
[An Incomplete guide to rollups](https://vitalik.eth.limo/general/2021/01/05/rollup.html)
[L1s vs L2s, Rollups vs Integrated, General Purpose vs App Specific](https://dba.xyz/l1s-vs-l2s-rollups-vs-integrated-general-purpose-vs-app-specific/)
[(Almost) Everything you need to know about Optimistic rollup](https://www.paradigm.xyz/2021/01/almost-everything-you-need-to-know-about-optimistic-rollup)
[How do Optimism's Rollup really work?](https://www.paradigm.xyz/2021/01/how-does-optimism-s-rollup-really-work)
[Case of Dedicated Rollups](https://review.stanfordblockchain.xyz/p/25-caldera-the-case-for-dedicated)
A few Layer 2 Networks:
Optimism
Arbitrium
Base
ZkSync
Starknet
Scroll
Check out [L2beats](https://l2beats.com/) for more rollups.
#### Alt L1 Blockchains:
Blockchains other than Ethereum are mostly refered as Alt L1 blockchains. Ethereum famously pioneered blockchains with execution environments. Later blockchains focused on optimising on various part of blockchain stack viz consensus, decentralisation, execution and other inter block chain communication models.
Most recognizable Alt L1s are:
[Solana](https://solanahowitworks.xyz/) - Execution at the speed of network.
[Cosmos](https://coinmarketcap.com/academy/article/a-deep-dive-into-the-cosmos-network-and-the-cosmos-ecosystem) - Single Slot finality([Tendermint](https://tendermint.com/core/)) and Inter Blockchain Communication(IBC).
[Avalanche](https://www.theblock.co/learn/249520/what-is-avalanche-and-how-does-it-work-a-beginners-guide-to-avax-cryptocurrency) - Gossip based consensus(Snowman) and Warp Messaging(AWM).
Polkadot - Parachains.
* Cosmos and Avalanche are blockchain stacks. Blockchain stacks are used to spin a new L1 blockchain. The consensus of Cosmos, Avalanche, Polkadot is execution agnostic.
[Sui](https://sui.io) - Move lang based blockchain with [DAG based consensus](https://sui.io/mysticeti).
[Aptos](https://aptos.dev) - Move lang based blockchain.
Mina - ZK proved L1 chain.
#### Other Readings:
[Ethereum is a Dark Forest](https://www.paradigm.xyz/2020/08/ethereum-is-a-dark-forest)
[We're All Building The Same Thing](https://dba.xyz/were-all-building-the-same-thing/)
[Modular Money](https://dba.xyz/modular-money-liquid-staking-for-people-in-a-hurry/)
[A governance trilemma - neutrality, fairness, inclusivity](https://polynya.mirror.xyz/JI40r_iZQl7XO1JgP00YN8nEaL58M3BUd9XYJsRBfkw)
[Why rollups can offer higher throughput than L1 execution](https://polynya.mirror.xyz/zYV0g6II0iREbcaph8362sRBC2_a2hm6NlKj1-yuh6Q)
[Modular Blockchains](https://celestia.org/learn/beginners/modular-blockchains-for-beginners/)
Data Availabity:
[What is data availability?](https://www.paradigm.xyz/2022/08/das)
[Celestia White Paper / Lazy Ledger](https://arxiv.org/abs/1905.09274)
[Overview of DA layers](https://blog.availproject.org/a-guide-to-selecting-the-right-data-availability-layer/)
Maximal Extractable Value(MEV):
[What is MeV](https://ethereum.org/en/developers/docs/mev/)
[MEV and Flashbots](https://review.stanfordblockchain.xyz/p/mev-and-flashbots-the-uniquely-defi)
Restaking:
[Restaking and Eigen layer](https://youtu.be/RG7A0flGJNM?si=YuD3vHVYd1F_pJiA)
[EigenLayer: Decentralized Ethereum Restaking Protocol Explained](https://consensys.io/blog/eigenlayer-decentralized-ethereum-restaking-protocol-explained)
[You could have invented Eigen Layer](https://www.blog.eigenlayer.xyz/ycie/)
[Awesome AVS](https://github.com/Layr-Labs/awesome-avs?tab=readme-ov-file#reading-material)
### Non Dev Team:
For any non dev role in web3, having specific knowledge about web3 is a necessary. The more web3 specific knowledge you have, the more leverage you get in doing things. A few people are listed below to start with in the respective field.
#### Consumer Centric:
Everything in crypto till now, is about attracting users and generating engagment. The easiest way making money is building something consumer centric. Consider [pump.fun](https://pump.fun) or [Friend.tech](https://www.friend.tech), they both are built on a simple concept with very good ui. pump.fun is all about launching and trading memecoins, where as friend.tech is all about, purchasing shares of twitter account on a quadritic pricing curve.
#### Product Managers:
Product Management in Web3, is entirely different from traditional product management roles, on a light note. You will be responsible for envisioning into unclear future and make the product a reality.
#### DevRel:
Developer Reations Engineer is not a complete non technical role. It involves co-ordinating between development teams and users of the protocol. Knowing development is always a plus for these types of roles.
The best place to start is [DevRel University](https://www.devreluni.com/)
A few devrels to keep an eye on:
[Nader Dabit](https://x.com/dabit3)
[Pratham Prasoon](https://x.com/PrasoonPratham)
[Ashutosh](https://x.com/ashngmi)
[Naruto](https://x.com/naruto11eth)
...
#### Business Development:
Also considered sometimes as ecosystem development, is similar to the normal business development roles seen everywhere, but with a touch of specific web3 knowledge.
A few BD guys to keep an eye on:
[Maximilian](https://x.com/heymaximillian)
[Jacob Everly](https://x.com/JacobEv3rly)
[Smokey The Bera](https://x.com/SmokeyTheBera)
...
#### Strategy and Marketing:
Web3 is a game played in Twitter, and markeing is the best way to make/break a web3 protocol. Having nice skills in Social media Strategy and Social Media marketing is good for many protocols.
A few guys to keep an eye on:
[Hasu](https://x.com/hasufl)
[Jil Gunter](https://x.com/jillrgunter)
[Meghan](https://x.com/Meg_Hughes)
[Mert](https://x.com/0xMert_)
[taetaehoho](https://x.com/0xtaetaehoho)
[Claire Kart](https://x.com/clairekart)
...
#### KOL/Threads guy/Writers/Podcasters:
KOLs take pre launch tokens from projects to write and promote about a crypto project. Threads guys and Writers write articles about pre launch projects and get airdropped.
A few guys to keep an eye on:
[Ansem](https://x.com/blknoiz06)
[nairolf](https://x.com/0xNairolf)
[Hitesh](https://x.com/hmalviya9)
[David Hoffman](https://x.com/TrustlessState)
[Andy](https://x.com/ayyyeandy)
[Fav Truffe](https://x.com/Fav_Truffe)
...
#### Community Advocates/Managers:
Helps in managing twitter, telegram, discord communities and organising events across various cities.
A few guys to keep an eye on:
[Aniketraj](https://x.com/AniketRaj314)
[Abbas](https://x.com/Abbasshaikh42)
[Gyan Lakshmi](https://x.com/gyanlakshmi)
...
#### Hackathon/Event Organisers:
Organises hackathons and conferences.
A few guys to keep an eye on:
[Kartik Talwar](https://x.com/TheRealKartik)
[Akshay BD](https://x.com/akshaybd)
[Lily Liu](https://x.com/calilyliu)
...
This is our effort to gather resources acting as a begginers guide for those starting in blocsoc. If you have any questions or further doubts, there is always this group chat.
### Appendix:
#### Circom Resources:
[Getting Started with circom: Official Circom docs](https://docs.circom.io/getting-started/installation/)
[Circom tutorial by RareSkills](https://www.rareskills.io/post/circom-tutorial)
[Circom Workshop 1 by 0xParc](https://learn.0xparc.org/materials/circom/learning-group-1/circom-1/)
[Circom Workshop 2 by 0xParc](https://learn.0xparc.org/materials/circom/learning-group-1/circom-2)
[Circom Workshop 3 by 0xParc](https://learn.0xparc.org/materials/circom/learning-group-1/circom-3)
[Zero Knowledge Puzzles](https://github.com/RareSkills/zero-knowledge-puzzles)
#### Gnark and Go Lang Resources:
[Introducing Gnark](https://hackmd.io/@gnark/gnark)
[Gnark: Your guide to write ZK Snarks in GO](https://consensys.io/blog/gnark-your-guide-to-write-zksnarks-in-go)
[Gnark Tutorial: Official Gnark docs](https://docs.gnark.consensys.io/category/tutorials)
[A few gnark concepts](https://docs.gnark.consensys.io/category/concepts)
[Gnark Examples](https://github.com/Consensys/gnark/tree/master/examples)
[Gnark Playground](https://play.gnark.io/)
[GO Official tutorials](https://go.dev/doc/tutorial/)
[GO Tutorial by W3Schools](https://www.w3schools.com/go/index.php)
[GO Tutorial by Geeks For Geeks](https://www.geeksforgeeks.org/golang-tutorial-learn-go-programming-language/)
[GO by Examples](https://gobyexample.com/)
#### Rust Resources:
[Rust Book](https://doc.rust-lang.org/stable/book)
[Rust Book but with more examples](https://rust-book.cs.brown.edu/experiment-intro.html)
[Rustlings](https://github.com/rust-lang/rustlings/tree/main/exercises)
[Rust Marathon by Harkirat](https://www.youtube.com/watch?v=joCFbTJt0o0&t=14092s&ab_channel=HarkiratSingh)
[Rust by Examples](https://github.com/rust-lang/rustlings/)
[Nomicon](https://doc.rust-lang.org/nomicon/index.html)