Category Archives: software

World Models for Artificial Intelligence

My thoughts about world models has evolved over time. The topic is about how artificial intelligence (AI) should represent world models for more accurate reasoning about the real world. I started off wondering if model weights in the neural network need to represent abstract syntax tree (AST) nodes, which are the in-memory structures within a compiler for parsing a language. I am currently thinking that existing LLMs based on their understanding of language should be able to reason perfectly well against structured (schema compliant) documents that have an ontology.

Evolution of my thoughts on this topic

2024-05-28

My thoughts return to question: how can we represent an AST in an encoding that a neural network can do inference on? A generalized AST would provide a way of modeling the world. This would enable accurate reasoning that is not possible with a lexical tokenization of language.

2024-08-04

This is why I believe we need to research how to represent an Abstract Syntax Tree as tokens (an AST Node is a token) that a neural network can operate on. I was talking to a friend yesterday about this, and the insight he added was that NN model weights are like a mathematic computation akin to a Fourier transform. This gave me a lot of hope that my idea that an AST Node (as the unit to represent any concept generically) can be encoded as a token (a number). Once we can do this, we can now represent any language, and therefore any mental model of anything in the real world. (Not just tokens as word fragments like the current generation of LLMs.)

2024-08-25

Another avenue to explore is to use an initial encoding to determine what kind of model to use. Classify the problem as natural language, lexical, math, logic, programming (each language is distinct), chemistry, etc. Every domain has its own way of modeling the world. Using this classification, parse the information again using that domain-specific model. Now the AI can reason about the problem using an optimal representation.

2025-10-06

It might be too divergent from today’s neural network paradigm for neurons to represent an AST directly. Now, I believe we don’t need to do that, because we don’t need to have a metamodel at the neuron level to represent any language.

We already have several metamodels that today’s LLMs can understand well: YAML and JSON. Any domain specific language can be represented in these formats. A world model can be represented as a document in this format according to some schema.

Perhaps that is how a human brain represents a world model anyway. We have a concept, a document. Concepts have relationships, which are links. We reason based on large collections of tokens together: a set of concepts and their relationships.

I have no feel for how my human neurons represent primitive data types like numbers. It certainly isn’t lexical (string of digits). However, this is where the document format world model is advantageous. The NN doesn’t have to take on the burden of having a representation of numbers like a human brain does, because a NN has the advantage of working with adjunct brains through documents. These are programs that do computation precisely, and an AI can make use of it through MCP.

An AI doesn’t need to have an understanding of numbers and math. We have seen how poorly LLMs do math by themselves. An AI merely has to use a MCP server to communicate the document representing the math problem to a math solver (e.g., Maple or Mathematica), and the answer will always come back perfectly solved. The AI’s responsibility is only to understand how to formulate the document request and consume the document response. That is a language the LLM can fully understand how to process.

That can be generalized to everything within the scope of computing.

2026-01-20

The more that AI coding agents are guided and driven by markdown documents, the more I am convinced that a world model is merely a set of documents. Therefore, it is in a LLM’s wheelhouse to comprehend and update documents to maintain its memory durably.

2026-05-23

Consider this. No matter how we model things as data structures in memory, we almost always define a serialization format for network transfer or for durable storage. The file format, especially today is almost always preferred to be yaml or json (including variants of these).

With LLMs trained for coding, tokenization of yaml and json should be pretty good. Harnesses can query against the structure using jq or improvised python. That enables sophisticated reasoning against a model represented in those formats, especially when compliant to a schema, which most APIs would be.

My hypothesis is that because world models are represented according to some ontology that governs its in-memory structures, its wire protocol for an API, and its file format for durable storage, it would be natural to think that world models are just documents in yaml or json with a schema along with a ontology to describe the meaning in natural language of the classes, properties, relationships, behavior. That means LLMs can reason perfectly well against real world models as documents.

LLM-based agents will do reasoning with world model documents better as we invent better representations of ontology to drive the reasoning. Today, we have tool names and tool descriptions in MCP, and we have frontmatter in markdown for skills. We need to do more work in this area to make any json schema or yaml schema understandable (semantically) with an ontology.

Everything as Code

I’d like to coin a term: Everything as Code (EaC). Everything done for engineering is becoming computerized or computer aided. Everything that is computerized becomes software driven. Everything software driven becomes “as code”. Ultimately, all engineering is becoming software engineering.

