“If You Fail to Plan, You Are Planning to Fail” — Benjamin Franklin.
"Success is no accident. It is hard work, perseverance, learning, studying, sacrifice and most of all, love of what you are doing or learning to do."
programme will start on 8 December 2022, where you will delve deeper into the programme and complete a series of assignments. If you finish among the top 30% of the class, you will be onboarded into the main blockchain programme.
must prove your capabilities in the first 2 weeks by getting a cumulative score that puts you in the 30th percentile in all quizzes and projects in that period in order to progress in the programme. If you don’t meet this requirement, you will no longer be part of the programme after 2 weeks.
- Git(version control system)
- GitHub
- Difference between Web1,Web2,Web3
The First 2 weeks
- Peer-to-peer cash
- Digital signatures and trusted third parties
- Peer to Peer network
- Time Chain and Proof of Work
- CPU Power
- Abstract Assessment No.2
- Cooperation in the network
- Network structure
- Messaging between nodes
- Commerce on the internet
- Non reversible transactions
- Privacy in commerce
- The paradigm of fraud acceptance
- What is needed...
- Protecting sellers from fraud
- Proposed solution
- Security and honesty
- Electronic Coins
- Spending a coin
- Payee verification
- Existing solutions
- First Seen Rule
- Broadcasting Transactions
- Achieving Consensus
- Proof of acceptance
- Timestamped Hashes
- A chain of timestamped hashes
- Timestamp Server Video
- Hashcash
- Scanning random space
- Nonce
- Immutable Work
- Chained effort
- One CPU, one vote
- The majority decision
- The honest chain
- Attacking the longest chain
- Controlling the block discovery rate
- Section read-through
- Running the Network
- The longest chain
- Simultaneous blocks
- Breaking the tie
- Missed messages
- The Coinbase Transaction
- Coin Distribution
- Mining analogy
- Transaction fees
- The end of inflation
- Encouraging honesty
- The attacker’s dilemma
- Incentive Video
- Spent transactions
- The Merkle Tree
- Compacting blocks
- Block Headers
- Full network nodes○
- Merkle Branches
- Transaction acceptance
- Verification during attack situations
- Maintaining an attack
- Invalid Block Relay System
- Businesses running nodes -
- Dynamically sized coins
- Inputs and Outputs
- A typical example
- Fan-out
- Traditional Models
- Privacy in Bitcoin
- Public records
- Stock Exchange Comparison
- Key Re-use
- Linking inputs
- Attacking the chain
- Things the attacker cannot achieve...
- The only thing the attacker can achieve...
- The Binomial Random Walk
- The Gambler’s Ruin
- Exponential odds
- Waiting for confirmation...-
- Attack via proof of work
- Vanishing probabilities
- Learn JavaScript - FreeCodeCamp(Youtube)
- JavaScript Tutorial - Programming with Mosh(Youtube)
- JavaScript Programming - FreeCodeCamp(Youtube)
- JavaScript Tutorial - w3schools
- Learn JavaScript - Codecademy
- Free JS Courses for Beginners - FreeCodeCamp
- NamasteJS/How JS works - Akshay Saini Objectives:
Identify interactions on web pages created with JavaScript. Articulate, in general terms, the importance of how JavaScript was developed and how that impacts the way [ ] - JavaScript is written. [ ] - Identify properly formed semantic HTML. [ ] - Articulate major concepts in CSS. [ ] - Identify properly formed CSS syntax. [ ] - Write simple JavaScript statements in the web browser console. [ ] - Assign and retrieve values from variables and arrays in JavaScript.
Course Outline
- Introduction to JavaScript
- JavaScript Variables
- JavaScript Arrays
- Module Summary
- Learn Go - Codecademy
- Getting started - Go
- Go tutorial - Tutorials point
- Go tutorial - W3schools
- Learn Go Programming - FreeCodeCamp(Youtube)
- Golang tutorial - TechWorld With Nana(Youtube)
-
An Introduction of Go - why Go is worth learning.
- What is Go?
Go, or Golang, is a programming language developed at Google. It has received a lot of acclaim from developers for its speed and straightforward syntax.
- An open-source programming language supported by Google
- Easy to learn and great for teams
- Built-in concurrency and a robust standard library
- Large ecosystem of partners, communities, and tools
- Why Go is worth Learning GoLang is a compiled multi-threaded programming language based on open source C and developed internally at Google. It is a single language that allows different processes to run simultaneously, which means simultaneous programming. Extremely fast, easy to maintain, and efficient, GoLang has all the advantages needed for distributed systems because it can handle multiple parts of the blockchain concurrently. The language was developed for high-performance programs running on modern distributed systems and multicore processors. Market participants perceived the launch of GoLang as an attempt to create a replacement for C/C ++. Today, the Hyperledger Fabric blockchain platform uses this programming language. It is often used in NFT marketplace development. Examples of blockchain projects that use GoLang: GoChain, Dero, Loom Network, Ethereum, Hyperledger Fabric. .
- What is Go?
Go, or Golang, is a programming language developed at Google. It has received a lot of acclaim from developers for its speed and straightforward syntax.
-
The Go Toolchain - how to compile and run Go programs.
- Setting Up Go Locally Installing Go and Running Go Programs Developing Go locally on your own environment is a big step towards creating your very own Go projects and exercising your imagination! This guide will assume some knowledge of the command line and use of a code editor (we recommend VSCode), so brush up if you need too! First, downland Go to your computer by going to Golang’s download page and select your operating system under the Featured downloads section.
-
Become Familiar With Go Code
-
Introduction of Source Code Elements
-
Keywords and Identifiers
-
Basic Types and Their Value
-
Constants and Variables - also introduces untyped values and type deductions.
-
Common Operators - also introduces more type deduction rules.
-
Function Declarations and Calls
-
Code Packages and Package Imports
-
Expressions, Statements and Simple Statements
-
Basic Control Flows
-
Goroutines, Deferred Function Calls
- Go Type System Overview - a must read to master Go programming.
- Pointers
- Structs
- Value Parts - to gain a deeper understanding into Go values.
- Arrays, Slices and Maps - first-class citizen container types.
- Strings
- Functions - function types and values, including variadic functions.
- Channels - the Go way to do concurrency synchronizations.
- Methods
- Interfaces - value boxes used to do reflection and polymorphism.
- Type Embedding - type extension in the Go way.
- Type-Unsafe Pointers
- Generics - use and read composite types
- Reflections - the reflect standard package.
- Some Special Topics
- Line Break Rules
- More About Deferred Function Calls
- Some Panic/Recover Use Cases
- Explain Panic/Recover Mechanism in Detail - also explains exiting phases of function calls.
- Code Blocks and Identifier Scopes
- Expression Evaluation Orders
- Value Copy Costs in Go
- Bounds Check Elimination
- Concurrency Synchronization Overview
- Channel Use Cases
- How to Gracefully Close Channels
- Other Concurrency Synchronization Techniques - the sync standard package.
- Atomic Operations - the sync/atomic standard package.
- Memory Order Guarantees in Go
- Common Concurrent Programming Mistakes
- Memory Blocks
- Memory Layouts
- Memory Leaking Scenarios