Live data from Hacker News

Bootstrapping Urbit from Ethereum

urbit.org

41–50 of 172 posts

Re: Bootstrapping Urbit from Ethereum

#41
post #28

Every time I read something about Urbit I am reminded of the Lewis Padgett short sci-fi story, "Mimsy Were The Borogroves" [0], [1] describing children discovering alien future toys, and subsequently via use of those toys learning to manipulate reality in incomprehensible ways. I still have not been able to figure out if there's actually something that amazing about Urbit, or if behind the obfuscated terminology ther…

I'm one of those people that get it, so I'll try to explain it without going off the deep end and waxing poetically about planets or whatever. Urbit is a platform for building decentralized apps. To that end, it's a tightly integrated set of different features that play into that: an identity system so that all the apps can refer to the same people by the same handle, a typed RPC network for easy message sending, and…

This is a good, well-written explanation of the most reasonable, mainstream aspects of Urbit, leaving the impression that it's essentially like a P2P version of AWS Lambda.

But of course, that's not all it is.

It's also a ground-up reinvention of mainstream functional programming languages like Lisp, built on the foundation of an abstract virtual machine in which the "decrement" operation can be performed natively only by incrementing a number until it's 1 less than the current number. All of these concepts have their own weird names; for instance, the constant-time version of "decrement" (this is a programming environment that goes out of its way to achieve constant-time decrement†) is an example of a "jet", where a jet is apparently a non-native implementation of an algorithm that can be expressed but not efficiently on the VM that they've chosen to build their entire system on and it just gets weirder and weirder from there.

You don't have to memorize the new names they've come up with for most of the ASCII punctuation characters, like "gal", "gar", and "hax" for "", and "#", "but it helps". A normal engineer's reaction to a system that tells it that it will help to remember a new name for the pound sign is to ask "Why? What fresh horror lurks in the deeper meaning of your new name for the percent sign? And why won't you tell me before I commit to this system?"

Stuff like that would be bad enough, but the founders ideological views are also infused into the system, and those views are not mainstream distributed systems engineering views. For instance: the most available first-class address in the system is in a 32 bit address space. Why? Not for efficiency, but because the authors believe there aren't and never will be 4 billion human beings on the planet worthy of having a first-class address in their system. This, by the way, is their actual response to the objection of an overlay network with 32 bit addressing.

I agree that the best way to explain this system while encouraging people to engage with it is to distill it down to anodyne concepts and then sprinkle "decentralization" on top. But of course, this system isn't really that. From the proteins of its cell membranes to the DNA in its nucleus, this is a system that coercively projects the idiosyncrasies of its founders into everything it comes in contact with. It's decentralized and free in the sort of way its founders would explain with a 3000 word paper that invented 50 new terms in its abstract.

People confused about Urbit are probably not confused about the value of serverless computing or of overlay networks. Those are pretty straightforward concepts we can all get our heads around. There is something deeper that is challenging about Urbit.

Rather than, you know, just deciding to have it.

Re: Bootstrapping Urbit from Ethereum

#42
post #31
post #25

Earlier quoted context omitted.

That's... a baffling claim. Urbit is well documented, in easy-to-understand terminology, from low level, to high level: https://urbit.org/docs/ https://urbit.org/docs/nock/definition/ https://urbit.org/docs/hoon/concepts/ The code is open source, under MIT license: https://github.com/urbit/urbit Heck, urbit even shows up to Hacker News semi-regularly: https://news.ycombinator.com/threads?id=urbit What backs your clai…

My main claim was that Urbit isn't revolutionary. It is really just a Unix server and programming language. However, in an attempt to seem more sophisticated they invented new words so that nobody could figure out what it was. Urbit is purposely obtuse in their terminology, when they really could just use words that programmers already know and use. Here's some examples from the documentation you linked: "A value in…

> "A value in Hoon is called a noun" - or you could just call it a value.

A "value" sounds like an abstract concept. A noun is one of two things: a natural number or a pair of nouns. Calling it a "value" makes it sound much more abstract than it is.

> "A core has no exact equivalent in conventional languages, but the closest equivalent is an object. An object has methods; a core has functionally computed attributes (arms). An arm that produces a gate is the Hoon equivalent of a conventional method;" - or you could just say that objects in Hoon (the language) can have methods and attributes, and you would never need to invent the core/arm/gate terminology.

A core is not an object in any meaningful sense. You can create stuff that looks like objects with them, but they're used for a lot more than that. For example, all gates/functions are cores, but there's no sense in which you'd call those "objects".

> They try to give themselves an out by saying stuff like "Hoon has concepts like all these abstractions, but they remain false cognates." When you dig into it, the only unique things are the words. It's like children trying to come up with a code- "instead of door we'll say blorp and instead of close we'll say bleep. Now bleep the blorp before we continue inventing our code.

