The Friend Roadmap
In the short to medium term we intend to make Friend completely decentralised. We will modify FriendCore to enable nodes in a network to trust each other and exchange any kind of information while encrypting all data in transit.
In addition to activities related to decentralisation we will implement functionality to allow organisations to easily distribute virtual cloud computers to a heterogeneous user group. We see huge benefits for both universities and other educational institutions as well as for other distributed entities like NGOs, special interest or research groups.
As Friend is all about distributed computing, the Friend Network will be a key area for our project developments as we want to create a secure, scalable and globally accessible way to use applications and data.
The Friend Network provides the framework to allow users to seamlessly access their applications and data on their own premises. It will include a mechanism that allows users to decide if and how their data will be treated both in transit and at rest.
The Friend Network will allow users to publish data, software and services without having to own an IP address. Once a user has logged into his or her account via an Access Node, all these resources will be made available by the Friend Network. The communication between nodes in the Friend Network will happen on an open protocol. It will provide options to verify both the sender and receiver of data. It will allow for binding a token transaction to successful data transfers. In turn, data transfers that cannot be completed will issue a token refund.
This is how we will extend the Friend Network:
- Allow Friend Core to run on an even wider spectrum of devices to enable widespread creation of Access and Network nodes.
- Extend the authentication mechanism to allow users to login with their blockchain accounts.
- Extend Friend Network to allow users to login with decentralised identification providers such as uPort.
- Establish a framework to create trust between all users (Friend Store integration).
- Establish a framework to offer resources to trusted nodes.
We will create file system drivers to leading blockchain based storage services. As this is a market in its early days the different adoptions will depend on the development of the different providers themselves. Right now these seem to be a good fit:
- Sia - http://sia.tech/
- Storj - https://storj.io/
- IPFS - https://ipfs.io/
- Swarm - https://github.com/ethersphere/swarm
- Tahoe-LAFS - https://tahoe-lafs.org/trac/tahoe-lafs
We will of course be observant and look for new candidates as our project evolves. Our overall goal is to offer the user plethora of choices when it comes to storage - so that he or she can freely choose the service provider based on personal requirements without the need to worry about different user interfaces.
For paid services we will integrate the needed processes directly into the file system drivers and connect those to the Friend Store.
Friend Store will be the global marketplace in the Friend Network. We will allow developers, service providers and vendors to easily publish their applications and services directly to the Friend Store, and additional mechanisms will allow for flexible monetisation models. All products and services in the Friend Store are paid for using a token.
To promote high quality apps in the store front, we will establish a group of official reviewers that validate, test and rate apps based on an open checklist with objective criteria. Apps may achieve the most rigorous testing and evaluation in terms of security and performance by paying a fee to the official review and testing group. These apps will be displayed with a badge representing their final rating.
Friend Store will also provide for customer community usability and satisfaction ratings and reviews, though these may be moderated for region, language, and appropriateness. It is our clear aim to be as neutral as possible in this, and we will be open to input as to how such ratings and reviews should be carried out in the most objective and fair manner.
We will take the usability and design of the Workspace to a new level. We will create beautiful and user friendly interfaces that suit a broad spectrum of users coming from different platforms.
Apple users are used to one way of working in a desktop environment. Windows users work in a slightly different way. The ability of Friend to switch UI paradigms is powerful for attracting users with different OS experiences, both from desktop and mobile platforms. The promise of customisability is at the core of Friend’s vision of freedom.
By being a full workspace, and by offering support for complete workflows in many categories of work, web applications will be elevated to a new level of usefulness. Apps that were single-tasking in the past get a chance to multitask and interact with others in a shared environment.
As the Workspace has a complete file manager with support for many file-types through its MIME system, files can be opened using a "Open With" context menu or a double click. By integrating with third party services, files can be processed directly, launching processing threads to do anything from rendering Blender animation frames to executing batch operations. Processed files can be output directly into new directories on your preferred cloud disk.
Friend Cloud Computer templates
Friend Templates aggregate choices in functionality (supplied software), resource configurations (compute, storage, and network provision), and design (capabilities and access to departmental or enterprise assets, databases, etc) so that Friend Cloud Computers can be rapidly rolled out for various different purposes. This will allow organisations to easily distribute template based cloud solutions to heterogeneous user groups with minimal effort. We see huge benefits for educational institutions as well as for other distributed entities like NGOs, special interest or research groups.
We believe that these Friend Templates will play a substantial part in energising the Friend Store, making it easy for developers and others to tailor environments that are optimal for certain groups of users.