Technical requirements
To follow along with this chapter, you need one of the more recent versions of Linux and Python – no older than 3.8. You could try using other platforms, such as Mac or Windows, but Linux is recommended. You can also run Linux with virtualization software such as VirtualBox. We will use Ubuntu Linux 22.04 LTS and Python 3.10. The code for this chapter is available at https://github.com/PacktPublishing/Hands-On-Blockchain-for-Python-Developers--2nd-Edition/tree/main/chapter_2.
Flaws in traditional programs
A smart contract is a program or an application that runs on top of Ethereum. While you can send and receive money in Bitcoin, Ethereum gives you a global computer where you can upload a program and people all over the world can use it. So, is it like a web application? No, that’s not the case.
To understand the difference between traditional programs such as web applications and smart contracts, let’s write a simple web application...