Urbit Takeoff Is Here
hatryx-lastud.tlon.network
hatryx-lastud.tlon.network
Urbit is not intentionally obfuscated. It's intentionally different from the rest of the modern software stack, because that's the point. It makes sense that that would make it look obfuscated. There are claims out there that it was in fact intentionally obfuscated years ago in its early days as its founder's personal project. Maybe? Not sure. Regardless, things change and this project is over a decade old.
If you find the state of discourse here off-putting, malicious, and obviously ideological, like I do, and would rather see for yourself, I'm happy to onboard you to Urbit personally for free and show you what it's actually about.
Follow our Getting Started guide (https://urbit.org/getting-started), boot a comet for free, and send ~wolref-podlex a DM, and I'll get you a planet.
https://hn.algolia.com/?dateRange=all&page=0&prefix=false&qu...
An especially admirable thing about the way Garrett has approached this mess is that he's managed, as far as I can tell, to reliably avoid taking the bait on the drama about the project's founder; he's just a Smug Lisp Weenie, in the best possible sense of the term, critiquing a language and computing platform.
Well, your link shows that this statement is false:
> ...But Curtis is more than just a bad reinventor of things. He is also Mencius Moldbug, a prolific pseudo-intellectual influencer of the alt-right. His politics worry me much more than his coding style. And because of my personal dealings with him, I am not sanguine about his ability or that of his followers to separate the two.
It clearly colors his thinking, as he admits, to some degree.
Urbit, in my mind, remains an example of Poe’s law. I still can’t quite square that there are people who take it seriously.
I "dove in" and used the software:
- Installed "Port"
- Started a new "comet"
It started an empty something with three tiles "groups, <cant remember what>, bitcoin". Clicking each brought up a new empty window.
- There's no help in software except "you can search apps by developer name". Great.
- Joined "sponsor" (~samozd or somesuch), there's nothing there, you need invites for everything.
At this point I completed my dive and deleted Port.
https://news.ycombinator.com/item?id=11852141
and its parent company was named after a short story by Borges where a fictional encyclopedia starts to affect reality in the world it is released in.
The founder, who left in 2019, is a super-far-right figure. Even though he has distanced himself from the project, I can't help but think about the intentional obfuscation and the choice in naming as perhaps related to trying to build the kind of world he wrote about (authoritarian, non-egalitarian, non-apologetically racist). It makes me not want to associate with it.
When I wrote Firestr (http://firestr.com) back in 2013, which is similar to Urbit in many ways like being P2P and being able to download and share apps, It's clear to anyone who knows me my beliefs drove the technological decisions. For example, I am anti-hierarchy. So your Identity on Firestr is completely decentralized. There is no sub-ownership. There isn't even a central repository of identities. Identities are shared in a peer-to-peer way. Also, it doesn't attach itself to some bigger system like Ethereum and running it is free.
I can easily see Borges's ideas in Urbit and it's a shame as we need more decentralized software.
Regarding the architecture, where does the data live? On the clients?
How are you achieving a multi-writer functionality? Meaning, how can two people edit the same chat data structure?
Data lives on the clients. How multi-writer is handled is up to the app you write but I have built in support for vector clocks. So for example, the built-in app editor uses vector clocks and a merge algorithm.
I thought about adding CRDTs for making syncing data structures easier. Maybe there is someone out there that is motivated...
I think the whole Curtis Yarvin is a Crazy Person stuff is a bit overdone, honestly. Had a couple of drinks with the fellow at the old Urbit place in SOMA ages ago and he seemed fairly normal. He's got these kooky reactionary ideas in his writing, for sure, but he's not this Hitler figure people make him out to be.
Anyway, not for me to defend him, just trying to insert some lived experience. I tried to like Urbit and Hoon and Nock but it wasn't for me. Perhaps for a better man.
If you use the "search" feature at the bottom of the page, with "author:lisper", you'll find what I think are several trenchant critiques of the technical ideas behind Urbit.
In general, I'm pretty good about separating art from artist, but this thread root did launch that explicit discussion so perhaps your comment is better placed near the root than here.
I made a good faith attempt to build on Urbit (still have my ship from then somewhere) and failed so you don't need to convince me.
But fine, I'm not playing defence attorney since I don't even like this Dark Enlightenment crap. If you want to construct shadowy fanged figures and then decide it is inappropriate to question if they're fanged or really all that shadowy, then fine.
All There is to Know About Adolph Eichmann
EYES:……………………………………Medium
HAIR:……………………………………Medium
WEIGHT:………………………………Medium
HEIGHT:………………………………Medium
DISTINGUISHING FEATURES…None
NUMBER OF FINGERS:………..Ten
NUMBER OF TOES………………Ten
INTELLIGENCE…………………….Medium
What did you expect?
Talons?
Oversize incisors?
Green saliva?
Madness?
Is he important/relevant outside of HN fancies in the US?
> The source code and design sketches for the project alluded to some of Yarvin's views, including initially classifying users as "lords," "dukes," and "earls".
(from the wiki page on urbit.)
Okay, but aren't most P2P networks modelled like this? You have client-servers, relays, and super-relays.
The only difference is the amount of buy-in required to run a relay or super-relay. But the amount of buy-in can also be compared to the cost to run an Eth2 node. It's a proof-of-stake network, essentially.
A planet has just one Star that sponsors them in Urbit, but as a planet, you can choose to leave your Star and move to a different Star.
So you can also choose a different relay in Urbit. And yes, your Planet address is spawned by a Star, but you do fully own your address. It is separate in the sense that you can move it elsewhere.
Second, why it's so weird: it aspires to be "done" someday, as in no new features to add, no bugs left, just stable forever (sometimes called Kelvin versioning). It's design makes no sense unless you understand this; the bespoke languages it's written in are designed to be too simple to have any unexpected behaviors (as opposed to being designed for ease of use or performance).
Third, you can't understand it without being aware that the founder got #cancelled for his (unrelated to urbit) right-wing blogging, so most of the responses in this thread will be from people who really dislike that guy and dismiss urbit as a result.
I don’t buy this. Why does “no unexpected behavior” require the amount of obfuscation which they have in Urbit? I’ve been trying to pick it up a few times and I’m constantly struggling to understand how it behaves.
I'm not selling it, just explaining it. More info here: https://urbit.org/blog/toward-a-frozen-operating-system
I think you can, although I admit a lot of the discussion here is likely to focus on Yarvin himself. That is, there is a good argument that Urbit reflects Yarvin's politics in itself and as these politics are, clearly, broadly distasteful it's entirely reasonably that someone opposed to Right Libertarianism and ignorant of Yarvin would find Urbit undesirable on its own merits.
I don't like Yarvin either, but I do want a product that meets this use case. At this point I wish someone would clone urbit, since the hatred for the founder seems to mean it'll never get traction no matter what it does or how it works.
I mean, the left politics of Stallman _very much_ influence how Free Software ends up being used and incorporated. Consider how the GPL encodes the norm of working in common with one another, dragging profit seeking corporations into that as well, or into defending against it. It's like a whole thing.
> At this point I wish someone would clone urbit, since the hatred for the founder seems to mean it'll never get traction no matter what it does or how it works.
Right, what I'm saying is, even cloned, Urbit's going to be a non-starter for a lot of people. Rigidly hierarchical, rent-seeking obscurantism isn't, uh, popular. I _do_ think Kelvin versioning is compelling though. TeX comes to mind there as an excellent example.
What is the current state of the web?
Rigidly hierarchical
All internet governing bodies wield absolute power. Most of the computing experience is completely controlled by a handful of global corporations that are more powerful than many nation states.
You don't control or have any influence over most of this.
Rent seeking
AWS, domain names, social networks? The web is rent-seeking at every level.
Obscurantism
Most of the code we use is worse than obscure, it's literally proprietary.
I would say these qualities are very popular today.
Sure. I think the important difference here is the web has _become_ this way; the things you point out are problems to be solved. Whereas, Urbit encodes these norms as a social good.
in some parts of the world germans still get a negative reaction because of their countries history.
it's unfair, but unfortunately showing that those influences in urbit are gone or were not even there in the first place, is going to be a long and hard battle.
it's similar to the problem blockchain has today. for no fault of the technology on its own, blockchain is tainted by the massive amount of scams in the space.
and as urbit also uses a blockchain too it now actually has two problems.
i appreciate you joining this discussion, but think about what you end up doing here. you spend energy defending the project against arguments that have nothing to do with its technology. energy that you probably would rather spend elsewhere.
but the reality is that you are likely going to have these arguments for the foreseeable future with many that might otherwise join the project.
and if you hide those issues you will be accused of doing that instead.
germany is doing a lot of selfcriticism in order to atone for its history and it's making an effort to welcome immigrants, and yet there are people who don't believe their intentions as well as there are some germans who still reject immigrants.
it is going to take a few more generations for germany to overcome this, as it is going to take a few decades for the blockchain to overcome its reputation as a scam. likewise urbit will require some effort to get rid of this ball and chains.
i do wish you success, and i sincerely hope that these non technical problems won't be an achilles heel that bring the project down
There are some good write-ups on the technical decisions here:
https://urbit.org/blog/precepts https://urbit.org/blog/precepts-discussion
Funnily enough, most of the "mystique" isn't really intentional. It's that the inevitable "muh Curtis" arguments that always show up have discouraged many of the team from bothering to engage in explaining the project (here moreso than anywhere else) and instead focus on building the thing.
Summarization: Urbit is a reaction to Unix-driven software complexity that dominates modern software development. The thesis is that cascading complexity cannot be solved without a complete rewrite of the computing stack, and that goes all the way back to the operating system. Here's an even better summarization: https://twitter.com/pcmonk/status/1201298411011629063
Alternative summarization: the internet, being built on a hodgepodge stack of tooling that wasn't made for people to communicate the way that they actually do now, has major incidental flaws. Urbit is a completely rebuilt computing stack that better maps to what we want to do with networked computers. That involves things like, but not limited to baking a non-fungible, valuable identity into the networking layer.
This is another good summarization, although the sections after "Urbit ID" are out of date: https://urbit.org/understanding-urbit
Beyond that, your comment doesn't say much. Computing and networking as it exists today, you say, is bad. Urbit is a ground-up rethink of all of it. OK, but there are 10th graders with the same idea (just as there were when I was a 10th grader). What makes Urbit worth taking more seriously than those ideas?
The founder divested himself of the project yet the current top comment doesn't want to touch Urbit as if it is cursed by his ghost.
It's these same sorts of comments that drag down all discourse because they prohibit any other state than negative. It's these same comments that pollute any healthy attempt at discourse around crypto here with the Evil Eye that just pushes any one with a different idea to the HN hivemind out.
> What makes Urbit worth taking more seriously than those ideas?
This is explained, in technical and philosophical depth in the links provided you.
In Ron Garrett's words:
> The mere fact that Urbit is still a thing, that it has not yet collapsed under the weight of its own intentionally induced baggage, is worrisome to me. Something is keeping that project alive, and it's not technical merit. I don't see a lot of viable options other than some kind of fanaticism.
Looks like he and his ilk are just wrong and having a hard time believing that. It's alive because an increasing number of people want it to be, and no amount of theorizing can deny the reality of actual growth — which, in case everyone forgot, is what the OP is showing.
But, whatever its technical merits, do you think it can ever get to a point where it reached enough users to be useful (in the "chicken and egg problem" sense that platforms need a critical mass of users to be useful platforms), given the millstone around its neck? Do threads like this (where detailed, technical explanations get downvoted to oblivion, and "I heard Yarvin is racist" is the top comment) make you want to throw in the towel?
If this kind of stuff made anyone want to throw in the towel Urbit wouldn't be a thing anymore. There's only a millstone around its neck on HN, but HN is gradually becoming more and more irrelevant. To our base and the people finding us, "I don't think about you at all" reflects their sentiment for HN conversations and the tenor of conversation that happens here.
I'm just here because someone told me (from within Urbit) that this post went up, it's Friday and I don't have as many meetings, and I couldn't resist myself. You seem fine though, so boot a comet and hit me up on the network if you want a planet or something to keep the conversation going.
Is there some progress there btw? Last I checked there was no way to discover apps other than hard work, and sharing them (installing an app someone else had written) was pretty arduous.
edit: and I know HN isn't the whole world, but I suspect it is representative in this case. I just can't imagine any person learning anything about urbit from any source that doesn't get the 2-3 worst things Yarvin has ever written appended to it within the first hour. It's hard to imagine how it ever gets really popular under those circumstances.
Having a large audience of pre-existing users is nice (and ditto for dev ecosystem for tooling and libraries) but ultimately what makes Urbit a good idea is, as Josh says, that we want computers to primarily be doing one set of things and they were originally designed to do a different set of things (with the things they currently do added as a complicated afterthought). A blockchain protocol is in the end a p2p application. It benefits hugely from running on a natively p2p networked operating system with a built-in cryptographic identity infrastructure. If Urbit's technology works, people are going to build on top of it because they need it, and their customers will come to use what they've built because it works better. If the tech didn't work, it wouldn't matter how many people tried it.
You're correct that there is no "Urbit Store" analogous to the Apple Store or the Android Store (this is a feature not a bug for many users, although I sympathize with both perspectives). I'm not sure what you mean about installing apps being arduous - currently you start typing the developer's name into the homepage search bar, it autocompletes, you are given a list of apps they've published, you click the one you're interested in, installation is a few seconds to a few minutes.
First, you have to know the developer's name, and then find the apps that developer produced. This is literally the opposite of what most people do: search for an app (not for a developer) and install it (or search for an app category, and install an app)
My worry would be that "and I wasn't able to find the name of anyone who develops apps!" is complaint #10 on a list of complaints where ##1-9 mean these kinds of people are never going to use Urbit much anyway. In which case we'd have to put a certain amount of work into vetting all these apps and their updates and real users would still find apps the same way - clicking on links to apps their friends are recommending.
This is people's experience, period, not limited to Urbit.
> most people just follow a link from the developer's web page in practice
Or, rather from widely available lists of "10 best apps for X right now".
How do you expect anyone to find any apps in Urbit if there no sites to speak of and no lists of apps to speak of? Here was my experience trying Urbit out: https://news.ycombinator.com/item?id=31124587
> is complaint #10 on a list of complaints where ##1-9 mean these kinds of people are never going to use Urbit much anyway.
Yes, it's possible number #10 on a list of complaints, but they are not in 1-2-3-...-10 order. It's all of them together.
Put yourself into the shoes of a person starting with Urbit. Download Port. And then tell me what exactly the new user is to do? Suddenly "it's not a huge part of people's experience on Urbit" becomes "the biggest part and the biggest part #1" because there's literally nothing there.
|install ~dister-norsyr-torryn %canvas
edit: yes, there's an ecosystem of developers shipping software now. Here's a screenshot of my homescreen, which I cleaned up a couple of days ago to remove some apps I don't use often: https://imgur.com/7keFr7Y
Of the apps you can see, 13 were created by distinct developers. Some people are more prolific.
I keep reading explanations about Urbit along these lines but what's perplexing about this explanation is Urbit does nothing to achieve this goal. Regardless of the fact that Urbit is referred to as an operation system it still isn't one. It relies on a conventional OS, often UNIX family OS's like Linux to run. Urbit just layers a new even more complicated software and networking stack on top of the 'Unix-driven software complexity' that still underpins Urbit. Urbit does nothing to address these problems, it just makes them worse. Urbit's underlying software stack (Nock, Hoon, etc.) is just bizarre and non-nonsensical. For example, this gem from the docs:
"A loobean is a Nock boolean - Nock, for mysterious reasons, uses 0 as true (always say "yes") and 1 as false (always say "no")."
Wat? Why?!? And it doesn't end there. Urbit is littered with these WTF design choices and terminology. No one in their right mind is going to build professional software solutions on a platform like this. You might as well just be developing software in something like Brainfuck.
Urbit has almost zero privacy features and it never claimed to have any.
> The original founder is a neoreactionary authoriarian, and the system is designed with his ideal vision of the future in mind.
Every P2P network that I have seen has a hierarchical topology. At the very least there are clients and relay servers (2 tiers). If you can make a completely 1-tier, anarchy p2p topology, you should go for it and show that Urbit is way off-base here.
It is there that people work YouTube’s land in exchange for advertising crumbs.
It’s on Facebook where you trade away your privacy for the ability to talk with your own friends and have all of your work pulled down at any moment.
It’s on Twitter where you are hustle to build up twitter’s value and get tossed out for saying the wrong things without any rights.
This shit keeps popping up here. The last time I went down that rabbit-hole, on one sub path I was finally led to some websites where some kind of names/handles were being sold for the normal USD (not some make believe money). Now there could have been free ways to explore it but, iirc, it felt either inadequate or temporary.
I wasn’t technically interested in it from a tinker’s perspective but from an end user’s perspective. So that way it was anyway making less and less sense.
What it actually seemed to me, and I maybe completely wrong, it’s kind of thing like people selling land on moon, or an imaginary moon and apparently there enough number of people who like that kind of thing.
As I understand it, the idea is that it combines 3 things: an OS, a p2p network, and an identity.
All three work in service towards the single goal of: providing a means through which people can take control and ownership of their digital life. Not control in the sense of “I’m no longer addicted to Facebook” but control in the sense of “I talk with the people I want in the means that I want without needing to worry about the corporation who’s software I’m using cutting me off on a whim.”
The OS is there since what is currently available is deemed too complex, and will only ever get more complex. So regular people won’t ever run their own servers.
The p2p network is there to allow people to talk and work together without needing to go through another company.
The identity is there to tie everything you do across different parts of the network together under a single. They’re sold as NFTs with a finite supply as their counter measure to Sybil attacks.
If that sounds like either "bad idea" or "scam", or both, well, I think that's probably an accurate assessment.
Security, spam, maintenance, up-time, software complexity, identity, network governance, etc.
The system is now reasonably complete and achieves this goal in theory—all of these problems magically disappear. In order to truly succeed, they will next need to make it performant (it is very slow) and truly secure.
Urbit is a better realization of "web3". It allows individuals to completely control their computing experience and makes it possible to build a web with rich social experiences, but that feels more like owning a car than like working at a multi-national corporation.
People often wonder whether Urbit is an embodiment of Curtis' "radical right-wing" ideas. This is sort-of true. The structure built into Urbit's identity systems are designed to support a certain network governance scheme, which looks a bit like a republic. It allows for relative autonomy of groups and individuals and supports collective decision making at different scales. It's not direct democracy, like some web3 projects aim for, but it strikes a balance between that and the way network governance works on the current web, which is a partly-corporate network of oligarchies. It's also, crucially, not a dogmatic design. There are some cryptographic decisions that suggest certain governance structures, but there's nothing stopping anyone from governing pieces of the network however they like.
On the current web, large corporations like Google and Mozilla coordinate with de facto absolute powers like ICAAN, IETF, W3C, etc. to manage the highest layer, while corporations like Google, Facebook, Apple, and Microsoft entirely dictate the applications layer for the most part. There are of course exceptions, such as this website, but they are responsible for less and less of the average user's experience. The barrier to entry to compete with established players is very high, or in the case of governing bodies, impossible.
Since Urbit allows for secure communications, it shares the same implicit politics as other products of the cypherpunk ideology. Same as the ideology of the EFF, Signal or any web3 project, Urbit can be seen to support uncensorable communication and coordination between people. This is a double-edged sword. It supports "free speech," makes political oppression infeasible, and hinders certain forms of lawn enforcement. This can advance the agendas of both the left and the right.
So, fundamentally, this type of project takes aim at some of the points of control wielded by the nation state. It creates better conditions for individual sovereignty vs state sovereignty. This supports Curtis' vision, which is mainly about replacing the bureaucratic administration state with more functional and decentralized governance. It also supports other political agenda like libertarianism and anarcho-syndicalism.
In my experience, people who work and live on Urbit are all over the political spectrum. It's an environment of tolerance.
People often criticize Urbit over its overly poetic and, arguably, obfuscated programming languages (which are designed entirely from scratch). The system is built from abstractions that are similar to, but often meaningfully different from the structures found in other languages. Instead of naming them according to their closest relatives, they are named de novo. This was done out of two motivations as far as I can tell: (1) the system was designed via a thought experiment about what kind of system could last for 10,000 years. From this perspective, today's fashions are unimportant. Will an array be an "array" in 1,000 years? (2) We can limit our creativity by using familiar words, which encourage thinking in tropes. Urbit's naming forces you to re-learn and this reconsider every part of the system.
I have seen many people learn Hoon. I don't believe it's any harder than learning C++, but it is a frustrating experience for someone who has learned C++ and needs to go through the hard parts of that experience again (memorization). This is a limitation and possibly an advantage of the system.
Ultimately, one should understand Urbit as a very long-term project to build an operating system and network architecture to last 1,000 years. It's not easy to learn and it's not designed to work tomorrow, but it's surprisingly functional already and I find that pretty exciting.
And yet, from an article from just a year ago [1]: "Nothing in Urbit is encrypted at rest. No, seriously, all the chat logs, events, everything… is dumped into a journal on disk7 in cleartext form. In other words, when hosting urbit at any 3rd party, you better be the only one with access to the underlying OS (and have it fully encrypted), lest you want your entire history worth of data readable by the company running the instance for you. Or anyone with access to the system."
And: " if you want to stay up to date, you need to configure OTA. So you will be receiving updates to your Urbit instance from one of your neighbors. Sounds great, since this is 2021, and surely the updates are signed. Well, no. They are not."
consider that the growth is coming after the cost for creating a new planet has been drastically lowered. so this growth it is not necessarily a sign of a general rise in popularity but more likely it means that now those people who already wanted a planet but did not want to spend the high cost used the opportunity to get one.
i expect that after the initial excitement about the lower cost growth will go back to previous rates, or perhaps a bit more.
It was a neat idea 10 years ago or whatever.
Apparently it is intentionally obscure and confusing.
Urbit OS uses Urbit ID primarily for packet routing and peer discovery. If you already know the IP of whoever it is you want to talk to, packets are direct. If you don't know the IP, you ask their sponsors. In NAT'd situations, sponsors end up routing the packets as well, but this is a limitation of IPv4 rather than Urbit.
It is a simple mathematical fact that hierarchical peer discovery and routing is faster than a purely flat network topology. UX is king for adoption, and an "alternative internet" that is slower than the existing one would never gain mass adoption.
So if you care about actual adoption, you're pretty much forced into using hierarchical routing and peer discovery. At least initially.
Ultimately, your ship has final say over what you think the PKI looks like. You download the state of the PKI from the blockchain, but you have final say over how you interpret it. The default software run on every node, from comet to galaxy, is identical. It is probably quite easy to change a few lines of code and use whoever you want for peer discovery and packet routing. Treat a planet as a galaxy if you want. In that sense, galaxies and stars are just default suggested infrastructure nodes, and are in theory totally optional.
There's nothing preventing anyone from building a completely alternate routing infrastructure using Urbit OS that is entirely detached from Urbit ID. As long as the message protocols remain sufficiently similar, such networks could also communicate with one another. The PKI can trivially be forked, the rules completely changed, and you can set up your own network. You can also build virtual networks atop the existing one. If you want a flat network topology at the expense of latency, you could e.g. use some form of DHT routing.
Thus far, the network is too small for anybody to bother building such a thing. But it is easy to imagine many networks, with their own home-grown routing protocols, and their own ID systems, in a future where P2P computing of the sort exemplified by Urbit takes off.
Thus, I see the hierarchical peer discovery and routing mechanism as a almost-necessary bootstrap and growth hack for adoption, but it is in fact voluntary to participate in, and the field is open for many alternatives to emerge in the future.
What is Urbit?
Urbit is a virtual machine OS for server-side applications. If you imagine a future in which it is common for non-technical people to rent cloud server space on which to host server-side applications (say, a small blog, a mastodon node, a minecraft server, etc), Urbit aspires to be a good platform on which to host them.
Urbit features:
1. All input events (http request to an urbit-based api, signed message from another urbit, keystroke from console, etc) are transactions which change the OS state (or don't, if they fail). As a result, it should be impossible for a transaction to fail halfway through and leave the urbit instance hosed.
2. Exactly-once messaging between nodes. This is possible because nodes have persistent connections; disconnection is indistinguishable from long latency. This may sound minor, but it is a huge part of what makes urbit novel and (theoretically) stable and secure.
3. Built-in identity and auth. An urbit instance can't boot without an identity, which serves as username, network-routing address, and also as the public key with which all outgoing messages are encrypted. In practical terms, this means no urbit app or service needs to deal with logins or passwords or crypto.
4. There are only 2^32 first-class identities, which makes urbit a de facto reputation network. This is to minimize malicious behavior; if an identity costs $5, and you can only make $2 from spamming before that identity is blacklisted, no one will spam.
5. The urbit network is hierachically federated, and hence resistant to censorship. (Of course, this is a misfeature if you want to be able to censor people off of the networks you participate in)
6. It's not there yet, but the urbit kernel aspires to be so small and simple and formally-provably-correct that at some point it's done. As in, done done - no features to add, no bugs to fix, done. A lot of the design decisions (some of which are wildly unperformant) make no sense unless you take this goal in to account. More on that here: https://urbit.org/blog/toward-a-frozen-operating-system
Main Criticisms:
1. The founder has objectionable politics/beliefs. For its first decade, urbit was the solo project of one Curtis Yarvin, who moonlighted as an alt-right-ish blogger, and flamed out of polite society as a result. I've read a tiny bit, it was pretty dumb. The tl;dr is that he wants to get rid of democracy and bring back feudal monarchies. He also said some pretty racist stuff from time to time and that's the main reason everyone hates him. He left the project several years ago, which accomplished absolutely nothing in terms of anyone hating it any less.
2. The language is very strange and possibly bad. By "language", I mean both the programming language (hoon, the native language you write urbit apps in) and urbit's terms for core concepts, almost all of which have new, made-up names. More info here: https://hooniversity.org/urbit-and-hoon-glossary/
3. A lot of people think it's a shitcoin of some kind. AFAICT this is objectively not true. There's no way anyone will make any amount of money speculating on urbit unless it works in the sense that it's a good OS that millions of people want to use. Besides, if it were some kind of scam, it would've fallen apart when the founder left under a black cloud. That didn't happen; it is still chugging along. There are competent programmers who understand it and have worked on it for a year or two and still think it's genuinely good technology and continue to work on it for that reason.
This is not true. Urbit is essentially a proof-of-stake network where the Galaxies and Stars have the authority to ban anyone off the network that they want.
After Planets are already routed to some of their friends, they can keep those connections, but if a Planet is refused service by Stars, it will be limited in reach and capabilities.
The whole point is that there is accountability in the system and there does need to be a kind of Byzantine (literally it is set up like an empire) consensus.
If you're banned by one Star, you can still be served by another Star, but it does affect the reputation (not hard-coded, but actual) of the Star that serves unsavory Planets.
It's not far off from the Fediverse in this regard.
On Urbit there are 65k tracker nodes and ~4B permanent peer nodes. So long as a single 1 out of those 65k is willing to sponsor you and broadcast your location anyone can find you and get packets from you, and even if the last 1 gets sick of you he's still just the equivalent of a torrent tracker: anyone who is already your peer will continue to see you on the network. It doesn't matter how many enemies you have or which corporations you piss off, you know? You're your own platform, once you install the software to share tweets or photos or interviews or whatever there is no one left between you and your audience to play gatekeeper.
On Urbit you have ~65,000 potential star sponsors and can switch at any time. (Worth noting: after a year and a half on the network, I have not heard of anyone being refused service by any star.)
That's a clear difference from today's internet, where effectively all discourse gets siphoned off, by a series of vicious megacorporation incentives -- the need to lock you in, the need to serve you up manipulative advertising -- onto the servers of one of four FAANG companies. (I think we can safely remove the N at this point, but then the acronym ends up looking rather seemly.)
> An urbit instance can't boot without an identity
Does this mean that urbit requires an always-on connection at all times?
> this means no urbit app or service needs to deal with logins or passwords or crypto.
This also means that all apps have full access to all your money, private info, bank accounts etc.?
> This also means that all apps have full access to all your money, private info, bank accounts etc.?
If you wanted to write or install an app that had access to a hot wallet stored on your Urbit ship, for example, you could. It doesn't have access to secrets you haven't intentionally stored on your Urbit. When you say "all apps have full access" - what do you mean? For example you could write an app that is both a display case for POAPs and also spies on your private messages, but the actual app that is a display case for POAPs is written to have no way to access your messages: is this the question you were asking?
I mean this: "this means no urbit app or service needs to deal with logins or passwords or crypto.". If apps don't need to deal with that, they have access to your info, doesn't it?
As far as the apps having access to cryptographic secrets you store elsewhere on your Urbit ship: the apps are all installed and running on your ship, so just like other software running on a computer you control they can have access to other local data if you intentionally give them permissions, or they can have no access, or they can have access conditional on some additional safeguard. It depends how you write the app. But an app always knows the Urbit identity of the ship it is installed and running on, and that is baked into messages the app sends to other ships.
You also have the ability to spin up 4 billion virtual identities ("moons") per primary identity ("planet"), and it is a standard use case to run an app/service you don't want to interact with the rest of your ship on one of your moons. The main value currently is, if you host a high-traffic groups or distribute a popular app, these would make your primary ship run slow so you stick them on a moon. But the reason Urbit was designed to associate each identity with 4B virtual identities was so that your IoT devices can communicate with the network without having access to your personal computer.
So, it has all the access necessary to go ahead and steal my money, right? Because, quote, "network identity and keys are already baked into all your interactions with the network"
That has nothing to do with the thing you quoted ("network identity and keys are already baked into all your interactions with the network"), which describes how urbit nodes talk to each other. Whatever identity you run an app under, all traffic from that app will be cryptographically signed by that identity.
You're dancing around the issue.
So:
1. By default all apps have access to everything.
2. In order for apps to not have access to everything, you have to set up a different identity which is magically different from having to set up different identities now because it has cute names like "spin a moon away from your ship"?
3. The burden is still placed on the user: to set up and manage all these different identities and subidentities to just make sure that a chat app doesn't have the ability to steal all my money
3.1 And when in the current systems the burden is to keep track of logins and passwords, in Urbit it's the burden of understanding all the technical mumbo jumbo and going the trouble of spinning new servers (which I assume are not free) just to run a banking app.
I'm not arguing with you, just trying to answer your questions. If you want to make really damning accusations about how awful urbit is, it will help to learn more about how it works :)
Why isn't flat federation even more censorship-resistant? I don't understand the benefit of hierarchy.
Having been around the network for a few years now, and having talked up Urbit to countless people of countless different professions, political beliefs, ages, etc, I can confidently say: This isn't true.
It's just that a specific sort of Hacker News/Reddit gets agitated and makes a lot of noise on this subject whenever Urbit gets brought up.
Normal people who just want their digital lives improved aren't interested in these cringe 2010s-era blogosphere political beefs.
similar feeling here. except i am also concerned about the connection to blockchains.
my thoughts on that are here: https://news.ycombinator.com/item?id=31130695
There'd also be a cap on how much your account could hold to basically bar billionaires and oligarchs from controlling the system. Maybe something like x amount times the average users' monthly income(transactions received).
Starting out it'd aim for like 500 million being a cap, and try to aim to keep some sort of stable price as well. Business accounts wouldn't have the caps because I mean a huge company like walmart has tons of money come in for payroll, etc.. and just there'd be no way to really handle that, and you want businesses to accept the currency as utilization is everything.
I think possibly having a dedicated exchange built in as well that basically floods the market with new dollars if stability starts to fade. Say the price of a coin is $10 usd, it would autotax the top 50% of earners and redistribute that to the bottom 50%, or something similar or mint new currency and distribute from that -- essentially to encourage prices to remain stable.
Now combine that w/ all the other features of something like urbit os, and I think you've got something.
TLDR: Imagine if as a US citizen you were born with an id and a bank account tied to that id. It's the only bank account you can have, it's the only bank. Now imagine there's a cap to that account and every billionaire ceases to exist because they'd be taxed at 100% until they're max holdings are 500 million. You can't hide money, or get separate accounts, etc... There are no loopholes as it's all by smart contract.
It's described here:
https://18108973658826589741.googlegroups.com/attach/31d6ad2...
It appears to use Ethereum L1 solely for data availability and sorting, while the computation that ensures validity is performed inside Urbit instances. I haven't thought through the security implications of this yet.
I believe the implication is that you need to run a full Naive Rollup node, that validates all Urbit transactions, in order to ensure the validity of any given transaction.