
Explore blockchain fundamentals, distributed ledger technology, and smart contracts on Ethereum, then learn solidity basics, including data types, functions, and structs, culminating in a bank use case on testnet.
Compare centralized web architectures with blockchain's distributed, no-intermediary model. Learn how blockchain enables direct, peer-to-peer interactions and immutable, permissioned changes without a central authority.
Explore how blockchain records information as a digital ledger across a network of computers, making data difficult to alter. Understand blocks, transactions, cryptographic hashes that secure and distribute ledger.
Explore the features of blockchain, including its programmable nature with smart contracts, distributed ledger, immutability, timestamps, consensus, anonymity, and cryptographic security.
Learn to write Solidity smart contracts and run them on the Ethereum Virtual Machine. Deploy contracts, pay gas, and interact with blockchain through Web3 libraries and dapps from the frontend.
Learn solidity basics by using the Remix editor, compiling with a specified compiler version, and declaring data types such as uint, int, and bool inside a contract.
Learn to declare and initialize string arrays in Solidity, compile and deploy a smart contract on a test network, and query values publicly by index while exploring other data types.
Define custom data types in Solidity with struct and initialize a public product, like a laptop with name, category, and place, while noting Solidity lacks floating point values.
Learn how addresses and mappings work in Solidity by creating a mapping from address to balance, exposing a public balance getter, and testing contracts before deploying on Ethereum.
Learn to use a Solidity constructor to initialize the owner from message.sender, expose a public change owner function with require validation, and test deployment and ownership updates on the blockchain.
Explore how a payable constructor enables sending ether to a smart contract and how a view function checks the contract's balance, with notes on gas, gas fees, and immutability.
Compare pure and view functions in Solidity, showing how pure functions avoid state reads and how view functions enable non-modifying reads to reduce transaction costs on the blockchain.
Explore creating and emitting events, and implementing a modifier to validate payable transfers in Solidity. Learn how msg.value and msg.sender affect transaction logging and access control during deployment and testing.
Learn to pass arguments to a Solidity modifier, handle payable transfers, verify balances, and read logs and events from successful transactions.
Compare memory and storage variables in Solidity, detailing how memory variables are temporary and cheaper, while storage variables persist as contract state, participate in mining, and incur higher costs.
Explore storage vs memory in Solidity with a hands-on smart contract example. Learn how storage variables affect the blockchain state and gas costs, while memory provides cheaper, temporary data copies.
Map each address to its balance with a public mapping in a smart contract. Build a simple bank that checks for sufficient balance before transfers.
Use a balance-checking modifier to ensure the sender's balance, stored in a mapping, is sufficient before withdrawal or deposit operations in a solidity smart contract.
Learn how to implement a deposit function in a Solidity smart contract that records each sender's balance in an account list by updating a mapping with the sent value.
Learn how to implement the withdrawal fund functionality in Solidity: validate balance, ensure sufficient funds, and transfer ether to the sender while updating the accounts list.
Develop a Solidity function to check smart contract's total balance at any time, using a public view function that returns the contract's balance as a uint, and prepare to test.
Compile and deploy a smart bank Solidity contract, then test end-to-end deposit, withdraw, and balance features, including total bank balance and assets.
Copy the license identifier to the top of your smart contract to remove compilation warnings about license issues.
Follow a roadmap to become a job-ready blockchain developer: learn a framework (truffle or hardhat), test locally, deploy, then build a React front end and a Node.js API for a DApp.
In this course, we will start by learning everything about Blockchain and Distributed Ledger Technology.
Then we will compare how Blockchain/Distributed Ledger Technology differs from the normal World Wide Web that we have today.
We will then go-ahead to learn various features, concepts and terminology of Blockchain/Distributed Ledger Technology.
We will then learn about Smart Contracts and understand how they are connected to Blockchain.
After that, we will start learning Solidity Programming Language with real hands-on by writing and deploying small smart contracts for every concept.
Following are the topics we will learn:
Why do we need Blockchain
What is Blockchain and Distributed Ledger Technology
Features of a Blockchain and Distributed Ledger Technology
EVM(Ethereum Virtual Machine) Solidity Smart Contracts
Environment Setup and Data Types in Solidity Programming
String Arrays Compiling and Executing our first Smart Contract on Blockchain Network
Custom Data Type and Functions and Comments in Solidity Programming
Address and Mapping type in Solidity Programming
Constructor Function and Function Call and Validation
Send Ether to a Smart Contract And Payable Constructor and View Function
View and Pure function in Solidity and how they effect the transaction cost
Events and Modifiers and msg.value vs msg.sender
Passing parameter to modifier
Memory and Storage variables
We will then move to create our first fully functional Smart Contract and Deploy it onto Ethereum Test Network.
Finally we will discus about the Roadmap to become a blockchain developer and start applying for Jobs.