Recently, I finally finished a lecture about developing smart contracts on Blockchain which I bought from Udemy 5 months ago. To be honest, it’s been busy for me to complete a 12 hour long course over the past few months. Nevertheless, it was really great to take a deep dive into learning how to implement some famous use cases like tokenising assets or order tracking with Solidity. It was worth the effort to do it because I now feel more confident than before when I was developing smart contract projects during hackathon events.

According to Wikipedia:

“Solidity is an object-oriented programming language for implementing smart contracts on various blockchain platforms, most notably, Ethereum. It was developed by Christian Reitwiessner, Alex Beregszaszi, and several former Ethereum core contributors. Programs in Solidity run on Ethereum Virtual Machine.”

I was drawn to this technology where we can write a piece of immutable code that can be executed automatically without any middleman involved. To put it simply, we don’t have to worry about whether we can trust a centralised authority to claim that the services or software they provide are legit or verified. This kind of trustless characteristic is the core notion of blockchain where smart contracts are stored and run.

Now, we know smart contracts are programs where you can automate them to execute agreements when predefined criteria are met, therefore, we can get one step further to automate workflows that need to be done in our daily life. These could be things such as retrieving stock market reports when there are huge fluctuations in the market or tracking shipping when there are orders made. Essentially, almost everything that happens in the real world can be seen as contracts or agreements to achieve a certain goal under certain conditions like turning on lights when the sky gets dark. The only missing puzzle is how we convert these contracts to smart contracts in practical manners.