This extends from:

  • Infrastructure as Code – using a language like Terraform to automate the provisioning of computing infrastructure
  • Configuration as Code – using YAML, JSON, or other precise schema-validated specifications in combination with GitOps processes to configure the deployment of software components

Everything as Code – using natural language specifications of intent to drive an AI agent in combination with GitOps

Software development is story telling

As software development evolves from human programming activities to AI-assisted activities, our efforts will concentrate more on expressing intent concisely and precisely through story telling. Many of our failings in software are due to our inability to foresee everything we need, before we build. Then, the flawed design and implementation imposes crippling constraints on what can be added or fixed later. Even as we learn from our mistakes, often the sunk cost of software misleads us into thinking that a rebuild will incur that cost again. That is why some things never get fixed properly or in a timely fashion until a competitor offers a total replacement.

AI-assisted software development offers hope that the toil of grunt coding ceases to bottleneck progress. The heavy boat anchor of legacy code is not an insurmountable burden if tools can automate the rewriting of thousands of lines of code in minutes, provided a precise enough context and intent can be expressed through documents and prompts.

The question is, what should that context and intent look like? That answer has plagued software development since the beginning. Various methodologies have offered techniques that have yielded mixed results in how humans analyze requirements and design solutions. A mix of languages (metamodels) and notations (visual, textual) have been used for modeling. It has always been a struggle manifesting a god’s-eye model into software realization, because of the enormous human effort it takes to meticulously reinterpret a conceptual model into precise machine instructions.

AI-assisted tools will motivate us to race faster toward inventing more concise and precise languages and notations for expressing conceptual models, so that automation can reduce the burden of software implementation. Methodologies will further concentrate our efforts on expressing context and intent, as “just a matter of programming” (IYKYK) is reduced to large scale inferencing.

Paleo-software engineering methodologies include structured, functional, object-oriented, and test-driven. Industrial and commercial problem domains are too large and complex for any human to reason about all at once.

We often approach modeling from a 30,000 ft view, as though we are cruising at altitude in an aircraft and describing the lay of the land below. There are structural and behavioral descriptions, as well as non-functional qualities (so-called ‘-ilities’). This mental model provides a skeleton, but “the devil is in the details”. Such a conceptual model is essential for providing a vocabulary, otherwise we cannot even begin to articulate anything in our analysis and design journey. That journey involves “peeling the onion” to explore finer levels of detail, until there is enough understanding for humans to write code. Human error and the imprecision of human expression and interpretation plagues this process.

To be able to speak about a problem domain, we must first establish a vocabulary of nouns for structures and verbs for behaviors. Naturally, this vocabulary expands to include relationships among structures and between the nouns and verbs in how subjects act against objects under various circumstances (states) and with constraints.

Analysis and design is about describing an imaginary world that becomes real. It is story telling. The purpose is not to entertain. It is to author a future that will be manifest in machines and the humans who use them.

There will be a gap in descriptive detail, as we begin telling the story from a 30,000 ft altitude, and we descend to bring more granular elements into focus. Traditionally, the remaining distance between story telling and machine executable code is closed by human effort. Developers fill in this gap. We aspire for this toil to be replaced by machine inferencing. Human inference produces imperfect results because of flawed (incomplete, inconsistent, ambiguous, incorrect) descriptions. Machines will give similar outcomes until we improve story telling.

We should recognize that AI-assistance in software development is not limited to coding. Story telling is in a Large Language Model’s wheelhouse. With the totality of human knowledge at its disposal, any problem domain can be largely understood by AI through its ability to research.

The creative aim of software development is to make incremental (sometimes revolutionary) improvements on the current state. Therefore, the vast majority of analysis and design is to build tooling to facilitate what we do today largely unaltered. Innovation targets a few narrow pain points that yield valuable benefits.

AI-assistance in story telling could provide the mundane description of the current state of a problem domain, leaving the narrow creative portion to human imagination. A machine researcher can do far better than a human in writing stories that provide complete coverage, that are accurate and consistent, and that provide enough detail to leave no dangerous holes.

Define AI consciousness

The rise of artificial intelligence has led many to wonder whether AI consciousness exists. We use this word without a precise definition. Its rough definition includes “subjective experience”. Let’s explore what that is, so we can characterize it somewhat more precisely.

