We interviewed seven of our developers to tell us about their thoughts and experience with coding for decentralized systems. In this blog post, you will learn how different it is from coding for centralized systems, and what challenges they have faced.
How was it to shift from coding for centralized systems to coding for decentralized systems, more specifically, to coding for blockchain technology?
Ali: “To be honest, it was really challenging in the beginning because we had to shift the paradigm from the centralized system to the distributed system. The distributed system itself is a challenging topic in computer science.” Ali added: “Shifting paradigm from a centralized system to the distributed system requires a lot of effort and causes a lot of problems that are foreign to the centralized system and we have to handle those problems and think about them more carefully.”
Andy: “It’s an enjoyable experience. You get a chance to see software development from a different angle. For instance, when we develop a new feature, it might work on one node, but it might not work on five or maybe 10 nodes.”
Ary explained his answer: “In the beginning, I was thinking coding for blockchain is very hard. But after I went deeper on the blockchain technology, I learned that there isn’t much difference between centralized and decentralized systems. A difference I’ve noticed is that on a server of the centralized system, we used only one server. But on the decentralized system, we used multi-server which is all the server have the same core and the same database”
When we asked Adhiim, he answered: “Previously, we used to store data centrally, and we store the centralized data to an entity. We had to interact only with these entities to get the information we needed.” What does he think about how different blockchain is? “Blockchain is a database that secures the storage of various types of data in a decentralized network. Data on the blockchain is stored in a block, and each block has a hash from the previous block. With the hash, it will be easy to detect if there is a change. therefore, I am interested in exploring blockchain technology.”
In Kevin’s opinion: “It was quite interesting because we were learning a new approach on how to handle problems, such as how the data is distributed to everyone in the blockchain.”
Gung explained his answer: “So in decentralized systems, we had to make sure that every single node was synced, so no nodes were left behind. But sometimes the nodes were different and had different blocks, or refused to sync, or suddenly stopped at a certain height of the blocks. So that’s the difference in my opinion.”
Ariasa had this take: “There are pros and cons of both systems, and one highlight of centralized systems is that there is an owner who sets the rules and regulations. In centralized systems we only have one owner, and only rules and regulations that are agreed by that single owner. So it’s not good enough for blockchain systems, not quite secure. Compared that with decentralized systems, where nodes can have many owners because blockchains need anonymity. So a decentralized system is perfect for a blockchain system.”
What is your experience in becoming a blockchain developer? How was it to make a shift from centralized to decentralized systems? Share your experience with us on our Telegram group and join our Blockchain Community to connect with other blockchain developers and enthusiasts.