Serverless domain app store using ipfs and ethereum for a new decentralized Platform-as-a-Service

This blog post will describe some ideas around building a serverless app store that can be used to write web applications and extensions for every domain on the internet.

Typical use cases could be:

User Story

As a user I want to solve some problems in certain web applications where the supplier did not implement the functionality yet e.g. special exports to use the data in other applications or special reporting to get some insights about things that I don’t know yet.

As a developer I want to develop software without installing any IDEs or other tools and I want to get paid based on the value that my software creates to earn a living and do something inspiring.

Product vision

The product is a set of specifications that specifiy based on decentralized platforms how apps are requested, run, developed, approved and deployed. The platform is run by all participants and there is no single point of failure. This should make sure that companies like AWS, Google Cloud, and Microsoft Azure are not required anymore or if they are used they are easily exchangable by other partners.

Browser

The only thing that will be necessary to develop, publish, participate, pay and receive money on the platform is a standard compliant web browser like Firefox or Chrome. All the code will be written in JavaScript or other languages that can be compiled to WebAssembly. The important point is, that it has to be executable by the browser.

IPFS

If you are not familar with IPFS than read this blog post. IPFS can be used to host the applications, host the IDE and the pubsub mechanism. It is a perfect fit for service discovery. The integrated IDE can directly edit and publish files from the browser into the internet. Releases of libraries and apps are directly tagged with their content based checksum.

Code signed by default

IPFS and new network protocols like Signed HTTP Exchange will automatically as a side effect asure that if a certain app is published it will come unmodified from the author to the user. Based on the logic of the network it is impossible to run unidentified code. A trust and reputation network can be build on top of it.

Ethereum Ether

To receive payments every developer can integrate Ether Payments. The business model itself can be decided by the developer. If it is a flat rate fee or an transaction based fee is their decision. The recommended way is to charge 30% of the value created for the user. Let’s assume we automate the target group selection for a newsletter tool. Everytime the user uses it he saves 15 minutes of work. The user earns $20 an hours so the software creates $5 value for the user. This means we should charge $5*0,3 = $1,50 for every usage.

Web based IDEs

There is a trend to web based IDEs. SAP WebIDE, Eclipse Che and Eclipse Theia are just 3 of the prominent examples. The killer feature is: You don’t have to install it. They come pre-configured for every imageable  repository by just clicking a link.

Conclusion

This blog post presents some ideas how to develop the next generation killer Platform-as-a-Service that can be used by every person who as a webbrowser. It does not need any central authority like cloud providers or banks to make the technology or the business modell work. Everything is decentralized and strong algorithms guarantee that the system it running as long as there are more than three nodes online.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.