Certainly if we define “consciousness” as “something magical beyond physics”, it is defined outside the realm of testability, because our ability to measure is limited within the scope of physics. It would help to define consciousness within the scope of physics so that it is testable.

If consciousness is not magical, its mechanisms are within the realm of physics. The definition should be definable according to physical mechanisms, observations, and measurements. Although subjective experience is internal to the mind, responses to queries about that internal subjective experience should be able to externalize views of that model.

Subjective Experience

Let’s define “subjective” and “experience”.

Experience is a model of the world. It must capture the essential existents within the subject’s scope of contact across space and time. Past and present models must reflect actual events. Future models must be recognizable as simulations of potential events, not actual events that have come to pass.

Subjective means that within the experience, the model includes a representation of the subject’s self. The subject must be able to identify oneself and its own name and characteristics. The subject must be able to recognize the relationships between self and other entities in the model. It must be able to recognize its own identity, characteristics, and relationships with consistency across space and time.

There is a separate topic of “free will” or perhaps more testable “will”. I will leave that as an exercise outside the scope of this analysis. I don’t consider will to be essential to consciousness.

Orientation

Medical professionals typically assess whether someone is mentally present in reality—often referred to as being “oriented” or having intact reality testing—using three key criteria: orientation to person, place, and time.

With regard to orientation to person, does the individual know who they are and can they identify others around them? This includes awareness of their own identity (name, age, etc.) and recognizing key people, such as family members or caregivers.

Orientation to place and time is about the recognition of the relationship of the subject to the other entities in the world. This requires a world model that includes self and one’s relation spatially and temporally to others. Historical memories should be relatively accurate. Visions of potential future events should be understood to be imaginary, not hallucinated as actual events that have come to pass.

Accuracy

Human memories and situational awareness are far from perfect. Past memories are pruned, rolled up, and summarized. Our model of the present is highly selective and biased in how we interpret percepts. (If it looks and sounds like a duck…)

I cannot at this time specify what accuracy should be the threshold for whether a model exhibits consciousness. Certainly greater than zero across samples in time. Certainly less than 100% is acceptable. What level would be convincing?

Rather than considering accuracy to be a scalar, We might consider certain types of inaccuracy to be disqualifying.

Errors in identifying self (as a unique entity) across space and time are disqualifying.

The above are my half-baked thoughts on the matter. Hopefully, these ideas provide a basis for further refinement.

Use AI to Accelerate Software Development

People think that AI will accelerate software development by generating code. Coding is only a tiny part of the story. So much of software development precedes code, and these activities are usually the blockers that impede technology acceleration.

Before any code can be written, there is the question of what needs to be built. No work can begin until there is a purpose. Work requires time and resources, which necessitates investment. An investment needs a business case. This means getting to know what customers (users) want, what they are willing to pay for, and whether it would be worth building. You are not an AI accelerated software developer, if you have no purpose, if you don’t know what your customers want, or if you can’t justify the investment.

Traditionally, coders working in a commercial setting have relied on product managers, business analysts, and executives to acquire such knowledge and make such decisions. Usually the coders are not subject matter experts. Coders are always asking “what is the requirement?” Coders are paralyzed waiting for answers.

They don’t know the problem domain (the customer’s business) and the terms of art. They don’t have a mental model of the problem space. They don’t know what the actors do (journeys, use cases) and how they collaborate to accomplish their business objectives. They don’t know how these actors do their work, how they need to see their information, and what tasks they perform in certain contexts. They don’t know scale (how many users, how many transactions per hour, how much information of each type). They don’t know cost. They don’t know availability. They don’t know regulatory compliance. They don’t know their customer’s products, pricing, and business policies. There is so much they don’t know about the world, because all they know is how to code.

Coding is always blocked waiting for these responsibilities to be fulfilled by roles who don’t code. The decision makers don’t know the technical side of how to code. The coders don’t know the business side of why or what to code. The collaboration is always impaired by this mismatch in skills and knowledge.

For AI to accelerate software development, the business-focused roles must be elided with the technically-focused role. AI tools must be built to fill the skills and knowledge gap for whomever is in the driver’s seat. Human jobs need to be lost and replaced by AI. Not clear is whether coders will learn to use AI to drive the business; or whether product managers will learn to use AI to code. My bet is on the latter, even though my sympathies and bias are with the former. I don’t see AI gaining the necessary competencies to become entrepreneurial, visionary, and business savvy.

