outprog

Posted on Jan 02, 2022Read on Mirror.xyz

How to Build Your Own SCP App: Decentralized News Media

It is difficult to create a decentralized news media content platform on Ethereum, since the high fees discourage any forms of storage. Arweave offers a new possibility to reduce the cost of decentralized storage with 1GB of permanent data storage for only 15 USD. Using Arweave as the Web3 infrastructure, developers can easily build decentralized media content platforms.

Arweave’s permanent storage starts a new era of blockchain: distribute data and content without centralized distribution. Using the Storage-based Consensus Paradigm for content distribution, readers only need to trust the open source smart contract code to get content media with untampered and uncensored content through a decentralized approach. After reading this article, you will learn how to decentralize media content and make it available everywhere. Also, we can use token economics to decentralize the content creation process.

Lack of Data Decentralization

Traditional content distribution platform is a single node of centralized storage, with the growth of data volume or data censorship, some content will be actively or passively deleted or lost. At the same time, the platform may face closure in the future, and users will not be able to access pre existing information after the closure.

For news media of the Web2 era, as shown in the diagram above, journalists (orange ones) write their industry insights into content to provide media service for readers (blue ones) through centralized nodes. This content is elegantly presented by the nodes, and users can simply click on the website URL to get the content and data they want.

Unfortunately, when centralized nodes are shut down, readers have difficulty accessing the content and even lose access to historical content (including articles they have already read).

Using Arweave for storage ensures that data will never be lost, so data decentralization is easy to achieve. Content distributors simply pay a certain AR to store data in Arweave. However, it is not enough to store data permanently. A large amount of redundant data is stored permanently, and readers cannot write code or scripts to filter the unneeded data and transform useful data into content as developers do. They also don’t have the ability to write HTML and CSS code to visualize the original article data to readable contents. Of course, we can directly store HTML files to Arweave, but even though the data is already a web page, it still cannot be indexed and searched directly in the user's device. 

Decentralized data storage alone cannot solve the problem of data readability (visualization). When building decentralized news media, developers must not only consider permanent data storage, but also consider data readability and visualization. SCP is the last step for content decentralization, making it easier for everyone to enjoy Web3 experience.

Decentralization of News Media

A complete decentralized news media should not only store data on the blockchain, but also provide visualization of the data. Using SCP can enhance the experience: SCP allows anyone to run open source off-chain smart contract code at any time from their own device, restoring the historical status of all articles and displaying all article content onto the screen.

Decentralized news media needs to do two things.

  1. Open source the node code so that anyone can get the code and re-run the node
  2. Upload all data from the node to Arweave, and the open source node can automatically get the data and visualize the data into readable content

In the above diagram, the core node is the distribution end of the news. It is similar to the traditional architecture: the journalist (yellow ones) provides the content, which is displayed to the readers (blue ones) through News Core Node. The core node must be an open-source, central node with data upload function. The core node is responsible for the data presentation to the users and also uploads the content provided by the journalists to Arweave one by one.

The open source nature of the core nodes makes the media platform a smart contract. News article data is uploaded to Arweave's blocks continuously. Readers or operators who download and run the code can automatically download newly added data on Arweave and become a distribution node to provide content displaying services. The distribution node only needs to sync to data in the latest Arweave block to keep the content up-to-date.

If a decentralized news media uses the above architecture, when the media is shut down, anyone can recover and display the content using the data on the Arweave blockchain and the node's open source code.

Web3 news media does not require extensive modifications to Web2 ones. It only needs to replace the original storage solution to permanent storage on Arweave. Web2's high performance developing middleware will be the carrier for off-chain smart contracts, providing unlimited performance.

Decentralization of Content Production

The previous section mentioned the decentralization of content, so that any media that is shut down can be restored to a functioning node through the source code and Arweave's permanent data. However, in the above architecture, content providers still need to provide data upload services through centralized nodes, so can we also enable journalists to decentralize content writing without relying on centralized nodes? The answer is yes.

But if everyone submits data to Arweave, and the news media nodes load data without access control, a lot of junk news data will be generated, degrading the reading experience. The solution in the previous section is that the content is uploaded only by the core nodes, and the admin private keys of the core nodes have the ability to audit the data. At the same time, the other open source nodes download data from the content of the core private keys, thus not allowing spam news to “pollute” the news feed.

