Course Prerequisites:
Familiarity with general programming concepts like data structures, algorithms and networks Understanding of at least one legacy programming stack (e.g. Python, JavaScript, Java or similar) Fundamental knowledge to use command line consoles on any operating system Ability to understand developer concepts like SDKs, APIs, application development tools etc.
Experience with building end to end tiered applications
Modules:
Module 1: Introduction to Bitcoin and Blockchain
1.1 Overview of Bitcoin Technology
1.2 Overview of Blockchain Technology
Module 2: Bitcoin Scripting Language
2.1 Fundamentals of Bitcoin Scripting Language
2.2 Components of Scripting Language Basics
2.3 Uses of the Bitcoin Scripts
2.4 Execution Condition of Scripts
2.5 Security and Vulnerabilities in the Scripts
Module 3: Building on Bitcoin Script
3.1 Standard Transactions
3.2 Trade and DeFi
3.3 Smart Contracts
3.4 Asset Definition
Module 4: Layer 2 Scaling Solutions
4.1 Basic of Layer 2
4.2 Different Layer 2 Projects
Module 5: Use Cases and Projects using Layer 2
5.1 Payments Use Cases
5.2 Assets and Defi
5.3 Industry Use Cases
5.4 Integration with Other Tech- IoT
Module 6: Security and Best Practices
6.1 For Scripting Apps
6.2 General Security Practices
6.3 Keys and Smart Contracts
6.4 Off the Chain
6.5 Layer 2
Module 7: Integration (SDK/APIs) and Deployment
7.1 Basic Overview of SDK & APIs
7.2 BitcoinJS
7.3 BitcoinJ
7.4 Bitcoinlib
7.5 Bitcoin RPC Client (Python)
7.6 Deployment Strategies
Module 8: Future Trends and Innovations
8.1 Innovation in Bitcoin Applications
8.2 Innovation in Bitcoin Layer 2
8.3 Innovation in Asset Definition
8.4 Innovation in Bitcoin Interoperability
8.5 Innovation in Bitcoin Identity and Users
8.6 Innovation in Bitcoin Dev Tools
Module 9: Capstone Project