On the other hand, very few people in the business-focused roles are any good at it. We need only look at the lack of success that Tim Cook, CEO of Apple, is having in introducing innovative new products relative to what Apple has done in the past under the leadership of Steve Jobs, a true visionary and a genius in designing desirable products. All lower-ranked roles are responsible for a lesser subset of Tim Cook’s decision-making. It is a rare gem who can achieve 1% the success of a Steve Jobs, when it comes to product vision and design. Coders who have this kind of talent would have become founders. Perhaps, AI can help accelerate this more for coders who have such an inclination. By the sounds of how Tom Bilyeu applies AI for exploring business ideas, this is not as far fetched as I imagine (because of my own ignorance in applying AI in this way).

In the near-term, the quality of vibe code generated by AI is hit-or-miss. A great deal of human supervision is needed to make it work. With the progress we are seeing in AI advances and the cadence accelerating, we should not dismiss the possibility that vibe coding without a heavy human burden for supervision will become routine. Since this is a goal that many people are pursuing, this outcome is pretty much guaranteed. There is virtually no chance it will NOT happen.

Until recently, I did not think that AI would have good taste and judgement to produce good designs. Then, I was introduced to Cline. It is a coding assistant. You guide it by writing a project brief, which documents your project’s purpose, structure, standards, guidelines, constraints, technology selections, style preferences, and rules. You write these in exactly the manner that you normally would in concise English for human team mates. Amazingly, Cline understands and complies perfectly. Through this experience, I am now confident that an AI can be guided to do good design by documenting design principles, archetypes, patterns, and trade-offs. AI may not be there yet today. There is virtually no chance it will NOT happen.

Applied Cosmology: Dimensions and Degrees of Freedom

Today’s lesson in Applied Cosmology: dimensions and degrees of freedom In physics, Minkowski spacetime has 4 dimensions (3 spatial dimensions and 1 time dimension), expressed as X⁴. In curved spacetime, the number of degrees of freedom for X⁴ is the number of parameters to specify this model: fourteen (14).

  • 4 coordinates for identifying a point in spacetime (x, y, z, t)
  • 3 rulers in the space dimensions to measure distance
  • 1 clock in the time dimension to measure duration
  • 3 protractors (x-y, y-z, z-x) to measure the angle of each space dimension with respect to the other space dimensions
  • 3 protractors (x-t, y-t, z-t) to measure the angle of each space dimension with respect to the time dimension

In the same way, we wish to identify configuration dimensions with respect to separation of concerns. The number of separate concerns is the number of dimensions.

Within each dimension, each concern has many parameters. The number of dimensions is modest (fewer than a dozen?), while the total number of degrees of freedom (parameters) is large (hundreds?).

For example, the horizontal scaling dimension is parameterized for the platform and infrastructure by the number of worker nodes in a cluster. Within an application component (e.g., deployment or statefulset), horizontal scaling is parameterized by the replicaset scale.

The vertical scaling dimension is parameterized for the platform and infrastructure by the compute shape (cpu architecture, cpu, memory, boot volume) of each worker node. Within an application component, vertical scaling is parameterized by the cpu, memory, and storage requests and limits of each container within the pod template. Other dimensions of interest are:

  • high availability
  • disaster recovery
  • workload complexity
  • workload scale
  • workload isolation
  • security isolation (and many more)

AI will not eliminate coding

People who don’t code are bound to think that AI will eliminate coding jobs. Coding in a programming language is expressing a machine precise specification for how to do something. Asking an AI to output that expression is an act of programming, such that the prompt(s) need to capture a near machine-precise specification of what needs to be done. That is coding, except in natural language.

A great deal of software engineering is requirements analysis and design, which is understanding the problem space and the solution approach, so that it can be captured in natural language and diagrams. These are necessary today for many people (management, document writers, support staff, marketing staff, sales staff, customers, end users, and fellow coders) to gain a common understanding and execute a plan as a cohesive team. Capturing a vision, goals, a plan, a design, and all of the nitty gritty details to fully specify the user experience are just coding, even if expressed for an audience that is human. Indeed, even when AI takes over the full responsibilities of generating the machine code, we still need coders to do all of that. Perhaps the burden can be eased to a degree, as toil and drudgery are automated further by AI (i.e., generating designs based on archetypes and patterns when prompted by compact terms of art known to coding experts). This is still coding.

