How I Went From Googling “What Is Solidity?” to Writing Smart Contracts for Fun
A personal adventure into Blockchain, Smart Contracts, and why securing them is harder than securing my weekend plans. Introduction: The Accidental Blockchain Enthusiast I’ll be honest — my first thought when I heard about Blockchain was: “Isn’t that the thing they keep talking about on the news whenever Bitcoin crashes?” But curiosity (and a healthy dose of FOMO) got the better of me. Somewhere between late-night YouTube rabbit holes and realizing the future of finance was heading toward decentralization, I decided: “I’m going to build a Smart Contract. From scratch. Like a grown-up.” And thus began my personal journey into the weird and wonderful world of Ethereum, Solidity, and trying very hard not to create the next DAO hack by accident ;-) And I ended up getting a Postgraduate Diploma specializing in Blockchain Technology. Having completed the diploma, I had a solid theoretical understanding of distributed systems, consensus algorithms, and smart contract basics. But let’s be real — no amount of diagrams in textbooks truly prepares you for the moment when you deploy your first smart contract… and accidentally spend all your test Ether on a single typo. This project was my way of making the theory real. A hands-on journey to move beyond paper knowledge — and actually build something that works (and survives a few bugs along the way). The Plan: Make It Real (But Not Risky) Since I work in banking and love secure systems, I wanted my POC to not just work — but to be secure, scalable, and not accidentally send imaginary millions to strangers. My personal mission: Build a Smart Contract for simple asset tokenization — safely. Bonus mission: Actually understand what I’m doing, not just copy-paste from Stack Overflow. Tools I Used (and Googled a Lot) Solidity (the magical programming language of Ethereum) Remix IDE (because setting up a local dev chain at first felt like fighting a Kraken) Ganache (for my personal fake Ethereum playground) Truffle (testing smart contracts without crying too much) MetaMask (the wallet that gave me more test Ether than my real bank account had) How I Built It (and How I Almost Gave Up) Step 1: Write the Smart Contract At first, my code looked something like this (during the course): pragma solidity ^0.8.0; contract AssetToken { string public assetName; address public owner; constructor(string memory _name) { assetName = _name; owner = msg.sender; } } Translation: I basically made a Hello World for Blockchain. Victory dance? Not yet. Step 2: Secure the Contract (So It Doesn’t Explode) Once I wrote a few more functions (transfer ownership, view details, etc.), I started reading horror stories about reentrancy attacks, overflows, and hackers smarter than me. I used SafeMath to avoid overflow issues. I added modifiers like onlyOwner to sensitive functions. I practiced defensive coding like it was cybersecurity finals week. _Step 3: _Testing, Testing… and More Testing Deployed to Ganache (local fake blockchain). Ran unit tests using Truffle. Found hilarious bugs like: a. “Anyone can transfer ownership if they spell their name backward.” b. “Contract thinks 0 is a valid new owner.” Moral of the story: Never trust your first deployment. Or your second. Key Challenges (aka Lessons in Humility) Understanding Gas Optimization: I accidentally wrote a function so expensive, it would’ve cost more than my Netflix subscription to run. Managing Wallets and Private Keys: Lost one test wallet. Still having a moment of silence for it. Deploying to Real Testnets: Turns out, testnets are real networks, with real delays, and real lessons in patience. What I Built in the End a. A working, secure-ish Asset Tokenization Smart Contract b. A deeper understanding of Blockchain security principles c. A strong desire to always audit your contracts before touching anything live [User Interface (MetaMask Wallet)] ⬇️ Smart Contract (Deployed on Testnet) ⬇️ Blockchain Ledger (Ethereum Public Chain) Conclusion: Why This Journey Mattered I didn’t just build a Smart Contract — I built a new set of skills: Security-first coding mindset. Blockchain architecture fundamentals. Courage to dive into complex, emerging tech without fear. Today, I can confidently say I understand how Blockchain fits into real-world financial systems — combining my formal Postgraduate Diploma in Blockchain Technology with real hands-on learning and how small mistakes can become million-dollar news headlines. And the best part? It all started with a random late-night decision to learn something new.