The thing about revolutionary concepts is that their underlying principles are different than what you're used to, so if they look similar on the surface, you're lulled into thinking they're basically the same. But anyone who's put significant effort into programming in Urbit will tell you the system is fundamentally different. Not in the sense of "you could never understand what's going on here"; but rather, "we made these few different design decisions in the beginning, and that permeates everything".

Re: Bootstrapping Urbit from Ethereum

#43
post #35
post #31

Earlier quoted context omitted.

My main claim was that Urbit isn't revolutionary. It is really just a Unix server and programming language. However, in an attempt to seem more sophisticated they invented new words so that nobody could figure out what it was. Urbit is purposely obtuse in their terminology, when they really could just use words that programmers already know and use. Here's some examples from the documentation you linked: "A value in…

"It is really just a Unix server and programming language." You should read https://urbit.org/posts/overview/ The whole reason Urbit exists is that Unix + the internet is broken and needs a complete overhaul Re: the different names, there are slight differences between gates and functions, but I agree they're not important enough to merit the change in name. But hey, it takes a purist to spend 15 years rewriting the…

Yep. Unix and Linux are broken.

So instead, I should load up Urbit, locate on a planet, spin up a garglemitz on the spitzenspeil with the hoon japing over the nock.

If you add Xenu, Body Thetans, e-meters, I think you might be on to something!

--------------------

No seriously. There are wrong things with the monolothic kernel as well as microkernels. Theyre design tradeoffs. But none of the existing, well established methods throw away the language of computing of the last 60 years. Some tech stacks may add a new type, but they are able to describe why a new classification is needed, and how it fits iin the existing model.

What Urbit is doing, is polluting the namespace by turning existing nomenclature into some sort of technofreakish cult. Up is now down. Down is now blarbbliboop. And anyone questioning the "Master" is berated and denigrated by means of 'lack of intelligence'. You all should be defending your way and means.

Because in my eyes, you all are wrong until you can start integrating standard and normal nomenclature - because it's hiding something unsavory.

Re: Bootstrapping Urbit from Ethereum

#44
post #26

Earlier quoted context omitted.

Others, including myself, have noticed this too and it reminds us of something else a little closer to home: namely, what happens to Scientologists and the like after they've been in the cult a while. Even the Scientologists who later leave still think in terms of engrams and body thetans. I think Curtis Yarvin is a master huckster and wordsmith, but near as I can tell what's good about Urbit isn't original and what'…

>>finally he plays the same semantic shellgame with his words he plays with his political essays, to convince you that the horrible political views he has aren't so horrible. I suggest you leave your ideological biases out of your assessment of Urbit the technology. We all have our political beliefs - mine are hard libertarian, yours are hard feminist/leftist - but hopefully we can put those aside when assessing tech…

It's interesting that you want them left out and then, as an aside, bring the parent's into it.

Re: Bootstrapping Urbit from Ethereum

#45
post #37
post #28

Earlier quoted context omitted.

I'm one of those people that get it, so I'll try to explain it without going off the deep end and waxing poetically about planets or whatever. Urbit is a platform for building decentralized apps. To that end, it's a tightly integrated set of different features that play into that: an identity system so that all the apps can refer to the same people by the same handle, a typed RPC network for easy message sending, and…

Right now you can build decentralized apps like Mastodon, except they 1) take hours to setup a node, along with having to know arcane Linuz sysadmining 2) aren't actually decentralized, but federated. Urbit wants to make it easy to setup your own server, which runs as a node for all these decentralized apps (instant messaging, Twitter, etc.), along with be useful for server-y things like aggregate APIs (email, Facebo…

Marketting spiel incoming. You use Reddit to share link, Twitter to keep up with people, and IRC for real time chat. In all of those cases you are trusting a third party corporation that they aren't keeping you data forever and they won't arbitrarily ban you. You can switch to alternatives like Mastodon or, like, voat but it's really the same problem: now you're just trusting a different server, and being banned still means you lose all your content and new players on the block have to bootstrap up an entire new corpus of content and userbase.

Instead, you could use an Urbit app that does Reddit-ish things, and when a developer makes a Twitter alternative the userbase already exists. Because each user hosts their own content, developers don't have to host servers, and migrating to another Reddit-like app is really just switching to a different UI frontend. Whats more, since it's /your server/, you can integrate with existing 3rd parties: mirror all your posts to actual-Twitter or use Urbit as a client, and gradually migrate over to the decentralized platform without having to overcome market effects.

Re: Bootstrapping Urbit from Ethereum

#46
post #25

Earlier quoted context omitted.