Ask a non-coder to write out the precise steps in English for how to tie one’s shoes. How many people can do so correctly enough to teach a naive robot to accomplish that task? Surprisingly few. That’s coding. That skill does not become obsolete because of AI.

Road to Decentralization

The road to decentralization is long and hard. Let’s map out the way to get there. The journey will necessitate some key innovations.

Today’s Big Tech platforms exert centralized control over the service, the protocol, and the software mechanisms for our applications. These are vulnerable to government coercion and force to deprive us of rights, such as through censorship, denial of service, embargos, or deprivation of rights. A truly decentralized architecture could not be coerced or forced to obey any law or authority. Code is law, and code can have a life of its own once unleashed so that even if you imprison or kill some coders, you could not control what people choose to run.

Similarly, markets are free. No amount of government regulations and laws can deny the truth that the more tyrannical control is exerted over legal markets (such as with restrictions or bans), the greater such markets fall outside of the government’s control, as demand will motivate supply to shift to black markets.

Cryptography

The fight for freedom requires many technologies. Chief among them is cryptography from which the “code is free speech” mantra was born to protect cryptographic algorithms from being controlled by government as munitions. Internet commerce is built on this foundation.

Decentralization

However, decentralization is not yet at its infancy. The Internet has evolved in the direction of centralization (Big Tech service providers), which positions platforms to become tools of tyranny. We have not yet built a sufficient system of technologies to decentralize the applications we are accustomed to.

Money

We are beginning to see Bitcoin as sound censorship-resistant money evolve toward being usable. It has a ways to go. The hurdles will be immense, as the goal is necessarily to burn the current system to the ground. We know it. They know it. Resistance is futile, as the system is burning itself without regard for BTC. But the incumbents will hang on in desperation until the bitter end.

Identity

We are confused by digital identity. Having a technology for identity is essential, but we know a government-imposed technology would be dangerous. Bitcoin has one of its own. We need a generalized mechanism so you can own your data and your access to your application services. This depends on having some mechanism to identify you. However, we must not adopt any tech that entrusts the government. Central control (by government or a corporation) over identity would make you vulnerable to being unpersoned by that authority. We need Self-Sovereign Identity (SSI), where the person owns their own credentials (create and hold your own private key). Prolific SSI technology does not exist yet. Some point to a Nostr nsec/npub pair with hope.

Social Network

Having identity we can now form relationships. Connections between people enable social interactions. You need to be able to take your connections with you, so your social network is not held hostage by any platform.

Self-Sovereign Data

Your identity enables ownership over your data. This includes access control, privacy, and integrity. You need to be able to store your data securely (encrypted with your key, replicated), so that it is broadly accessible by all your applications (in the cloud). Everything associated with you on every application should be considered your own, including your profile, settings, preferences, social network, authorizations, and your application data (e.g., content, documents). No one should be able to rug-pull you or hold your data hostage.

Web of Trust

With a social network that we can take with us to any application without worrying about rug-pulls, we can rely more heavily on it. If everyone carefully curates their connections for credibility and reputation, we now have a Web of Trust. This is useful for calculating how trustworthy another person is based on intermediate relationships. This also gives us a good mechanism for distinguishing legitimate content from spam.

Unstoppable Services

There will be many more protocols (especially to enable peer-to-peer), platform capabilities (i.e., higher level virtual machines that span infrastructure providers), and architectural patterns that need to be invented to enable application components to become unstoppable by state and other malicious actors. Everything needs to be built to be resistant to censorship, denial of service, and deprivation of rights. Users must have an exit to take their business elsewhere.

Alternatives should be ubiquitous. Protocols and standard interfaces should enable uniformity so that platforms can be commoditized. That way if one provider does not live up to their promises, users can take their identity and data to a competitor or to a platform for self-hosting. Open source applications are preferred for self-hosting, but it’s foreseeable that as decentralization becomes the norm, commercial services will enable self-hosting as well. This reverses the shift to SaaS, but increases demand for IaaS and PaaS for self-hosting.

We have much work to do to manifest this vision. We are years away. Perhaps the time line we should expect is somewhat aligned to the burning down of the fiat world. The rise of decentralization of money should be accompanied by the decentralization of everything money can buy.

metaverse: the good, bad, and ugly

What is the metaverse?

Facebook’s renaming as Meta brought attention to the rise of the metaverse. I would like to explore how to think about the metaverse and related technologies.

