← All courses

Training

Blockchain Development

Blockchain Development

3-day intensive course outline

This course is designed to offer a deep dive into blockchain technology with a specific focus on Ethereum. It covers fundamental concepts, Ethereum's architecture, smart contract development using Solidity, interaction with the Ethereum network through Go Ethereum (Geth) and Web3.js, and best practices for security.

Learning Outcomes

Participants will:

  1. Understand blockchain technology's foundational concepts and its significance.
  2. Gain proficiency in Solidity for smart contract development.
  3. Learn the workings and capabilities of the Ethereum Virtual Machine (EVM).
  4. Be able to set up and interact with the Ethereum blockchain using Go Ethereum (Geth).
  5. Utilize Web3.js for integrating Ethereum smart contracts with web applications.
  6. Develop, deploy, and manage smart contracts on Ethereum.
  7. Identify and apply security best practices in smart contract development.

Prerequisites

  • Programming experience in JavaScript.
  • Skilled in web development (HTML, CSS).
  • Knowledge and experience of
    • Node.js
    • npm
    • asynchronous programming.

Course Outline

  1. Introduction to Blockchain
    1. Blockchain Fundamentals
      1. Definition, characteristics, and evolution.
    2. How Blockchain Works
      1. Decentralization, blocks, transactions, consensus mechanisms.
    3. Types of Blockchains
      1. Public vs. private, permissioned vs. permissionless.
  2. Ethereum Ecosystem
    1. Ethereum Overview
      1. Unique features, Ether, gas, Ethereum Virtual Machine (EVM).
    2. Smart Contracts
      1. Principles, development, and use cases.
  3. Development Environment Setup
    1. Tools and Frameworks
      1. Solidity, Truffle, Ganache, MetaMask, Geth, Web3.js.
    2. Environment Configuration
      1. Installing necessary development tools.
  4. Solidity Programming for Ethereum
    1. Solidity Basics
      1. Syntax, data types, functions, control structures.
    2. Advanced Solidity
      1. Inheritance, interfaces, modifiers.
    3. Smart Contract Development
      1. Writing, compiling, deploying contracts.
  5. Ethereum Virtual Machine (EVM)
    1. Understanding EVM
      1. Role, operation, and importance in Ethereum.
  6. Go Ethereum (Geth)
    1. Working with Geth
      1. Setup, Ethereum node management, command line options.
    2. Ethereum Network Interaction
      1. Transactions, mining, smart contract interaction.
  7. Web3.js and DApp Development
    1. Web3.js Introduction
      1. Setup and integration with Ethereum networks.
    2. Interacting with Smart Contracts
      1. Reading from and writing to the blockchain.
    3. DApp Architecture
      1. Designing and developing decentralized applications.
  8. Security Considerations
    1. Smart Contract Security
      1. Vulnerabilities, best practices, and preventive measures.
  9. Advanced Topics
    1. Decentralized Application (DApp) Development
      1. Building, deploying, and interacting with DApps.
    2. Further Tools and Frameworks
      1. Additional resources for development and deployment.
  10. Conclusion and Next Steps
    1. Further Learning and Resources
      1. Continuing education in blockchain and Ethereum.
    2. Career Opportunities
      1. Blockchain industry landscape and opportunities.
    3. Feedback and Course Wrap-up
      1. Participant projects showcase, Q&A, and feedback session.

This detailed 3-day course outline aims to equip participants with a thorough understanding of blockchain technology, focusing on Ethereum's ecosystem. By covering Solidity, the EVM, Geth, and Web3.js, the course is structured to provide the necessary skills and knowledge for developing, deploying, and interacting with smart contracts and decentralized applications on the Ethereum blockchain, ensuring a solid foundation for future exploration and innovation in the blockchain domain.

Practical, connected learning

My wider training approach brings hands-on implementation and systems thinking together, connecting technology with real operational needs.