That's... a baffling claim. Urbit is well documented, in easy-to-understand terminology, from low level, to high level: https://urbit.org/docs/ https://urbit.org/docs/nock/definition/ https://urbit.org/docs/hoon/concepts/ The code is open source, under MIT license: https://github.com/urbit/urbit Heck, urbit even shows up to Hacker News semi-regularly: https://news.ycombinator.com/threads?id=urbit What backs your clai…

Please identify one concrete computing action that I cannot do with Linux/Windows/Mac that Urbit enables. In other words, what is Urbit's "Killer Feature"? Cause I'm not seeing one. And a runner up question: Is Urbit still heavily dependent on unreleased root node code? In other words, is this distributed computing just a load of hype covering over a overly complicated star topology?

> Is Urbit still heavily dependent on unreleased root node code? In other words, is this distributed computing just a load of hype covering over a overly complicated star topology?

Urbit has always been fully open source as far as I know (at least since 2013). It is true that Tlon runs some of the galaxies and stars that most people use, but that's just because other galaxy owners haven't decided it's worth it to do so (because Tlon is doing a great job of it).

Re: Bootstrapping Urbit from Ethereum

#47
post #40

Earlier quoted context omitted.

Please identify one concrete computing action that I cannot do with Linux/Windows/Mac that Urbit enables. In other words, what is Urbit's "Killer Feature"? Cause I'm not seeing one. And a runner up question: Is Urbit still heavily dependent on unreleased root node code? In other words, is this distributed computing just a load of hype covering over a overly complicated star topology?

(You might have hit reply on the wrong post? This is all stuff orthogonal to my point.)

Yeah, it appears so. I wanted to question the weirdos out of the woodwork that inevitably show up when Urbit is mentioned.

Every time, it feels more and more cultish. And every time, I don't believe it could get more so, and am wrong.

Re: Bootstrapping Urbit from Ethereum

#48
post #45
post #37

Earlier quoted context omitted.

Right now you can build decentralized apps like Mastodon, except they 1) take hours to setup a node, along with having to know arcane Linuz sysadmining 2) aren't actually decentralized, but federated. Urbit wants to make it easy to setup your own server, which runs as a node for all these decentralized apps (instant messaging, Twitter, etc.), along with be useful for server-y things like aggregate APIs (email, Facebo…

Marketting spiel incoming. You use Reddit to share link, Twitter to keep up with people, and IRC for real time chat. In all of those cases you are trusting a third party corporation that they aren't keeping you data forever and they won't arbitrarily ban you. You can switch to alternatives like Mastodon or, like, voat but it's really the same problem: now you're just trusting a different server, and being banned stil…

Right, but you could do that with any P2P overlay network with any embeddable VM. Why use the very unorthodox one that Urbit came up with? I really think that's the question people are asking when they say they don't understand Urbit. Not, "why would we want to do what this system claims to let us do", but rather, "why would we want to do it that way?"

Re: Bootstrapping Urbit from Ethereum

#49
post #26

Earlier quoted context omitted.

Others, including myself, have noticed this too and it reminds us of something else a little closer to home: namely, what happens to Scientologists and the like after they've been in the cult a while. Even the Scientologists who later leave still think in terms of engrams and body thetans. I think Curtis Yarvin is a master huckster and wordsmith, but near as I can tell what's good about Urbit isn't original and what'…

>>finally he plays the same semantic shellgame with his words he plays with his political essays, to convince you that the horrible political views he has aren't so horrible. I suggest you leave your ideological biases out of your assessment of Urbit the technology. We all have our political beliefs - mine are hard libertarian, yours are hard feminist/leftist - but hopefully we can put those aside when assessing tech…

As tptacek pointed out upthread, his hateful ideology is deeply ingrained in the structure of the technology. In fact, no technology is free of its creator's ideology! The argument that one should "put [ideological biases] aside when assessing technology" is, in the most charitable case, naive attachment to the status quo.

Re: Bootstrapping Urbit from Ethereum

#50
post #42
post #31

Earlier quoted context omitted.

My main claim was that Urbit isn't revolutionary. It is really just a Unix server and programming language. However, in an attempt to seem more sophisticated they invented new words so that nobody could figure out what it was. Urbit is purposely obtuse in their terminology, when they really could just use words that programmers already know and use. Here's some examples from the documentation you linked: "A value in…

> "A value in Hoon is called a noun" - or you could just call it a value. A "value" sounds like an abstract concept. A noun is one of two things: a natural number or a pair of nouns. Calling it a "value" makes it sound much more abstract than it is. > "A core has no exact equivalent in conventional languages, but the closest equivalent is an object. An object has methods; a core has functionally computed attributes (…

> A noun is one of two things: a natural number or a pair of nouns

To most of us, a "noun" is a person, place, thing, idea, or feeling.

I started replying to the other stuff you were saying, but I started getting this feeling like you're in on the joke and I'm not.

Post reply on HN