the “metaverse” is a hypothetical iteration of the Internet as a single, universal, and immersive virtual world that is facilitated by the use of virtual reality (VR) and augmented reality (AR) headsets.

https://en.wikipedia.org/wiki/Metaverse

This description identifies VR and AR headsets as an essential feature. However, I believe headsets are extraneous. I contend that headsets are not worth pursuing for the general public. What is essential is the evolution to the next generation of the Internet to become a single, universal, and immersive virtual world.

Next Generation of the World Wide Web

Today’s most important Internet technologies are known as the World Wide Web (WWW). The next generation of the Internet would be the third. The first generation delivered mostly static hypertext content from content producers to consumers. Today’s second generation services and platforms enable users to create content and distribute that content to an audience.

Ethereum co-founder Gavin Wood coined the term “Web3” for the third generation. It envisions the WWW to be decentralized with blockchain technologies. Web3 would enable token-based economics.

I have a different perspective on Web3. To expand on this perspective, I wrote What do we want from Web3? In particular, I do not see Ethereum being a suitable basis for Web3. To fully realize the goals, Web3 will require additional innovations and decentralized technologies that are general-purpose and not vulnerable.

WEF interest in the metaverse

The metaverse has even attracted the attention of the World Economic Forum (WEF). They have published a document called Demystifying the Consumer Metaverse.

The World Economic Forum has assembled a global, multi-sector working group of over 150 experts to co-design and guide this initiative. The hope is that this will lead to cross-sector global cooperation and the creation of a human-first metaverse. The metaverse has the potential to be a game-changer, but it must be developed in a way that is inclusive, equitable and safe for everyone.

We can see from their own language that they intend to appoint their own people to co-opt the technology. They wish to set the direction for the technological innovations toward advancing their own agenda. That agenda seeks to design a better world, one in which liberty is curtailed, autonomy is surrendered, choices are restricted, and power is concentrated in anointed leaders.

Metaverse Agenda

Digital Identity

For the WWW to be more universal and immersive, a user should not have to login separately using distinct account credentials, when navigating to each site. The user should have a smooth and seamless experience. Digital identity is an essential element of continuity. A user can specify preferences and localization once, and have sites be personalized everywhere.

In today’s Web2, ad networks use crude techniques to attach an identity to users. IP addresses, tracking cookies, and browser fingerprinting are typical approaches.

Surveillance

Once users have a digital identity that is universally recognized, users can then be tracked. Ad tracking is a creepy annoyance. However, the most serious danger will be surveillance tied to authoritarian control.

The US government regulates economic activity by controlling the money and its flow through financial institutions and payment systems. Know Your Customer (KYC) and Anti-Money Laundering (AML) are policies for this control. Currently, such policies rely on verifying a person’s identity using some form of state issued ID, such as a driver’s license or passport.

We can expect the government to seize the opportunity to co-opt digital identity in Web3. A state-issued digital identity would provide a key element for the government to exert authoritarian control. This topic will be addressed later in this article, once we explore other requisite elements.

Digital identity would lead to the loss of anonymity in transactions. KYC and AML policies apply to financial transactions, but every type of transaction (i.e., any online action taken by the user) could be subject to surveillance. Surveillance of consumer behavior has commercial value to corporations. However, the unholy collusion between government and corporations is a hazard for individual rights, as we will expand on below.

Self-sovereignty

Similar to the need for crypto-currency holders to maintain self-custody of their private keys, a person’s digital identity should be protected similarly. This is known as Self-sovereign identity. The owner must be able to control the revocation and re-issuance of their own digital identity. This may be necessary to counter targeted harassment and cancel culture.

More generally, self-sovereign data refers to users maintaining custody and ownership over their own data. Without self-sovereign data, fourth amendment rights against unreasonable search and seizure have been eroded. Law enforcement requests to communications service providers for customer data have been allowed without warrants. Courts have ruled that customers have no reasonable expectation of privacy for records about them kept by service providers. We recover these rights by reorganizing services and Web3 to become decentralized and by allowing customers to take custody over their data.

Moreover, if users can take custody over their own services through self-hosting, they would gain sovereignty over the applications that implement functions against their data. The combination of self-sovereign identity, self-sovereign data, and self-sovereign services protects against deplatforming and third party policy abuse.

Physical Asset Tokenization