A personal adventure into Blockchain, Smart Contracts, and why securing them is harder than securing my weekend plans.
Introduction: The Accidental Blockchain Enthusiast
I’ll be honest — my first thought when I heard about Blockchain was:
“Isn’t that the thing they keep talking about on the news whenever Bitcoin crashes?”
But curiosity (and a healthy dose of FOMO) got the better of me.
Somewhere between late-night YouTube rabbit holes and realizing the future of finance was heading toward decentralization, I decided:
“I’m going to build a Smart Contract. From scratch. Like a grown-up.”
And thus began my personal journey into the weird and wonderful world of Ethereum, Solidity, and trying very hard not to create the next DAO hack by accident ;-)
And I ended up getting a Postgraduate Diploma specializing in Blockchain Technology.
Having completed the diploma,
I had a solid theoretical understanding of distributed systems, consensus algorithms, and smart contract basics.
But let’s be real — no amount of diagrams in textbooks truly prepares you for the moment when you deploy your first smart contract… and accidentally spend all your test Ether on a single typo.
This project was my way of making the theory real. A hands-on journey to move beyond paper knowledge — and actually build something that works (and survives a few bugs along the way).
The Plan: Make It Real (But Not Risky)
Since I work in banking and love secure systems, I wanted my POC to not just work —
but to be secure, scalable, and not accidentally send imaginary millions to strangers.
My personal mission:
Build a Smart Contract for simple asset tokenization — safely.
Bonus mission:
Actually understand what I’m doing, not just copy-paste from Stack Overflow.
Tools I Used (and Googled a Lot)
Solidity (the magical programming language of Ethereum)
Remix IDE (because setting up a local dev chain at first felt like fighting a Kraken)
Ganache (for my personal fake Ethereum playground)
Truffle (testing smart contracts without crying too much)
MetaMask (the wallet that gave me more test Ether than my real bank account had)
How I Built It (and How I Almost Gave Up)
Step 1: Write the Smart Contract
At first, my code looked something like this (during the course):
pragma solidity ^0.8.0;
contract AssetToken {
string public assetName;
address public owner;
constructor(string memory _name) {
assetName = _name;
owner = msg.sender;
}
}
Translation:
I basically made a Hello World for Blockchain.
Victory dance? Not yet.
Step 2: Secure the Contract (So It Doesn’t Explode)
Once I wrote a few more functions (transfer ownership, view details, etc.),
I started reading horror stories about reentrancy attacks, overflows, and hackers smarter than me.
I used SafeMath to avoid overflow issues.
I added modifiers like onlyOwner to sensitive functions.
I practiced defensive coding like it was cybersecurity finals week.
_Step 3: _Testing, Testing… and More Testing
Deployed to Ganache (local fake blockchain).
Ran unit tests using Truffle.
Found hilarious bugs like:
a. “Anyone can transfer ownership if they spell their name backward.”
b. “Contract thinks 0 is a valid new owner.”
Moral of the story:
Never trust your first deployment. Or your second.
Key Challenges (aka Lessons in Humility)
Understanding Gas Optimization:
I accidentally wrote a function so expensive, it would’ve cost more than my Netflix subscription to run.
Managing Wallets and Private Keys:
Lost one test wallet. Still having a moment of silence for it.
Deploying to Real Testnets:
Turns out, testnets are real networks, with real delays, and real lessons in patience.
What I Built in the End
a. A working, secure-ish Asset Tokenization Smart Contract
b. A deeper understanding of Blockchain security principles
c. A strong desire to always audit your contracts before touching anything live
[User Interface (MetaMask Wallet)]
⬇️
Smart Contract (Deployed on Testnet)
⬇️
Blockchain Ledger (Ethereum Public Chain)
Conclusion: Why This Journey Mattered
I didn’t just build a Smart Contract —
I built a new set of skills:
Security-first coding mindset.
Blockchain architecture fundamentals.
Courage to dive into complex, emerging tech without fear.
Today, I can confidently say I understand how Blockchain fits into real-world financial systems — combining my formal Postgraduate Diploma in Blockchain Technology with real hands-on learning and how small mistakes can become million-dollar news headlines.
And the best part?
It all started with a random late-night decision to learn something new.