The importance of off-chain compute in Web3 and the [in]fluence of Fluence.

The importance of off-chain compute in Web3 and the [in]fluence of Fluence.

A fluence breakdown

Co-authored by Selina Springett

The rapid uptake of new technology is the defining feature the 21st century and blockchain technology, has made waves as the (relatively) new kid on the block (no pun intended). While a distributed transaction ledger was something we didn’t realize we needed a couple of years ago. It is widely regarded as the technology shaping the World Wide Web of the future ever since its first use-case was demonstrated with the introduction of Bitcoin in 2008. In 2021 alone the global takeup of Bitcoin and blockchain technology-based currencies rose by over 880%, making it one of the most rapid adoptions of technology in history.

With the fear of sounding biblical, in the beginning, the internet, was created to share information between its users. The subsequent blossoming of the World Wide Web in the mid 1990s brought about the birth of Web1.0. This was an age of static web pages retrieved from servers. There was little interactivity and was for most users, aside from the odd tech-savvy geeks making webpages about their dog and participating in long text-based adventure games, a read-only system.

Command line interface

Fast forward to the mid 2000s with the uptake of smart phone technology. Internet usage began to morph into the next phase, namely Web2.0. This version is one that by and large still governs our user experience today.

Web2.0 is a participatory internet, and became a read-write rather than a read-only system. It is driven largely by user created content that we share through social media platforms. We produced the content we consumed, becoming prosumers rather than consumers.

Prosumer illustration

The downside to this model is that it is run by large centralised organisations that host, and control our data. As we move increasingly from localised to cloud storage even more so – think Google cloud, AWS or the-company-formerly-known-as-Facebook (like a new name will make us forget), which alone has had more data and privacy breaches than you can poke a stick at.

So, while we often upload data and create content, in a very real sense we don’t own it.

Web3 — a term first flagged in this context by Polkadot founder Gavin Wood in 2014 — is still evolving and therefore a little trickier to pin down. Many see Web3 as being closer to the ethos of Web1, which was literally built through its very data package switching to be decentralised. It didn’t matter if a node broke down, another node in the system would still be able distribute the data regardless. Information was there to be shared and openly accessed by everyone in the system, free from interference. Long story short this open decentralised model harnesses the transparent and accessible framework of distributed blockchain technology, extending interactivity of the web to Read-Write-Own. In an ideal Web3 model not only do we participate in creation, but the data we share belongs to us.

web1, web2, web3

How it works:

In very basic terms you can think of the blockchain like an excel open spreadsheet that everyone can look at, to which transactions are continuously appended. Entries, which are added to this ledger only by agreement or consensus, are immutable once ‘on-chain’. This information ledger is distributed throughout the system rather than being held/or hidden by a centralised company like fro example a bank or mega company like, ahem the-company-formerly-known as-Facebook and therefore, gives the power of the information held within to the users.

image.png cc WeUser 2012

In this evolving environment the ecosystem which has started to develop around the existence of blockchain technology, promises an new more open system built in symbiosis with data that is stored ‘on chain’.

Ready to go deeper?

Almost all digital systems are built on two elements: ‘data’ and ‘compute’. The “data” is static and can be things like jpegs, a text message, an mp3, or a list of transactions. The compute function does something with the data, it computes or runs actions, and enacts changes to the data. You need both to build any kind of application or program! Which can make the immutability of the blockchain sometimes problematic.

Traditionally, this compute function in distributed applications is organised as a front-end data that is visible to the client and a set of backend services (data and compute) running in the cloud. These can be very simple to quite complex. Web browsers, like Firefox, Google Chrome or Safari are examples of centralised distributed applications.

You see the front-end web page that you interact with but not the backend code (database and compute) that performs the actions you want.

image.png Back-end/Front-end developer perspectives.

Most of the backend compute functions run in the cloud, which is overwhelmingly centralised, with a few big companies holding power over the data (think AWS, Azure or Apple cloud). These are also siloed which means reinventing the wheel every time you build as parts of the code stacks are inaccessible. As an aside, the blockchain ledger is decentralized but many of the off-chain applications points used to access it are not (AHEM Coinbase, Binance, Open Sea).

Off-chain data is any non-transactional (meaning not on [the block] chain) that is too large to be stored efficiently inside the blockchain, or, requires the ability to be changed or deleted. Actions that execute or ‘compute’ the code, and the applications that use the information in the blockchain ledger need to be hosted outside of the ledger itself or ‘off chain.’

