I don’t come from a tech background, but I do see that to have some prolonged success in this field, one needs to have some base tech knowledge. I have made it a personal goal that by the end of 2022, I will be a job-ready Blockchain dev. I honestly don’t know how realistic this is, but as Les Brown once eloquently put it, “Shoot for the moon. Even if you miss, you'll land among the stars.“ So I will be doing this blog series as a way to track my progress and hold myself accountable through this blockchain dev journey.
I do have some programming experience with R and messed around with some JavaScript and Solidity, but not enough to build something from scratch. As mentioned earlier, I mean to be proficient at smart contract development. Hopefully, what I learn in the financial analysis aspect will help me develop smart contracts. To kickstart this, I will be diving deep into an awesome 32-hour course @PatrickAlphaC, and @freeCodeCamp put out recently.
Though I have some time in the blockchain/crypto industry, one can never go wrong with strengthening one’s base, so I will be taking full advantage of the course, even reviewing all basics and jotting down some key points from this week of studying.
Key ideas:
Multisig: multi-signature transaction. A multisig transaction requires a defined number of people (public keys) to sign a transaction with their private keys before it’s considered valid. This increases the security of user funds by mitigating single point of failures like a stolen or lost private key.
Smart contracts are tamper-proof programs on blockchains with the logic: “if/when x event happens, then execute y action.” Smart contracts are Immutable, Decentralized, and Transparent.
Smart contracts create trust minimized agreements; i.e., unbreakable pinky swear
Oracles: an oracle is anything that links off-chain data to a blockchain. Blockchains are closed systems, requiring oracles to input data from outside the system. The most used example is getting cryptocurrency's price into a contract.
@chainlink is a popular oracle decentralized oracle network connecting smart contracts to real-world data feeds like asset prices, price feeds, weather data, and so on.
The key is that it is decentralized; having a centralized oracle feeding data to a decentralized blockchain would be counterintuitive.
Nonce - "Number only used once." A number added to a hashed block in a blockchain that, when rehashed, meets the difficulty level restrictions. This is the number that blockchain miners are solving to receive the block reward.
Signing a transaction: A “one-way “ process. Someone with private key signs a transaction by their private key being hashed with their transaction data. Anyone can then verify this new transaction hash with your public key.
Consensus: the mechanism used to agree on the state of a blockchain
Two types of consensus mechanisms:
Sybil Resistance - a way to defend against one entity by making fake nodes to gain control over the system for more rewards and makes it harder to execute something like a 51% attack
Proof of Work (PoW) - a node has to go through a computationally expensive process, mining to figure out the blockchain’s nonce problem
Chain Selection - Bitcoin & Ethereum use Nakamoto Consensus - a combination of PoW and longest chain rule
Block time - how long it takes for blocks to be published. Proportional to how hard mining algorithms are
Proof of Stake - nodes put up collateral, proving their stake in the system. In PoS, miners are called validators, nodes are chosen at random, rest of the nodes validate that the initial node is solved honestly
Layer 1: Base layer blockchain implementation: Bitcoin, Ethereum, Avalanche
Layer 2: Any application build on top of layer 1: Chainlink, Arbitrum, Optimism
Rollups: Arbitrum Optimism - roll-up is like a shared chain, derives security from base layer 1, and BULK sends transactions onto the layer one
The first chapter of the course is packed with TONS of useful information, and I would HIGHLY recommend it to people who are just starting out in blockchain for programming and nonprogramming purposes.
To those looking to understand blockchain better, I implore you to check out the first chapter of this behemoth of a course.

