on 4e7ea70 help sign in
urbit.org/main/posts/vision.md
199 lines 9.4 kB history raw
1---
2sort: 4
3type: post
4title: What is Urbit for?
5author: Galen Wolfe-Pauly
6image: http://urbit.s3.amazonaws.com/16-3-10/blog-1.jpg
7preview: We didn't build Urbit just because it's fun to work on. We built Urbit because we think it can unlock new potential products. Here we take a tour through some of these possibilities.
8layout: urbit,post
9navmode: navbar
10navdpad: false
11navselect: posts
12navpath: /
13navhome: /
14navclass: urbit
15---
17Open platforms don’t beat closed systems just because they’re open.
18They win because you can do more exciting things with them. We
19believe we’re overdue for new infrastructure not purely on principle:
20but because we think you can build better products on top. Urbit will
21always be a platform for others to invent on top of. We hope to drive
22much of that momentum ourselves.
24We look forward to a future where your fleet of Urbits run throughout
25your house, keep your biometric data in sync with the data center and
26keep your medical and financial data secure. Today Urbit is just a
27proof of concept — but we see a road from here to there.
29## Today
31These are things that work but are under development today. We expect
32them to improve and stabilize in the coming months.
34### Making the web programmable
36The first thing your Urbit can do is act as a transparent layer to
37your existing services. We’d like urbit to be usable as a self-hosted
38IFTTT for geeks. Your urbit can hold your keys, store data, run
39programs and seamlessly connect to your existing services. Plus, with
40a global revision controlled filesystem it’s easy to share API
41connectors and keep them up to date.
43With an Urbit running on your machine you can `ls` your Gmail from
44Unix. Write a short script to poll Twitter on a keyword and deliver
45the results to your email or into a Slack channel. Send an SMS when
46an HTTP request doesn’t resolve. These are just a few examples. Your
47Urbit is designed to make data trapped in your existing services feel
48like an extension of your local programming environment.
50### Self-hosted publishing and communication
52Additionally your Urbit is a flexible platform for publishing data to
53the web and communicating with others. Sort of like a self-hosted
54Slack, WordPress and Wiki in one. It’s more common to use many tools
55for sharing our content and communicating. Urbit is designed to bring
56those tools together; giving the individual control over their
57creative output.
59Simply write markdown in your favorite editor and have an Urbit sync
60them to the cloud. Use React components to control your layout and
61extend our toolset. Host your own discussion channels and comment
62threads. On a computer you own and control, whose source is 100%
63open.
65### Cryptographic identity
67Your Urbit is your digital identity, cryptographically secured but not
68controlled by any central authority. The Urbit PKI fills a gap that
69remains unsolved on the web. We can send encrypted messages, securely
70exchange digital currency, but how do I know who anyone is?
72Your Urbit can post public proof to your third party services and its
73validity is easily auditable. Using Urbit as an identity scheme for
74new services would be a great decentralized alternative to ‘Sign in
75with [company x]’.
77## Tomorrow
79Urbit’s crypto isn’t tested, the network still gets rebooted from time
80to time. The next milestone comes when Urbit matures to the point
81that it’s as reliable as its SaaS counterparts.
83### Lifestreams, finally
85The combination of great API tools and great publishing tools means we
86can finally build an integrated interface for today’s social networks.
87The web is full of streams of data. For the user there’s not much
88utility in bouncing from service to service. Instead, it’d be great
89to have general-purpose tools for consuming and publishing data.
90Imagine a Medium-quality interface that makes no distinction between
91Facebook and Twitter; SMS and Skype.
93### Secret storage, web3
95Bitcoin and Ethereum are both part of a new era of decentralized
96infrastructure that’s just beginning. For the blockchain to realize
97its potential individuals need ought to have a way to host their own
98nodes. At the very least, individuals need a reliable place to keep
99their secrets. What’s more, the blockchain isn’t designed for
100computation. It’s great for contracts and currency, but too slow for
101practical computing.
103Urbit is a great compliment to the blockchain. Your Urbit can safely
104store your keys, providing an always-available keychain on the
105network. Even better, your Urbit can hold your blockchain assets and
106provide an off-chain computation layer. Urbit’s computation doesn’t
107provide any kind of distributed consensus, but our computation model
108is very simple and lends itself well to auditing. This makes it a
109very blockchain-friendly platform.
111(Could add something about IPFS here)
113## Over the horizon
115If there’s one thing we know from the history of personal computers
116it’s that computers are always expanding into more and more of our
117lives. The more *personal* our computers get the more they need to
118reflect our thinking and our relationships. We don’t know exactly
119what this will look like, but we can certainly speculate on the areas
120that deserve the most attention.
122### Data permanence and software competition
124Right now applications and data are practically the same thing.
125There’s no practical way for the user to separate them. Apps come and
126go, either by falling out of fashion or actually shutting down. In
127both cases our data becomes orphaned. There’s no practical way for us
128to get it back. The raw data from your LiveJournal is as good as a
129floppy disk from the 80s. Computers hold the records of our lives.
130Losing the history of the world to bitrot is a preventable problem.
132Since each person owns their own Urbit there’s no way to separate the
133user from their data. When you run software on your Urbit you
134*actually run it* and your programs manipulate data that *you own*.
135The individual has permanent access to their data by design. Ensuring
136its durability is a technical problem, not a license agreement
137problem.
139When individuals are running their own software it’s no longer
140possible to lock them in by controlling their data. Instead, software
141has to actually compete on utility. If one could trivially replace
142the interface for Evernote with one from another developer for $10
143wouldn’t it be worth it? Even more so with Urbit, since after
144installing software you’re not dependent on the developer staying
145alive. You’re running a local copy. This model puts pressure on
146applications to interoperate better and become more modular.
148### Reputation
150With a working identity system it’s possible to build up contextual
151reputation systems that aren’t held hostage by their applications.
152Just like the marriage of applications and data, reputation is
153permanently tethered to and jealously guarded by the services we use.
155For example, today we have karma systems on a per-site basis, like
156Reddit. Is there any reason that individuals shouldn’t have karma
157scores per-topic? An individual’s authority on a certain topic could
158be verified by other experts while still denied by detractors. It’s
159easy to extend this to services like Yelp. With a strong identity
160system it’s possible for pseudonymous reviews to be counted with real
161value. We’d no longer need a central authority for deciding on the
162reputation of a restaurant, but just a way to pseudonymously aggregate
163individual opinions. There’s a broad swath of territory ripe for
164exploration here.
166### Privacy
168With a reliably secure place to store your data on the network,
169wouldn’t you want to store even more personal information yourself?
170Why is it that we don’t store our own medical records, biometric data
171or financial data? In a world where we have a safe place to keep them
172we wouldn’t require anyone else to keep them for us.
174Furthermore, we’d be able to share them pseudonymously. One could
175imagine medical research or census-like polling being done without
176compromising the privacy of those involved. This also lowers the
177barrier to entry for fintech and medical software developers. If I
178can run my own personal health and finance software that can reliably
179access my own transactions and medical records, what would developers
180come up with?
182### IoT
184What needs a network *and* computation? Devices. Turning a unix box
185into a usable platform for hardware isn’t something that any
186individual manufacturer is incentivized to do. For the internet of
187things to actually work we need a platform for devices to interoperate
188simply and securely. Urbit is up to the task. Your Urbit isn’t just
189a single instance, it can sign the keys for a whole network of Urbits
190intended to be used for your devices, sensors, appliances, machines,
191robots, VR helmet, etc.
193The future of the individual’s computing experience may very likely be
194among many different devices. Bret Victor’s ‘Seeing Spaces’ is a
195great exploration of what this future may look like. For the
196industrial enterprise there’s a whole other set of parallel problems:
197tracking inventory, controlling a vast array of machines, and managing
198logistics. In both cases we need a decentralized network and
199computing platform. Urbit is up to the task.