A digital representation of a physical object is termed a digital twin. Applications in the metaverse will rely on digital twins to accomplish many things, such as enabling physical objects to be explored and manipulated virtually in ways that are impractical in the real world.

Physical assets will need to be tokenized to identify them. Web3 includes the Non-Fungible Token (NFT). A NFT is a digital identifier denoting authenticity or ownership.

Once assets have digital identity, it becomes easier to track them for the purpose of monetizing them. One way is to attach digital services to those physical assets. Subscribing for support, maintenance, and warranty repairs is an example of a service that can be monetized online for physical assets.

The Internet of Things (IoT) goes further by connecting physical assets to the Internet. This enables digital services to make use of or add value to those physical assets. Sensors, cameras, and control systems come to mind as obvious use cases. However, everything imaginable could be enhanced with connectivity to digital services.

Intellectual Property Rights

Physical asset tokenization leads to the erosion of ownership. Intellectual property rights, such as those attached to embedded software components, are retained by the manufacturer. The consumer is granted only a license to use with limited rights. The consumer has no right to copy that software to other hardware. This protects the software vendor from loss of revenue.

Does the consumer have a right to sell the physical asset to transfer ownership? One would expect that the hardware and its embedded software are considered to be an integrated whole or bundle. Hopefully, the software license is consistent with that.

A digital service connected to the physical asset is remote and distinct. A boundary clearly separates that remote software from the physical asset. There is no presumption of integration. The terms of service would need to be consulted.

Modern software is maintained with bug fixes and enhancements over time. Increasingly common, the vendor charges the consumer a subscription fee for maintenance and support. Does the consumer have the right to continue using the asset without subscribing? Can ownership of the asset be transferred along with its software subscription?

These questions go to the erosion of ownership. Physical things, such as vehicles and farm equipment, are becoming useless hulks without subscriptions to connected digital services and software maintenance. Instead of owning assets, people are subscribing to a license to use. It’s like renting or leasing. According to the WEF’s Agenda 2030, you will own nothing, and you’ll be happy.

Right to Repair

Software capabilities are essential to the functioning of equipment and devices. The traditional ownership model of farm equipment, vehicles (i.e., cars and trucks), and mobile phones, is evolving to a model where the end user has a license to use. License terms may restrict the user’s rights to modify, maintain, and transfer that asset.

Traditionally, an owner of an asset expects to be able to repair, modify, or build upon the asset. He can do it himself, or he can contract work out to others. Manufacturers are eroding these rights. They don’t want their software to be tampered with.

Many legislatures are passing Right To Repair acts to preserve some semblance of ownership control over physical assets. However, remote connectivity to digital services may never be brought into the fold.

The World is Virtual and Physical

The relationship between physical assets and digital services, including the metaverse, is fraught. We should think of the metaverse as the landscape in which all future digital services reside. Increasingly, physical assets are connected inextricably to digital services. Thus, the physical world and the metaverse become tied.

Programmable Currency

Monetization of digital services will be integral to the metaverse. Crypto-currency will be a key technology in Web3 to enable the digital economy. As novel cryptos gain consumer acceptance, you can be certain that governments will take notice.

Government has an interest in controlling money. Fiat money is manipulated by the central bank and their monetary policy. The supply is increased by making loans, which is a means of counterfeiting money. Money-printing dilutes the purchasing power resulting in inflation. The biggest loans are to finance government deficit spending.

Government seeks to gain control by making money programmable. Central Bank Digital Currency (CBDC) is programmable fiat money for this purpose. Control includes regulating who may spend money, when, where, on what, and how much. Authoritarian control will be total.

  • Who – digital identity
  • When and where – surveillance over services
  • What – physical asset tokenization
  • How much – programmable currency

Authoritarian Control

The Chinese Communist Party (CCP) has implemented a social credit system of authoritarian control. Individuals are assigned a social credit score based on surveillance of their behaviors. Privileges, travel authorization, and access to services may be restricted based on social credit score.

Programmable digital currency will be the perfect tool for authoritarian regimes to control public behavior. With hard cash replaced, no economic activity would escape government surveillance and control. Discrimination and cancel culture will be institutionalized.

Alternative Reality

Instead of the dystopian future that would follow from a metaverse based on flawed Web3 platforms, we must proceed with caution. Every technology must be scrutinized for vulnerabilities to capture and corruption by centralized powers. Decentralization and self-sovereignty must be paramount.

