I’m nearing the end of my bachelor’s degree in Computer Science at TU Dresden and the time has come for writing my bachelor’s thesis. It is related to Algorand and it is described here in detail:
I have no experience with Algorand and this is my first contact with blockchain in general, but I have been researching for almost a month now and I think I have the basics. I would be very grateful if I could get in contact with people who have deep knowledge of Algorand, to whom I will be able to ask questions during the writing and development of the application. I would also appreciate it if you could give me pointers and links to materials that will help me with my topic as quickly as possible, and if you can sort them according to the research questions and the application that I have to build. Also, another research question came up recently:
Can we send data payloads by contract to contract calling in Algorand?
Thank you in advance and I am glad my topic is related to Algorand, I’m very excited about the whole thing!
RQ 2: Can we implement upgradable smart contracts through contract to contract approach in Algorand?
→ Yes, but there may be limitations due to the size limitations of TEAL. It is currently much simpler to use the fact that contrary to Ethereum, Algorand smart contracts are already upgradable.
RQ 3: What are the drawbacks and advantages with regard to implementing upgradable smart contracts in Algorand?
→ That’s a very important question. I think it is not really specific to Algorand. Non upgradable smart contracts have the issue that if a bug is detected, then it’s essentially game over: a malicious actor can most likely use it to steal everything or the smart contract may be completely stuck without any way for users to recover their money. However, on the other hand, if the smart contract is upgradable, it is very difficult to decide who has the right of upgrading it. This requires a strong trust in the people able to upgrade the smart contract.