There are two issues that need to be addressed.

  1. Content should not be uploaded centrally
  2. Content should not be overrun with meaningless data

The key to solving both problems is token economics. Developers can integrate a token mechanism in the open source node that is specifically designed to focus on the functions of content uploading and spam data prevention. It is a domain-oriented PoS design.

Domain-oriented PoS designs are designed to solve domain-specific problems through proofs of stake. Traditional PoS are designed for generating new blocks and consensus protocols. These designs spend a lot of effort on consensus and no longer have the ability to develop proofs of stake for specific business domains. If we had to use traditional PoS to develop for specific business domains, the design architecture would be very complex and "messy".

Arweave's perpetual storage mechanism makes data immutable and traceable, and already guarantees consensus data storage. Developers developing on SCP do not need to worry about consensus issues for their applications, and using SCP allows developers to completely focus on domain-oriented PoS design.

How to decentralize content uploading?

The above figure uses a unique private key for data distribution. To improve this, we changed filtering by key to filtering by token. 

Native tokens integrated inside the open source node are called NEWS. Each NEWS has a unique ownership and can be transferred. Ownership and the transfer of ownership can use a Storage-based Consensus Paradigm: the account that owns NEWS can send the transaction metadata of transfer(amount, to) to Arweave, and other news nodes can get this transfer information from Arweave and perform the ownership transfer. This transfer information can be obtained by other news nodes from Arweave and the transfer of ownership can be performed. 

Based on the SCP, the nodes have a consistent state over the same Arweave block height. Therefore, the ownership of NEWS follows the change of Arweave block, and our content is distributed through Arweave, so the token ownership and content have the same time series.

Three wallet addresses A, B and C hold NEWS on Arweave and they can do content uploads as follows:

From block 101 to 103, A and B hold NEWS tokens, and the content uploaded by A and B can be downloaded and computed by the nodes; C has no NEWS tokens, so C's uploaded content will be filtered out by the nodes.

At block height 104, A transfers 1 NEWS to C.

In block 105 and 106, the node does not download A's content uploaded after block 104 because A does not have NEWS tokens; C holds NEWS, and C's new content can be downloaded by the node normally.

With the addition of the token mechanism, news uploading no longer depends on a single private key and can be done by any token holder. When the node is synchronized to the latest Arweave block height, the valid articles are those uploaded by A and B in blocks 102-103 and those uploaded by C in block 106; the content uploaded by C in 103 and by A in 105 are not included in the node.

How to Avoid Spam Content?

Tokens can not only replace keys for content uploads, but can also solve the problem of spam content. We can empower tokens with more functions, such as voting. NEWS holders can vote on the content they view, so we can design an effective voting incentive to encourage the display of high quality content. With the voting mechanism, nodes can process the voting data and rank the high quality content. Popular and high quality data will be in the headline. This also allows a decentralized and democratic recommendation system to be built.

The quality of news media may depend on the quality control ability of the news organization (centralized organization). At the start of the community, the centralized organization may need to hold more than 51% of the NEWS tokens to ensure the quality of the content voting. But as the decentralized community grows, the tokens will slowly be released to great journalists. A good token incentive will allow the tokens to be distributed and transferred appropriately, so that the best journalists will be rewarded more and quality content will be properly "headlined".

Conclusion

Web3 news media not only creates content distribution that cannot be turned off, but also allows for more reliable and efficient content production. Using the SCP architecture lowers the barrier to decentralized news media, makes smart contracts development much easier for normal web users, makes Web3 content displaying easier, and makes Web3 more widespread.

In the same way that token economics offers the possibility of content uploading and spam filtering for news media, a native token architecture based on SCP provides higher token performance, ensuring decentralization and native Web3. SCP will also reduce the cost of Web3 participation and interaction, instead of having the user paying more than 20 USD in gas fees for even a single upvote.

Token economics also allows decentralized news media nodes to become DAOs and off-chain news media nodes to become smart contracts. When we run a news media node, we can trust the node's open source code, and the node's mechanism determines the quality and reliability of the content produced on it. Ultimately, the production and distribution of content is no longer determined by an authority, but what we trust, a DAO —— code is law.