Unstoppable Blockchain DApps
This past week was a revelation after working for 3.5 years in the blockchain space, after listening to Dr. Stephan Karpischek’s Keynote speech on “Decentralizing Insurance” at the PreICIS SIGBPS 2020 workshop.
Stephan’s definition of a blockchain based software system appealed to me as the right way to create software systems and development ecosystems.
Software LIFE Cycle and Stoppable Software Systems
A software system has a life cycle which starts with a team building it. Often the team that builds this system is centralized heavily on three types of resources: i.e., (1) human capital provided by the management of the firm that owns the software (often licenses it and the source code), (2) the hardware needed to run the software( often single server systems installed and run on a set of nodes in single data-centers) and (3) software tools available to the developers and adopters (by means of developers invested in the system).
Each of these three components necessary to create an maintain software applications have multiple points of failure, both technical, economical and human resource related leading to a process known as “End of Life” for the corresponding software. For example, management of firms that create these software projects can often shut down these projects and relegate them to obscurity. The hardware and software on these systems can become outdated often and frequently.
UNSTOPPABILITY – A PROPERTY OF BLOCKCHAIN DAPPS
When all the 3 aspects of a software system that are (often) centralized disappear, then we have a true software system that is unstoppable. Public decentralized blockchains widely adopted makes this happen. For example, on the Ethereum Blockchain which is a global network with nodes around the world and hosted by different individuals, decentralized applications have the requisite hardware and software to live on for ever. Similarly, when teams developing the software is distributed globally and there is no single organization determining what can/what can’t be done, and governance of software is accomplished through governance models that are public, transparent and open to all, such a system becomes unstoppable.
Such unstoppable systems cannot be regulated, pulled down or forced to abort unless the entire network of computing nodes are stopped. For example, when one country regulates access to these network of nodes, other countries which provide free access to computing resources will provide environments for this innovation to thrive. Similarly, when investors decide to impose regulations such as geographic blocking on the corresponding software, the entire source code of the software can suddenly be forked and start to execute on nodes without the geo-blocking feature.
Ethereum nodes distributed globally
Source – https://etherscan.io/nodetracker
This in my opinion is the most important and critical aspect of Decentralized applications that Software development firms have to pay attention to.
Such a one Blockchain DApps is –Uniswap