127 private links
Ballerina is an open source programming language and platform for cloud-era application programmers to easily write software that just works.
At the heart of decentralized systems today is a demoralizing irony. Vast resources---intellect, equipment, and energy---go into avoiding centralized control and creating "trustless" systems like Bitcoin. But hapless users then defeat the whole purpose of these systems by handing over their private keys to centralized entities like Coinbase.
Would it be nice if there were a truly decentralized system that could do the impossible? I.e.,
- Make key management easier for ordinary users.
- Manage secret keys for transparent objects without secret state, like smart contracts.
- Operate seamlessly when nodes come and go.
For the past few years, I've been building and operating a large distributed system: the payments system at Uber. I've learned a lot about distributed architecture concepts during this time and seen first-hand how high-load and high-availability systems are challenging not just to build, but to operate as well.
Sia is a decentralized storage platform secured by blockchain technology. The Sia Storage Platform leverages underutilized hard drive capacity around the world to create a data storage marketplace that is more reliable and lower cost than traditional cloud storage providers.
To process a transaction, you need first to make sure the sender owns the asset he wants to transfer, and make sure he will not trade it twice.
In the blockchain, information is stored in blocks that record all transactions ever done through the network. Hence, it allows validating both the existence of assets to be traded and ownership.
To avoid double spending, the technology requests several nodes to agree on a transaction to process it. A validation is also artificially difficult to achieve: miners leverage computer power to solve complex cryptographic problems (the proof-of-work). Every time a problem is cracked, a block is added to the chain, and all the transactions it includes are thus validated. The updated chain, including the new block, is shared with other nodes and becomes the new reference; this process leverages cryptography to prevent duplicate transactions.