Making our own dApp: Explore two contracts
We start off still, by exploring two smart contracts: sign-up contract and the tipping contract. However, the sign-up contract is a failure contract with lots of security loopholes, while the tipping contract is ok-ish; it's not like groundbreaking, but something new to learn.
One believes that a book shouldn't just teach you what's correct, but also teach you to fail. When you do experimentation, you fail lots and lots of time, then only you pass. So one included the sign-up contract here.
As for the tipping contract, we would also discuss some considerations and some failures met during design, while slowly changing our program to something more appropriate for the context.