Which server(s) determine the difficulty and issue coins I understand that the blockchain is a decentralized database, however what I don't understand is who runs the bitcoin software. Is this also decentralized? There has to be some form of "backend" to run the checks and balances?
Being a decentralised consensus, with all nodes aware of all the rules and all acting in lock step, there needs to be no centralised controller for anything. Every participant using Bitcoin is responsible for coming to their own conclusion about the state of the network, making sure every piece of data is correctly formed and executed according to the consensus rules they are aware of. Should everything be working correctly, the state they come to will match that of their peers without ever having to consult an authority.