I have been obsessed with this idea for nearly ten years. Most of our digital world is, at its core, about the transformation of data rather than any sort of application that lives on top of it. What drove the need for the application layer was an inability for users to deal with the complexity of gathering data and understanding how to transform it into what they want.
On a technical level, you can see this manifest in tools like Airbyte, DBT and Airflow.
On a user level, you can see this manifest in dashboards and reports.
In some ways my focus on computer use has been in purpose of a future where users can finally create what I am choosing to term atoms. These represent the building blocks of our world.
Data Sources
- Twitter Posts (API)
- LinkedIn Messages (Computer Use)
- Blog Posts (Firecrawl)
Actions
- Send a DM (Computer Use)
- Change a Password (Computer Use)
- Create a DMV Appointment (Computer Use)
I have a beef with the technical implementation of MCPs but these are also atoms. They are granular building blocks of our world and allow for composability.
This idea is not new, its had many phrases, but I believe that codegen has finally put us in a place where the cost to create high quality, well defined atoms is feasible and that enables an entirely new type of interaction.
An atom should have a well defined
- Input Schema
- Implementation
- Tests
- Output Schema
If we have these 4 things then the area for non-deterministic failure becomes much, much smaller. It also means that our world becomes highly composable and LLMs form the interaction layer for a larger audience to begin orchestrating data movement.