The main thing distinguishing a blockchain from a normal database is that there are specific rules about how to put data into the database. That is, it cannot conflict with some other data that’s already in the database (consistent), it’s append-only (immutable), and the data itself is locked to an owner (ownable), it’s replicable and available. Finally, everyone agrees on what the state of the things in the database are (canonical) without a central party (decentralized).
This is where programming becomes “hard”. Not writing the code, but designing the code. Thinking ahead about how this class will be used and making an informed choice, rather than just slapping in the first technique you learned because it’s easy and you can copy/paste it from somewhere else without remembering how it works (speaking from experience, so don’t feel attacked).