Problems Data Accounts Solve: Why Use the Data Account System?
When Dr Grace Hooper wrote her compiler in the 1950s to translate English terms into machine code, modern programming was born. We have since witnessed the movement from procedural codes to object-oriented paradigms to functional programming. Software architecture and design has also co-evolved to manage and organize the increased complexities of bringing the outputs of these programs to their target audience. We started with silo programs, to a 2-tier client-server architecture, to a 3-tier frontend-backend-database design to the modern-day designs of microservices and serverless functions.
Through this history of software programs, there are 2 common elements that are ever present in any system that interacts with end users. They are:
1. the need to identify the users
2. the need to store information about the users
As we enter the 8th decade of modern software, it is time to re-evaluate how we do software.
Every time developers embark on a project, they spend tremendous repeated effort in constructing codes to communicate with the database layer, to handle logging and analytics, and to manage users and their credentials to access the system.
Often, none of these are crucial to the value proposition of the software being built; they are only a necessary requirement of software engineering.
Personal Data Accounts can alleviate backend labours, allowing the software developer to focus on creating its core value propositions.
Through the use of APIs, PDAs offer the focused functionalities of identity management and personal data storage. In addition, the necessary permissions, contract set up, impact assessment and governance reviews are part of the platform services for applications building on PDAs to help application developers navigate the complexities of personal data handling.
More importantly, a personal data account isn’t just another backend solution. The combined efforts of 8 universities and more than $10m UK Research grants have gone into ensuring that the personal data account is powered by a backend server, the HAT Microserver, with full ownership of the database by the user and full agency on what the user can do with his/her data. This gives users not only storage of their data, but the ability to install "tools" for private computation as well.
The Data Account is not just an Application’s personal data storage on the internet. Since it is also a server, it can be used for authentication. Users only need to enter one set of credentials to access applications – via desktops, smartphones and tablets. This greatly increases efficiency for the user while keeping their data secure. In addition, users authenticate themselves at their own servers, rather than logging in with Facebook or Google - enabling an application to give their users greater privacy.
Every business that puts an application out on the market would need to attract users. And every such business would also have its entire user database in individual application silos. Without further integration work, it is difficult to share their user base and under some of the privacy regulations, sharing user bases may even be illegal. Even when developers use Single Sign On systems such as those provided by Facebook or Google, they will still need to maintain their own database of accounts.
Data Accounts given to users by applications contribute to the pool of individuals in the ecosystem. Every software built on data accounts will bring its own users, each owning a data account to the ecosystem that can login easily to another application with the same data accounts. Every software application in the ecosystem is therefore effectively a partner of another application, each synergistically co-acquiring users for one another.
By storing users data into the Data Account, the access, control and ownership of data now reverts back to the user. And yet with proper contracts, permissions and governance, the data can be shared back with the application, creating a win-win for both. Compliance and privacy concerns are fast becoming a key issue when building software. The next wave of successful software applications must not only be user-friendly and functional, they must also protect the privacy and rights of the people using the software.
This new generation of ethical applications are now possible with personal data accounts. It’s the way the Internet should be advancing.