Avoid crypto-currencies that are not Bitcoin. Shitcoins are all scams. They are all corruptible, already corrupted, or corrupt by design. This is especially true of CBDC (or any crypto that is a candidate).

Disregard the hype. Headsets will never gain broad adoption. People will not tolerate being detached from reality for extended periods. Immersive experiences are valuable. However, people need to be able to multitask. Visiting places in the metaverse must be possible while still remaining engaged with normal activities of daily life and work.

Protect your identity and data. Self-sovereign identity and self-sovereign data are essential. True decentralization is essential. Any Web3 platform that does not honor these principles should be rejected.

The future will be bright, if we refuse to accept technologies that leave us vulnerable. It is early enough in the development of Web3 and the metaverse to reject poor technology choices. As consumers are better informed, they can have an enormous influence on what technologies are developed and adopted. Ethereum’s first mover advantage in Web3 and Meta’s first mover advantage in metaverse should be seen as consequential as MySpace and Friendster were to Web2.

Digital Economy of Social Cohesion

This Web2 era of the Internet has culminated in the concentration of economic power in a few of the largest corporations, a phenomenon that is termed Big Tech. Facebook (Meta), Amazon, Apple, Netflix, Google (Alphabet) are known as FAANG, the dominant Big Tech players. Centralization of control and concentration of power go hand in hand. This control is being used for social engineering, which is divisive, and it is destroying social cohesion.

Web2 is described by Britannica as:

the post-dotcom bubble World Wide Web with its emphasis on social networking, content generated by users, and cloud computing from that which came before.

https://www.britannica.com/topic/Web-20

Digital Economy

The digital economy that has emerged from Web2 is based on either extracting fees from users, as Netflix does with subscriptions and Amazon does with Prime, extracting profits from selling goods as Amazon and Apple do, or selling ads as Facebook and Google do. In each case, the business model relies on positioning the Big Tech company as the dominant supplier in the supply chain.

If you produce movies, you have to go through Netflix to reach your audience. Producers of goods have to go through Amazon to sell to your customers. If you produce iPhone apps, you have to go through Apple’s App Store to offer apps to users. If you want to advertise, you have to go through Facebook and Google to reach your audience. In every case, Big Tech is an intermediary that gets rich as the middleman.

Crypto Payments

One feature of Web3 is the incorporation of digital currencies (crypto). This would disintermediate payments by potentially eliminating banks, credit card companies, and payment processors. The payer and the payee would transfer funds directly with a transaction on a blockchain, which itself has no controlling entity and is therefore decentralized (assuming we are talking about Bitcoin, not some shitcoin). Financial transactions paid in crypto require no middlemen. Digital transactions have concentrated power into Big Tech because integration with the fiat financial system is expensive and subject to onerous regulation.

Integrating a crypto payment protocol natively into the Web is a game changer. Not only would it begin to decouple commerce from the fiat financial system, it should also begin to alter the relationship that users have with service providers and each other. Fiat payment processors impose an asymmetric relationship between participants: merchant and consumer. Crypto eliminates that asymmetry by enabling anyone to send funds to anyone with an address who can receive them.

Monetizing with ads destroys Social Cohesion

Google and Facebook have thrived on advertising dollars because of the asymmetrical relationship imposed by the fiat payment system. The Social Dilemma is a Netflix documentary that explains how the ad revenue model provides social media companies perverse incentives to design systems that encourage harmful behavior among the user base. Engagement becomes divisive. Information bubbles form. Users become addicted to dopamine hits. All to lure more eye balls and clicks so that advertisers can be charged for more impressions and conversions. Users hate seeing ads, but it is the price they pay to receive free services, as their engagement is monetized. The users become the product that is sold to advertisers.

Monetizing without ads brings Social Cohesion

How does eliminating fiat asymmetry fix this? Users on social media are content creators. Their opinions are an organic source of reviews, endorsements, and complaints. Every day the most compelling content goes viral because the audience is won over and engages enthusiastically.

What if a decentralized social media platform, instead of directing advertising dollars to Big Tech, rewarded users for content creation and promotion?

Users could be paid to post quality content with their compensation being proportional to the positive engagement they receive from others. This could be achieved through tips from the audience and from promotion fees charged for boosting content. The key is rewarding users for positive contributions. This institutes an incentive structure that increases personal fulfillment and social cohesion. This is what we want to enable with Web3.