Start by sketching out the frontend and backend as normal. Then replace a few key backend calls with reads and writes to a decentralized database, namely a blockchain. balajis.com/yes-you-may-ne…
In other words, you don't need to throw out everything you know about web or mobile development. And you can often still use a standard DB as the data store for much/most of your app.
But for certain key functions, like sending/receiving funds, that's an on-chain operation.
Anyone who's built anything over the last decade is familiar with the concept of using multiple databases. At a minimum, you have your main Postgres plus a data warehouse or the like for analytics.
Just like data warehouses have a different use case from the main relational database underpinning your app, blockchains have yet a different use case still.
The fundamental difference is that blockchains are *massively multiclient databases*. balajis.com/yes-you-may-ne…
Your company is typically the only root user for your relational DB. The only one that can read & write to every row in every table.
Not so for blockchains. They trade off speed to massively scale root access. Every blockchain user is a root user. balajis.com/yes-you-may-ne…
Back in the day, many pointed out how web apps were worse than their desktop equivalents on key features (like latency, graphics).
This is similar to thinking of blockchains as "slow databases". Yes, they have fewer transactions per second. But far more simultaneous root users.
• • •
Missing some Tweet in this thread? You can try to
force a refresh
That's the consequence of software eating the world. Everything becomes analogous to a PDF, a set of digital instructions that you can get a printer (or a robot) to print out in the real world.
Amazon Prime, drop shipping, food delivery, ride-sharing...all of them involve a digital frontend and a human backend.
But over time more pieces are getting automated. Robot manufacturing, autonomous trucks, drone delivery, self-driving cars. So the backend goes digital too.
AI (in general) and virtual influencers (specifically) are obvious examples of this trend, where the manual backend is no longer as necessary. As is crypto, where much of the labor in the financial system is being automated with smart contracts and digital signatures.
Think about the reproducibility problem in software first. This is much easier than (say) biological science because it is usually cheap and fast to independently check whether software works on any given computer. It’s still not easy to make code work reliably everywhere.
Focus on abolishing old regulations over subsidies or tax breaks. Here's why:
- legalizing something new is a true 0-to-1 step
- it gives instant global advantage vs other jurisdictions
- it's free & costs the jurisdiction nothing
Legalize innovation and the talent will follow.
It's hard to specifically attract the *digital* part of Silicon Valley, because it can be funded from anywhere and scaled online.
Instead, unlock innovation in the *physical* world by creating special innovation zones for particular technologies like self-driving cars.