The Blockie Open Market
So far in the series we have covered how Blockie helps superpower smart contracts using API by Contract (AbC). In case you haven’t seen the posts about AbC, please take a moment to read them: Part I and Part II. This entry describes the portal in which people will be able to create, share and publish software and decentralized services: the Blockie Open Market (BOM).
AbC and BOM are designed to work as two standalone products. While AbC enables the linkage of cloud services to smart contracts, BOM is a platform for creating software (to which AbC can be applied). With a separate token model both are an important part of the bigger picture, coming together as the Blockie vision.
Linking Local Creativity with The World
Blockie set out on a mission long time ago to enable anyone who wants to take part in software creation, to produce content and deploy it in a user friendly and reliable way. Blockie believes that individuals, communities and organizations should have access to tools and services which enable them to create software, either new or derivative. They should be given a chance to solve problems regardless of their coding proficiency while running their creations as decentralized services.
We need to start closing the gap between consumers and producers of services on the internet.
BOM will close this gap. It is a web portal where users come to develop (decentralised) services, taking advantage of a marketplace for publishing original content or reuse existing solutions to create potentially unlimited variations of services and products.
By leveraging the Ethereum network, users will be paid for software creations or pay others for their coding help using microtransactions. Furthermore, contributors can be rewarded for other tasks performed in the portal which increases the overall usability. More about this in the upcoming whitepaper.
Divide and Conquer
By enabling users to contribute unique pieces of software to BOM, or take coding tasks to create specific software, BOM resembles a job market. But it is conceptually different. It is designed to break up big problems into smaller more comprehensible chunks.
In order to achieve this, BOM’s core is comprised of different layers. Each layer relates to a different set of expertise in the software development process — from infrastructural to application level. These layers are called Space, Machines and Things.
This way all users, regardless of their software developing skills, can either contribute or seek solutions for specific tasks.
The Space layer represents the foundational functionalities, Machines the creation and management of infrastructure and Things the composing of functionality in a block-on-block “lego-like” approach.
The Modular Foundation of Space.sh
Space.sh is the foundation. The first layer in the stack is an advanced, free of charge, open-source, modular software tool that runs practically anywhere and requires very minimal setups to do so. It can be used for developing any type of application, extensions or automation recipes. The main aspect of Space is that anyone can build upon it.
The most common use so far has been for creating multi-platform, portable server applications and performing general automation, in particular provisioning and administrative tasks on servers without the need of pre-installed software, agents or any other complex setup.
Other use cases involve remote controlling computer resources, even in the most intricate environments that require dynamic re-routing, passing through firewalls and multiple layers of authentication.
Space was first made publicly available in November 2016 and currently offers more than 20 public modules that extend core functionalities.
Virtual specifications with Machines.sh
Machines.sh is the second layer in the stack, and is comprised of technical specifications for virtual resources. It handles provisioning of virtual machines, network interfaces and storage in a provider-agnostic way.
Commonly referred to as dev-ops, Machines is used for the creation and management of server infrastructure, regardless of the host provider, in a very accessible way by using a simple descriptive language.
Things.ai and Software Composition
Things.ai is the third layer of the BOM structure. Things contains platform-independent software services and microservices designed in such a way that it is possible to stack them together into new, more competent, pieces of software. A new Thing element can then be reused in some other Thing composition, which can be returned back to the pool and so on in a potentially endless cycle of customization, improvements and ever growing competence.
The “magic” happens when users start to combine other users’ Things into their own Things. We envision a rapidly growing pool of Things that will accommodate ever more complex and fulfilling services for an audience that should swell in numbers over the years — hence fulfilling Blockie’s vision about enabling non-coders to create software.
Things are based on containerized reusable application compositions, taking advantage of containerization provided by Docker and Kubernetes to deploy working services.
Becoming Bigger than the Sum of its Parts
The Blockie Open Market (BOM) web portal acts as a hub for connecting peers at a common marketplace. In each discrete layer of BOM, there will be many building blocks to pick and choose from when building your own BOM project. If you are missing a specific functionality or you need assistance in any layer or about any specific building block you can get help from your peers in the BOM community.
Pick and choose, mix and match functionality blocks.
BOM creations in conjunction with API by Contract (AbC) will enable decentralized applications to take advantage of existing cloud-based software, including all open source software such as Tensorflow A.I. for machine learning and intelligence, Apache Spark for data processing, Storm for real-time processing and Hadoop for distributed storage and computing. This enables intercommunication between blockchain-based applications and highly efficient open source software, offering these new creations the ability to expand their environment and execution boundaries. For example, smart contracts can use AbC in conjunction with Machines to launch a cloud service built with BOM, without any human interactions.
Turning mere consumers into creators
BOM enables participants to share work on each layer by offering or asking for help and get paid for their work with Blockie tokens. As an example, non-coders will be able to outsource one or more challenges in different layers of expertise, in order to build their own BOM project.
Idealistically, the goal of BOM is to become an expanding community portal, filled with working parts and components that can work on their own or be used as a principal part of a new creation in an easy and intuitive way.
Users are then able to choose from, reuse and combine all the various Things into endless possibilities.
The need for empowerment, to let people have the choice of building or customizing applications in a world that is so involved with technology is something Blockie deeply cares about.