Smart contracts are immutable or data on blockchain is immutable. We know that once contract is deployed we can’t change the code. That’s how we build trust less systems right?
Developers are humans, they make mistakes. Even though people put lot of efforts in testing and auditing bugs will be there. Someone might miss something sometime. So we might ship smart contract full of bugs. People might start using it. As we can’t update smart contract because of immutability, it might cause problems.
One probable solution is to deploy new smart contract and transfer state of old smart contract to new smart contract. This is quite gas inefficient.
That’s where proxy pattern or upgradable smart contract comes in picture.
Idea is you store data in one contract (Storage Layer) and Business logic in other contract (Logic Layer), Whenever you want to upgrade contract you only update Logic Layer and deploy as new smart contract and your proxy contract will point to new implementation. Your data stays as it is.
Magic Right ? Yeah at least for engineers.
Crypto is a most scammed industry. People have lost thousands of dollars and scammers have made billions of bucks. All the People who uses DAPP or invests on Defi are not technical. They Don’t understand smart contract code, they don’t know what variable does what ?
Most user’s are driven by FOMO, High yields and Crazy gains.
So looting people in crypto industry is very easy, even though people call blockchain is secure. LOL
Simply Developers can create secure upgradable smart contract, they can get audited easily, and when time comes to become millionaire, they update smart contract with new logic.
They can transfer/burn your tokens/nfts.
200 - People have lost fund successfully.
TL;DR
Upgradable smart contracts might be good hack to make development faster and smart contracts bug free but it’s not good for general users who don’t know much about smart contract.