Applications that are built to work with the blockchain are called Decentralised applications(or dApps). The problem with dApps that are directly tied into the blockchain is that they are inflexible in implementing modifications to their code.

image.png dApps by Blockgeeks

But how to empower a Web3 that is truly based on truly decentralised systems one where the ownership stays with its users and is resistant to all the things that make the Web2 version of the internet so frustrating?

This is where Fluence fits into the Web 3 dream.

The Fluence network serves as an off-chain decentralized cloud. The Fluence network can build, host, and run peer-to-peer applications and protocols. It is kind of like Napster but instead of proprietary music subject to copyright, it is a ride share of executable stacks of code. It provides a thin layer peer-to-peer platform for developers not only to store and build and run open-source code but to host ‘compute functions’ that run code stacks not reliant on the hosting services of any proprietary third-party development nodes (looking at you AWS).

image.png

It connects computing devices into the network, by running managed off-chain database services and generalized “backends” that are interoperable, which means they work across systems. Fluence’s open-source language allows for the programming of peer-to-peer scenarios separately from the computations of peers.

At the heart of Fluence is AquaMarine — No! It isn’t a gemstone or a movie. It’s an open-source native programming language (Aqua) and a WebAssembly runtime (Marine) that provides the base for which all of the applications run on the Fluence network. Since it is open-source, it is maintained and governed by its dedicated community. Fluence nodes use Marine to host the Aqua Virtual Machine which executes hosted runtime services (the compute part) hence the name “AquaMarine”.

With Fluence, it’s a lot easier to prevent a situation where the cloud service through serverless platforming. This avoids vendor lock-in, where it becomes impossible to migrate to a different vendor. The infrastructure Fluence provides allows for instant scale to match the continuous demand. In addition, it incorporates appropriate micro-billing, this way you only pay for what you use and nothing more, comparable to AWS Lambda. This is in total contrast to the previously cloud server platform where users are billed whether the service is being used or not.

Aqua is compatible not only with blockchains but also storage, identity, and other protocols.

I mean who doesn’t want to be able to easily move between systems?

A fun way to consider it is like this:

Imagine having a never-ending supply of just the right kind of lego bricks to build your racer without fear that one of the pieces might be discontinued. You can have a network of friends you share your blocks with or literally billions of peers that have that exact piece in their toy box and are happy to share it whenever you need.

Fluence can also double check beforehand that the Legos that you use, are from peers you can trust. If you aren’t using pieces in your collection. You don’t get charged for them.

Rather than constantly having to rebuild, with separate components that are currently on the cloud, Fluence stacks build foundations that anyone can use to build their racers, or castles or spaceships.

So, what kind of spaceships are we talking about?

Well, some of the cool things the Fluence network does is:

  • Multi-party computations — Fluence can act as a cryptographic tool that allows multiple servers or APIs to make calculations independently but using their combined data, while still keeping their individual input. (See the Lego analogy above.)

  • DAO-managed applications — Fluence is a great tool for assisting building on-chain DAOs using off-chain code. With the rise of Decentralised Autonomous Organisations the opportunites are vast.

  • Blockchain oracles — Fluence offers a system that sends and verifies real-world transactions and transmits the information to smart contracts, triggering state changes on the blockchain. These types of systems are called blockchain oracles.

  • Censorship resistant apps — With Fluence network, apps can be deployed without fear of political moderation.

  • NFT platforms — It also issues decentralised authentic certificates for Non-Fungible Tokens as well as captures mints and transfers data for NFTs or ERC20 tokens using Aqua.

  • Decentralised exchanges — Building decentralised exchanges with off-chain order books to save infrastructural costs and transaction charges by just using a peer-to-peer signature is now possible with Fluence. This way, you’re able to avoid a tedious ‘know your customer’ process while also enjoying the speed of a centralised exchange.

And if all this wasn’t enough, it runs cryptographic tokens as a digital payment system so contributors can be paid for the usage of their code. About time opens source became profitable. I predict Fluence will be a formative part of the Web3 internet ecosystem enabling the freedom of digital innovation via peer-to-peer applications and creating a fairer, more open, decentralised future in which to operate and be part.

Want to learn more or get involved?

Fluence Labs

twitter.com/fluence_project

fluence.network

discord.gg/ze73jQvj

Further reading:

home.cern/science/computing/birth-web/short..