A Beginner’s Guide to DApp Development: Building Decentralized Applications