Fork me on GitHub
#off-topic
<
2021-07-18
>
Ben Sless06:07:50

Theoretically, so can hato, but there's the added annoyance of having to parse that stream, maintain a connection, etc. SSE is slightly neglected in the backend world for obvious reasons

blak3mill3r01:07:48

aleph http client can give you the body as a stream

Ben Sless17:07:50

Is anyone here familiar with Urbit? Putting aside the baggage attached to it (if you can) I recently came across it and it's fascinating from a technical perspective - the idea of a deterministic event-sourced VM which is also a DB running an OS defined in very simple and minimal terms is pretty beautiful, if somewhat ambitions and slightly insane

Ben Sless17:07:27

It's a level of reinventing the wheel I've never seen before, and the most incredible part is it actually works

sova-soars-the-sora18:07:18

Uh, I read about it, still don’t get what it is exactly, but apparently it’s an “OS” that can run inside Unix and also has a ipfs-like network syntax figured out? Or maybe closer to something like DC++ or BitTorrent in the idea that you connect directly to others running Urbit. Pretty cool, pretty weird, not sure how it stops megaCorps from creating centralized services and owning our data, but it seems like a step in the right direction. I suppose there must be a lot of good-faith effort in creating programs that expose an interface to other urbit nodes without necessarily giving all one’s data to a central authority, first. Like little windows on everyone’s house/box that you can peek through but only see a glimpse… I’d need more examples like “how would you implement an Urbit version of a social network or FaceSpace” or how one would create something akin to a distributed community-driven radio/Spotify/last.fm on Urbit? Seems doable but I don’t really see the how quite yet.

Ben Sless19:07:16

Emacs also runs inside unix, but you could theoretically build hardware which runs its bytecode and run it there, too, no? I think it's the same idea. It's not just an OS from what I gather, it's "full stack", from formal definition, to VM implementation, higher level language which targets this VM (and is almost incomprehensible 🙂 )then an operating system written in it, with an application suit on top. What makes an operating system? It has task management, its own network layer and stack, a filesystem, terminal driver, application manager, and off course, apps. It's pretty bare bones, but did UNIX v6 have much more in it? Did it have many more lines of code?

Ben Sless19:07:54

I really don't know if it solves the technological problem it wants to solve, but event-sourced distributed systems something I've been dealing with in the past 2 years so it piqued my curiosity

Ben Sless19:07:10

It also looks like it handles state and side effects in a completely different way. A functional operating system?

Aron06:07:52

I don't even know what is the technical problem it tries to solve.

Aron06:07:12

What I do know that generalist blockchains are self-serving, which then means that generalist blockchains cost more per transaction than specialist blockchains to their users. So I don't see them popular unless we are foced to use it, which for the makers of Urbit might not be an alien idea.

Ben Sless06:07:00

Urbit isn't a blockchain technology, it's not used for transactions

Ben Sless06:07:05

The only tangential tie Urbit has to blockchain is its used to transfer ownership

Ben Sless06:07:40

But it might as well be JVMs communicating over on GNU Net

Ben Sless06:07:06

The single instance is more interesting to me than the particular network they're used to build

Ben Sless06:07:20

I also think the communication is p2p and private, unlike ledgers which are public

Ben Sless08:07:24

> The Urbit ID registry is live and deployed to the Ethereum blockchain next sentence: > Urbit ID isn’t specifically wedded to Ethereum

Ben Sless08:07:55

Ethereum is only used to transfer ownership of the identity

Ben Sless08:07:33

Urbit ID worked before bootstrapping with the Ethereum network

Aron08:07:02

so then, I repeat, what is the tech solution it solves?

Aron08:07:00

Because I thought the decentralized identity was a key part, but if not, I don't understand anything, please explain.

Ben Sless08:07:32

I'm not an expert, this is pretty new to me: The identity model is central to the urbit network

Ben Sless08:07:10

I think the tech problem it's trying to tackle is some sort of tech independence

Ben Sless08:07:53

In such a way you own all your data and all your connections. You don't submit content to other people's servers, you're both the content generator and the platform

Ben Sless08:07:22

But self hosting is painful even when you know what you're doing (setting up my own nextcloud wasn't fun)

Ben Sless08:07:18

It's also impossible to "grok" the entire tech stack as it currently exists. no living person can read all of the code and keep it in their head

Ben Sless08:07:02

so a simple system which one person can grasp, which is easy enough for my dad to run without even opening a terminal, full ownership of all your data and connections

Ben Sless08:07:35

You can also recreate and port your state between machines, if I understand correctly

Ben Sless08:07:41

But like I said, the "functional vm/os" part is more interesting to me. How are side effects handled?

Aron08:07:22

how do i own my own data when i don't even own my own identity in their system

Ben Sless08:07:48

How don't you own your identity?

Aron08:07:31

can i change it arbitrarily at my own pleasure whenever and whereever I want it?

Ben Sless08:07:20

You can pass ownership of it to anyone you want

Aron08:07:21

and it's still a p2p network? because then fine, i admit that would be neat

Ben Sless08:07:06

Yes, all communication is encrypted and signed with your identity

Ben Sless08:07:48

your identity is just some eth token, besides the gas prices you can send it arbitrarily

Ben Sless08:07:09

but then you can't use it to communicate with people anymore

Ben Sless08:07:28

I think you just made it click for me why they call it "digital land"

Aron08:07:41

side effects for me never seemed as an issue, events are a thing, i can create events and listen to events, creating a side effect could be just creating and executing an event somehow

Ben Sless08:07:15

While you can transfer ownership of it, you won't want to do it in high frequency. I want some sense of persistence, that who I'm talking to is a constant identity

Aron08:07:54

that's definitely important, but that's the point of p2p that some people have one rule, another person another rule

Ben Sless08:07:58

> side effects for me never seemed as an issue, events are a thing, i can create events and listen to events, creating a side effect could be just creating and executing an event somehow I think that's how it's done, but I've never seen a (working) system built like that from scratch

Aron08:07:15

it can be that you know someone personally who you can then trust with many identities online

Ben Sless08:07:50

> that's definitely important, but that's the point of p2p that some people have one rule, another person another rule Not sure I follow

Aron08:07:19

and my blockchain comment was, that so far the only way out of this situation, so that global players with overwhelming resources don't envelope your network within another network, confusing your nodes to believe a false reality is to have a decentralized ledger

Ben Sless08:07:21

That makes sense, but you have that for identity ownership, and all communication on the network is p2p, so you wouldn't have that particular problem, no?

Aron08:07:22

but if my identity is part of a decentralized ledger, I don't own it, I own a key to prove that's me, but that's actually a reversed relationship to 'i can change it anytime', the network can change it anytime, and I can only participate. I can have a new identity and I can change the old one to the new one only if the network agrees, not just the person I am doing the transaction with, which would be the important part.

Aron08:07:53

and just to be clear, my only real comment is that I find these systems essentially too costly for what they provide

Aron08:07:29

in the sense that there is always a simpler, cheaper way to achieve the same thing

Aron08:07:57

(not necessarily easier 😄)

Ben Sless08:07:15

I remember hearing about it some years ago when Urbit bootstrapped itself off eth and how some people hated it and thought it was a bad idea but didn't look too deep into it at the time

Ben Sless08:07:34

But I found this which lays out the reasons to why they even did it https://urbit.org/blog/bootstrapping-urbit-from-ethereum/

Aron14:07:37

> So – I guess it wouldn’t be that hard for one rotten apple somewhere on higher ranks of the networkhttps://wejn.org/2021/02/urbit-good-bad-insane/#fn9 (rogue operator, hacked machine, hacked core dev’s machine) to push a code update that exfiltrates all your data, possibly including all your secrets (hey, remember the BTC integration)?

Ben Sless14:07:10

@U04V4KLKC anything in particular or to contribute to the discussion or just going to drop a link of someone who starts off by saying he's going to make fun of the subject matter?

delaguardo14:07:35

Just throwing in alternative opinion. I didn't didn't much time looking at urbit yet

Ben Sless14:07:39

Now, regarding the specific point you raise, Aron, it's an interesting technological challenge and good luck to them in solving it. Don't see how it's different from a BIG_COMPANY employee with access and an axe to grind, or in that effect, a government, which galaxies are sort of an equivalent of. It isn't like there haven't been cases in history where governments turned on their citizens and did disgusting things. Sometimes other governments gang up on them and beat them up for it. But this isn't really what's interesting to me

👀 2
Ben Sless15:07:58

It's not an alternative opinion, it's bad faith sniping. and I read that article. before posting here. It's mostly technological challenges, and like spec2, it'll be ready when it's ready. I won't begrudge anyone who wants to take the time to do something right. Anyone can offer dismissive criticism, it takes little effort (refer back to PGs article I linked in the thread) This is more interesting to me https://cp4space.hatsya.com/2021/05/12/urbit-for-mathematicians/

Ben Sless15:07:03

And I apologize for being cranky,it's been a long day and I should eat something

Conor15:07:21

Oh, this is the thing developed by that unpleasant alt-right person, Curtis Yarvin

Conor15:07:21

I seem to recall reading a description of Hoon and Nock that sounded absolutely bonkers

Ben Sless15:07:11

Its is absolutely bonkers

Ben Sless15:07:00

Which is why I find it so incredible it actually works (ish)

Conor15:07:07

It's no TempleOS on the cuteness scale, I would say

Ben Sless15:07:23

What's the point of bringing it up?

Conor15:07:23

You're the one who brought it up, dude 😅

Ben Sless15:07:55

I did not bring TempleOS up. I did not bring up anyone involved with urbit past or present. Dude. I want to talk about a weird technology, what it can be used for, what can be learned from it. The other stuff doesn't really appeal to me.

👀 2
Ben Sless15:07:50

Stuff like - everything is implemented with pairs and binary trees, which is pretty awful. Can it be done in a more Clojurey way? The environment is basically always part of the computation, why not use a hamt instead of binary trees? How can you still have axiomatic definitions like nock building with interfaces?

Ben Sless15:07:29

Event sourced processes which build up an internal graph? That's pretty cool, and pretty familiar. What sort of applications can it have? Can you use it for distributed computing?

Ben Sless15:07:35

Can you imagine clojure processes keeping graph data in memory sending EDN back and forth? Obviously! Isn't it our bread and butter?

Conor15:07:19

I would consider technology inherently political, so I personally would not use anything invented by Curtis Yarvin. That it also uses Ethereum is a point against it. Frankly, reading the docs/tutorials makes me think that nobody serious would ever use it, hence the comparison to TempleOS (which, while useless, has moments of surprising beauty in it)

2
Conor15:07:43

Anyway, last I checked it wasn't against the law to make oblique comments on Slack threads

Ben Sless15:07:20

And since you hold that opinion, you think it's cool to derail threads where people want to have an actual discussion. Thanks for the help

Ben Sless15:07:27

I was hoping to discuss something that seems interesting without it devolving into people who must inform me I am not allowed to discuss a technical subject because it offends their sensibilities

noisesmith16:07:58

speaking just for myself, the metaphors / models used are so bizarre, it felt like deliberate obfuscation or gate-keeping. add to that the explicit political motivations of the creators and funders and I had no motivation to learn more. I think the comparison to templeOS is somewhat apt- "invention goes downhill, learning goes uphill" - it's easy and fun to make a brand new and alien model, but this doesn't necessarily result in a higher quality system, and it creates needless difficulty for people trying to onboard.

noisesmith16:07:51

I doubt you'll have an easy time finding someone who can discuss the urbit tech on its merits outside the developers of the system itself

Ben Sless16:07:52

Yeah I think the obscurantism is certainly a mistake

Ben Sless16:07:04

> I doubt you'll have an easy time finding someone who can discuss the urbit tech on its merits outside the developers of the system itself 😞

Ben Sless16:07:00

I wonder though. I bet Clojure seems weird to people. Forth more so. APL definitely so. Yet there are people who use them to great effect. Or take a language like J for example - ($:@-&2+$:@<:)@.(>&2)

Ben Sless16:07:40

Nock is dead simple to get, took me an afternoon. From what I gather hoon compiles pretty simply to nock, so maybe it makes sense? Its syntax and weird names for everything are unforgivable 🙂

respatialized17:07:10

The phrase "technology is inherently political", while often used as such, isn't just a simple 'gotcha' or attempt at grafting the political opinions of a technology's creator on to the technology itself in a 1:1 way. Software, like all technology, has certain features that lend itself to particular social purposes: to be hyperbolic, a surveillance camera or an atomic warhead can only be used in certain ways. This point especially goes for urbit, which is literally an attempt to create a social and economic system on the basis of a platform which embraces and enforces artificial scarcity in a way that redounds to the benefit of the platform's early adopters (like all cryptocurrency, the expectation of HODLers is that more energy will be required to mine in the future, making holding a more rational strategy than mining). Regardless of the words Yarvin has written in the past, it is literally impossible to separate the political and the technical aspects here. They are coextensive. I happen to think that Yarvin's philosophy (which, for the record, I find abhorrent) maps quite well on to urbit as a project and can find many parallels between his worldview and the world urbit is trying to build, but you can make criticisms of the platform on its own terms on the basis of its socio-technical aims that isn't just "blargh moldbug evil".

💯 4
lilactown17:07:34

I agree with respatialized; from a purely philosophical perspective, I find the "propertarian" approach to data that Urbit espouses not very interesting

lilactown17:07:23

like, we have lots of examples of managing things via private property & capitalist markets. the technical hurdles urbit hops and the approaches it takes are fascinating but the product itself is boring at the least IMHO

lilactown17:07:08

I don't think it's above or below discussion though!

noisesmith17:07:30

@ben.sless I agree that clojure can seem strange (and forth etc.) but they are organic outgrowth of collaborations dating to the '50s (clojure) and '70s (forth), and were adopted based on their utility. good ideas are sometimes strange, but most strange ideas aren't good.

⁉️ 2
sova-soars-the-sora17:07:16

Reading the docs I think Urbit is for making urbit IDs scarce on purpose to keep bots/spammers out apparently (?) So here’s a scenario: you want a social network or image sharing site but you don’t want MegaCorp in charge of it. You can theoretically make a program for Urbit that works on it’s nested P2P structure and makes an application like a decentralized or federated social network, with no main megacorpoation owning all the data in some spot. There’s no DRM though so anything shared could be saved by others, but you could theoretically choose which groups of people can see however much, and a TTL for your photos and posts, and their reach. Such an infrastructure makes such thinking possible. So that seems like an innovation to me, technologically.

lilactown17:07:17

talking more about philosophy and politics of data (since I know nothing about the technical aspects of Urbit), I listened to a podcast who had a researcher, https://www.salomeviljoen.com/, who gave an overview on different ways of thinking about data. Urbit didn't come up specifically, but she gave an overview of what she called the "propertarian" philosophy where data is treated like private property and exchanged on an open market- which sounds extremely similar to what Urbit is about. Other ways of thinking that she also talked about were "dignitarian," i.e. we shouldn't collect data at all, and "democratic" where governing data (what we collect, how it's used) by democratic governance is used. pretty fascinating stuff for me, who is very involved in data and it's uses in my day to day but maybe doesn't spend as much time thinking about it from a philosophical & political perspective.

lilactown17:07:57

happy to DM a link to the podcast if interested

noisesmith17:07:08

@U3ES97LAC I'm not certain about this, but given the hierarchical model and limited set of nodes, and the fact that so many nodes are owned by the makers of urbit itself, you might be free from megacorp, but not from urbit's makers and stakeholders

respatialized17:07:43

to give a glib response re: urbit's handling of spammers: so their preferred strategy to keep out spammers also just so happens to concentrate ownership of the address space (and control in the platform's governance structure) in the hands of those early adopters. what a coincidence! as @U051SS2EU points out, Tlon becomes MegaCorp in this scenario if they pool their votes. urbit isn't the only organization building a federated model of distribution for social networks that's outside the control of a megacorp; Francis Tseng, whose article I linked above has been involved with many such efforts that do not embrace urbit's ownership model, political preferences, or need to reinvent the entire wheel of computing. so I don't think they deserve that much credit for their innovation, especially since you can trace the origin of similar concepts back to stuff like Named Data Networking. https://en.wikipedia.org/wiki/Named_data_networking#History

Ben Sless17:07:41

The situation you describe is possible, however, Tlon's stated goal wrt galaxies is they want them all to be privately owned, eventually. I'm also not sure how much effect it can have as even if they maintain majority vote, since the network is p2p and galaxies's and stars' main function is peer discovery, as long as even one galaxy is willing to peer with you, you can talk with the entire network, no? Can you really imagine a situation that out of 65k people you won't find even one who's willing to talk to you? Sounds a bit extreme @U3ES97LAC I think so. On the long term they want to include a software distribution model, since everyone's a server and location independent, anyone can talk to anyone. It looks like the smallest granularity of federation: 1 @U051SS2EU specifically to your point, I don't see from a technical perspective how even a majority share of the nodes in the network can negatively affect a user if all communication is peer to peer

facepalm 2
Ben Sless17:07:13

@UFTRLDZEW I do find it convenient that a competitor of sorts has an article criticizing his competition 😄 I'm really more attracted to the "let's reinvent computation like aliens made it to last forever" part rather than "let's implement weird ideology X" or what have you. I mean, if you had all the time and brain power in the world, how would you reinvent computing? Would your answer change if you had to take into account computers have to talk to each other? It's interesting that NDN related to CCN, because it's mentioned as an inspiration in a very meandering old post by the original creator where he mentions it as an inspiration https://en.wikipedia.org/wiki/Content_centric_networking

noisesmith17:07:27

quoting the Tseng piece linked above > Urbit’s primary governance model is a “self-governing digital republic” where “authority is proportional to property.http://distributedweb.care/posts/who-owns-the-stars/#fn:8 Galaxies, stars, and planets are conceived of as property to be purchased and in limited supply, and one’s power within Urbit is determined by what tier of ownership they occupy and how much they own. that article argues that nothing about urbit is meaningfully peer to peer.

Ben Sless17:07:47

Everything on the data is content generated by entities which are part of an immutable namespace and locatable by RDF like semantics If it weren't Urbit it would sound like an interesting system written in Clojure

Ben Sless17:07:20

What makes a network p2p?

lilactown17:07:55

I think it's p2p just not very democratic

sova-soars-the-sora18:07:04

I guess you’re saying it doesn’t solve the MegaCorp problem and I have to agree that it does create more, different, authorities but it does flip the idea of “let me send all my stuff to FB and have them choose what to put in the store window” vs. “let me put whatever i want in my store window and have peers browse it at their leisure” … eventually once they have a program that does that. The infrastructure change is nice, but how would you practically create a nice spam-free p2p network without some sort of centralized authority?

sova-soars-the-sora18:07:38

According to their “grant program” you can build out needed parts of the platform and you’ll be rewarded with some agreed-upon number of “planets, stars” or whatever. Not sure what those are for but it sounds like stars are nodes that connect the realm together (autonomous boxen?)

Ben Sless18:07:54

Was just looking at this at the urbit docs: > Urbit IDs are distributed by a sponsorship tree. At the top of the tree are 28 (256) galaxies. Each galaxy issues 28 stars, making a total of 216 (65K). Stars then each can issue 216 planets, making for 232 (~4B). As you might expect, each planet issues 232 moons. > You can also call stars ‘infrastructure nodes’ and galaxies ‘governance nodes’, since those are more descriptive names for their roles. Stars help route packets, kind of like an ISP. And galaxies are a bit like DNS root servers or ICANN members. The difference, of course, is that Urbit IDs are owned cryptographically by many different people and accrue reputation independently. > https://urbit.org/understanding-urbit/urbit-id/

Ben Sless18:07:16

The formatting got a bit broken by copy-paste

Ben Sless18:07:24

28 => 2^8, etc

lilactown18:07:08

what authority do galaxies, stars have over how the network operates? where to route things? what things can be routed?

Ben Sless18:07:28

> how would you practically create a nice spam-free p2p network without some sort of centralized authority? Charge nominal entrance fee. The basic urbit IDs cost 0.025 ETH which currently is ~50$. This isn't too much considering it's supposed to be a one time purchase. Many of us have spent more on an expensive meal. But it makes spam very costly, I think

Ben Sless18:07:40

I think this part answers both questions: > One point that’s useful to understand about sponsors is that while Urbit IDs always need a sponsor, or parent node on the network (primarily for peer discovery), it’s always possible to change sponsors and sponsors can always reject children. This means bad actors can be banned and abusive sponsors can be ignored. We think this strikes a nice balance between accountability and freedom. > Third, governance: galaxies (the top of the sponsorship tree) form a senate that can upgrade the logic of the Urbit ID system by majority vote. We think Urbit ID will last for quite a long time, but if it ever needs to be updated, the galaxies can vote to approve, reject, or propose changes to the contracts. Code may be law, but ultimately we acknowledge that human judgment can’t be factored out.

Ben Sless18:07:51

Basically, your star can tell you to piss off and go find another star

Ben Sless18:07:01

Does it mean the model is theoretically independent of the internet?

Ben Sless18:07:20

You could use GNUNet and it'll work just the same?

sova-soars-the-sora18:07:05

Sounds like it would exist inside whatever transfer layer is chosen, could it do multiple different ones? Dunno

lilactown18:07:13

if I'm a billionaire, and Urbit is used by many people and has a lot of value captured, I could buy a majority of the galaxies and steer the network in a way that benefits me and my interests?

noisesmith18:07:17

wait, if they are replacing DNS / ICANN etc. isn't that more of a replacement for internet, rather than a layer over it?

Ben Sless18:07:00

> wait, if they are replacing DNS / ICANN etc. isn't that more of a replacement for internet, rather than a layer over it? Remember the insane part? They want to replace everything

noisesmith18:07:47

this wouldn't be Thiel's first foray into mad-scientist bs

lilactown18:07:17

it sounds like it requires a transport layer which a node can use as I/O, i.e. it resolves a node ID to an IP addr or smt. but that routing is done at the galaxy layer?

noisesmith18:07:32

(if that's what's going on here, I am still not informed enough about all this to really know what is what)

Ben Sless18:07:17

There's "mad-scientist bs" and then there's "you actually made it work, you crazy SOB"

noisesmith18:07:03

oh when I say mad-scientist I dont' mean the engineering part, I mean the hold the world hostage part

Ben Sless18:07:12

I barely understand it now and if I had a galaxy I wouldn't sell, and the more you'd offer, the more value I'd think there is to it and hold on

sova-soars-the-sora18:07:15

@U4YGF4NGM yes, for the low low price of lots of addresses, you can pre-emptively but Urbit IDs and hoard them. Which might be what they are waiting for if the price is right

Ben Sless18:07:12

But the low price addresses have no authority, so even if you buy lots of them, the only thing they can have value as is selling them later

Ben Sless18:07:41

@U4YGF4NGM I think routing is done by regular http today. you only use stars to find other planets (their ip?) and from there you communicate directly

lilactown18:07:52

maybe I'd just pay whoever owns the galaxy to vote my way

Ben Sless18:07:16

Good luck finding them 🤷

lilactown18:07:17

could be a good way of collecting rent for whoever owns the majority of galaxies

sova-soars-the-sora18:07:42

Interesting… or else you lock the door?

sova-soars-the-sora18:07:54

Curse you Byzantine generals problem!!

sova-soars-the-sora18:07:24

Like if I control Maine all the way to Texas I can force California to pay a special tax to trade with us

Ben Sless18:07:22

I don't see how that could work

Ben Sless18:07:05

Like, worst case scenario, the network splits, which would be a total loss of value and lack of faith in the existing net and at that point the whole experiment is over

Ben Sless18:07:34

but as long as one galaxy is willing to talk to one star who's willing to talk to one planet, that planet can talk to every other planet

sova-soars-the-sora18:07:02

Yes, will the friction of ownership and pay-to-play outweigh the collective free exchange of info? Probably, communism fails frequently for a similar reason

Ben Sless18:07:06

Which is actually a better situation than today where states can cut off other states' internet

Ben Sless18:07:49

No idea I'm not a political theorist and I wouldn't try, I'd make a dog's dinner of it

sova-soars-the-sora18:07:48

Haha, no worries. I think if you want a network like that to live long-term there has to be some sort of governance that balances ownership-stake and just-showing-up: e.g. a House of Representatives and a senate

noisesmith18:07:02

@U3ES97LAC funny enough I saw an article claiming that the soviet version of internet failed because competing bureaucracies undermined each other, and the US version succeeded because it was fully centralized with top down total control

sova-soars-the-sora18:07:54

Well yeah, if it’s important for all the water to flow one way, we can’t be putting it to committee for each pipe

Ben Sless18:07:29

Hold on, you can't sing the praises of strong centralized authorities then complain urbit is undemocratic, that's too confusing 🙃

noisesmith18:07:08

I'm not singing praises, I'm sharing an anecdote that I found amusing

👍 2
Ben Sless18:07:28

But bureaucracies are notoriously inefficient and constantly politicizing, which seems to get in the way of "getting things done"

Ben Sless18:07:43

I'm interested in what you can make with such a network, though

sova-soars-the-sora18:07:46

The solution is clearly a benevolent dictator

Ben Sless18:07:21

You even went directly to stuff like FB-clone, but, that's old. Store is actually an interesting abstraction

sova-soars-the-sora18:07:28

Well it sounds like Urbit traffic has to live within the normal confines of IPv4 and IPv6 for now, but could also do other things in the future? And maybe you’d have a galaxy or whatever let peers connect via all sorts of signal and then you could be talking via Bluetooth to one device and nobody would know any better because it’s transparent on the urbit-routing level (very small-minded reference to simply BlueTooth here to highlight potential device diffference)

sova-soars-the-sora18:07:37

It seems neat but also fragile. Say an ISP blocks all urbit traffic due to questionable legality of some community. Then that’s a huge hit

Ben Sless18:07:42

You're running a server, on it your store program, and you can sell anything on it. Software, services, flower paintings

sova-soars-the-sora18:07:04

Oh, like “Shop” store, not “Save data” store

Ben Sless18:07:05

It's encrypted, can you block it?

Ben Sless18:07:44

Yes, but, that connects to a Save Data Store, because everything is an entity in a graph database

lilactown18:07:54

what if I'm selling someone else's data?

Ben Sless18:07:02

How can you?

Ben Sless18:07:09

They need to send it to you first

sova-soars-the-sora18:07:14

It might be decoder-ring encoded on the letter paper it’s written, but the mail carrier still sees a to and from address, so you could have “known Urbit repeater IP”

lilactown18:07:16

yeah, they send it and then I resell it

Ben Sless18:07:50

Then you are not a very nice person and your star will probably tell you to find another sponsor

lilactown18:07:57

or what if contained within my data is information about them?

lilactown18:07:16

"I went on a walk with so-and-so today" is for sale. That's my data. but it's also about them

sova-soars-the-sora18:07:24

Like a unique IPFS link to the data? That makes sense. Yeah once data is shared what can be done? “Pretty please respect this Time to Live and Sharing Policy”

Ben Sless18:07:58

Yeah once data is shared you're pretty f-ed, but how different is it from today?

Ben Sless18:07:13

It's doubly a problem with an immutable event log

sova-soars-the-sora18:07:21

one more vote for the status quo 😆

lilactown18:07:27

or, speaking more broadly, let's say that I am selling the data that I'm 30 yrs old, male, and like cats. and then I also sell my current shopping data

Ben Sless18:07:46

Why would you sell that data, to whom, and how?

Ben Sless18:07:56

And how will anyone serve you ads for it?

sova-soars-the-sora18:07:12

~facebox-booknode is interested in this data for an unstated reason.

lilactown18:07:36

maybe I get 15% off at the Urbazon store by providing them that data

Ben Sless18:07:38

block ~facebook-booknode and tell all my friends it stinks

lilactown18:07:50

a business could buy that data from me and then extrapolate that other 30 yr old males who like cats would also shop similarly to me

lilactown18:07:17

and serve them ads, or make suggestions, or provide sales and other marketing campaigns towards them

Ben Sless18:07:36

Let's assume all that. Would you prefer a model where a store tells you "hey, you can get 15% off if you give me your data" or where you pay full price and they get your data anyway?

Ben Sless18:07:27

It seems to me who people who actually get on urbit feel pretty strongly about their data

sova-soars-the-sora18:07:32

It sounds likely that they’re be a TON of micro-services and you’d have to run the server/client for each of them on your own machine, and they could probably say “ by the way we serve ads to keep this service free” and I think that would be within the norm on Urbitland

lilactown18:07:02

I'm not proposing that the current system is good, rather musing about how the solution that Urbit (and other propertarian solutions to data) doesn't address the real relationship that your data has with your peers

sova-soars-the-sora18:07:39

Mmhmm, that’s a tricky one. Here’s my personal blog with all other characters Redacted

sova-soars-the-sora18:07:51

unless you know them, then you can read their name

sova-soars-the-sora18:07:57

so send me a list of everyone you know…

Ben Sless18:07:47

This is one framework to think of data, I found some professor who just https://davis68.github.io/martian-computing/lessons/lesson00-prospectus.html it as Data are pwned.

Ben Sless18:07:20

But one aspect of the identity model, which doesn't solve it but helps, is that you know the peer. They aren't some random nick online. They have reputation. You wouldn't trust a stranger with your data, but you will trust someone who you've know, talked with, and communicated with for years (maybe)

lilactown18:07:23

this same problem is at the root of so many data collection problems we've seen, i.e. cambridge analytica. FB had a policy in place that you could only share data with apps that you agreed to on their platform; but tons of data that are "of me" (pictures, address books, posts, browsing history) is not just about me but also about anyone who I have a relationship with, whether that be a direct relationship (friends, family, business partners, coworkers) or indirectly via being in the same cohort (30 yr old male who likes cats and Clojure), and they were able to use that data to aggressively target social media campaigns towards those people they were able to glean information about

sova-soars-the-sora18:07:54

I guess but that suggests we do DRM for everything. What if i take a phone photo of a screen showing source code? An age-old question about the effectiveness of DRM. Computing makes duplicating data trivial and necessary for operation, pretty much any interested party is going to want to collect data relevant to their aims. Learning very slowly that our data is what they are after is helpful if we can strike a deal, but without a buyer the price does not matter

Ben Sless18:07:10

> 30 yr old male who likes cats and Clojure Yeah, cohort gang

😸 2
Ben Sless18:07:44

One of the things which even makes ads targeting possible is that you go to someone else's server. What's FB et. al without the fancy algorithms? Just hypertext and some cat pictures (or lunch pictures on IG). I don't need to go to someone else's server, I can (theoretically) write a hoon program (shudder) which does it and distribute it for free and you can all run it and then you serve cat pictures to your friends and they get them directly from you, not because I put them on someone else's server

sova-soars-the-sora18:07:26

Then facebook makes use of the hoon app you built to programmatically visit every urbit node sharing pictures and host them on their own node

Ben Sless18:07:39

Just add some abstraction to "follow" people to get updates from their servers

Ben Sless18:07:04

Then everyone blocks that id

Ben Sless18:07:31

And you can always make that connection 2-way, i.e., approve follows or be "open"

sova-soars-the-sora18:07:35

i would say your hoon app would need to have a policy that says “respect this TTL on these shares or get blocked” and you could have aggregator nodes that operated on that policy and stuck around for a while

noisesmith18:07:41

I see no reason to believe that urbit provides that kind of autonomy in practice, nor that the makers of urbit would see that as any sort of goal

Ben Sless18:07:15

no idea, you'd have to dig into the implementation / ask them

Ben Sless18:07:22

but if it did?

sova-soars-the-sora18:07:50

If done like BitTorrent it could be more efficient to share stuff with friends / faster(?) but it sounds like the app-ification of many a simple website

lilactown18:07:07

we use things which collect data because they're useful in practice. the goal of propertarians isn't privacy at all costs, but rather to make that cost explicit

Ben Sless18:07:13

More like APIfication, I think

Ben Sless18:07:53

> propertarians that's a weird term and I don't think I ever met someone who uses it to describe themselves

lilactown18:07:21

it's a weird word, yeah. I tried to define it earlier but it may have been lost amongst the messages

Ben Sless18:07:03

I'm just never a fan of using an external label to describe a position. Can't the position describe itself?

Ben Sless18:07:48

I can just say, "Hey, Will, what do you care about? What's important to you?" and you'll tell me

lilactown18:07:50

I was trying to make my message shorter, not be judgemental or use it as a pejorative

lilactown18:07:57

I wouldn't have used it to describe myself but I've definitely spent a lot of time thinking of data as personal property that I could own and control

Ben Sless18:07:13

I didn't take it as such, it just feels too detached

2
sova-soars-the-sora18:07:35

I have a friend who thinks that everything ought to be private property

Ben Sless18:07:03

It's like you share a picture of your cat and I say "what a cute felis catus"

sova-soars-the-sora18:07:07

Sometimes I give him hard questions like “what about the park? What about the pipes that give you running water? Do you really want to put a dime in each time you need a drink?”

sova-soars-the-sora18:07:53

divvy things up too much and the collection starts becoming a burgeoning inefficient scramble

Ben Sless18:07:57

Careful, he might just say yes 😄

sova-soars-the-sora18:07:14

He’s welcome to live in that world provided he can find it

Ben Sless18:07:36

good luck to the political theorists and philosophers, I'm just excited by the idea of an event driven deterministic OS

Ben Sless19:07:15

Yes, you replay the event log, get the same state

sova-soars-the-sora19:07:14

You bring up some great questions about data and its ownership. It makes me wonder how we could make that work more smoothly. I suppose some people think the current system doesn’t start from that as a first-principle and therefore we need a new one that does. But I think there is friction-of-value, in that without collecting a lot of different peoples’ worth of data, the data itself is not very valuable. But then at scale, with millions or billions of peoples’ data, it starts commanding value of being under one umbrella. Similar to Schwab convincing Carnegie to sell his steel holdings for $400M, which gave JP Morgan and Schwab a new company worth $1B (200 M + 400 M = 1 B when aggregating under one umbrella)

sova-soars-the-sora19:07:37

“the sum is more than its parts” kinda dealio

noisesmith19:07:43

also the limit on the current abuse of data is the ability to reliably map it to identities, it seems like the urbit scheme would make this much easier

lilactown19:07:23

I enjoy both. Urbit's documentation has gotten lightyears better since I last looked at it. there's some interesting technical designs there. I'm just not interested in buying what it's selling

sova-soars-the-sora19:07:07

@U051SS2EU oof, you’re right. I read there was a cap on max num of IDs on the Urbit network, either 30M or 30B, not sure

Ben Sless19:07:34

Wouldn't it be offset by how you won't be sending it to others' servers and it won't be harvestable?

Ben Sless19:07:43

> there's some interesting technical designs there. I'm just not interested in buying what it's selling Coming back to why I even started this thread, it wasn't to sell the product, but to dig for interesting technical ideas

2
Ben Sless19:07:40

For example, what if the way Urbit handles side effects is really smart and we should all build event driven systems that work like that?

Ben Sless19:07:26

How do you efficiently create event-sourced state, save it to an image and start back from it?

lilactown19:07:12

> Wouldn't it be offset by how you won't be sending it to others' servers and it won't be harvestable? I think there will always be a market for data. Urbit potentially lets you get your coins or have some agreement for the data you send to whoever you're peering with, but it doesn't address the lateral data relations problem like cohorts and address books. mass data collection is incredibly useful. I'm glad that we, for instance, have lots of data reflecting the current capacity of hospitals and how many people have tested positive for COVID. I'd like for us to have a contact tracing system, but our state decided against it due to the fact that there wasn't enough trust in how peoples data would be used after collected for this purpose I'll get off my data governance horse now

🐴 2
lilactown19:07:45

I wonder how much of the way Urbit works had to be implemented at the VM level. i.e. I wonder if we could build a similar event sourced, deterministic system in Clojure on the JVM

sova-soars-the-sora19:07:59

@ben.sless have you heard / seen of GNU Guix?

Ben Sless19:07:50

@U4YGF4NGM I'll just say it takes an afternoon to implement a performant Nock interpreter. You can dump the decompiled Hoon compiler from a running Urbit and bootstrap from there @U3ES97LAC yes, how is it related?

Ben Sless19:07:14

But good luck if you want performance, Nock has one mathematical operator: Increment

Ben Sless19:07:43

But

(loop [state init]
  (let [v (<! in)
        effect (e state v)
        state (f state v)]
    (>! out effect)
    (recur state)))
This is the VM, essentially

Ben Sless19:07:51

"the rest is commentary"

sova-soars-the-sora20:07:12

Guix is the same idea of freeze OS state load OS state and get the same result, and is LISPy

Ben Sless20:07:19

It's just unix with a coat of paint. By freezing state, think about smalltalk

sova-soars-the-sora20:07:27

I don’t know anything about small talk, I’m pretty new in the sphere of cool lispy things

Ben Sless20:07:03

In smalltalk everything is an object

Ben Sless20:07:25

You develop on a VM and save a full image of it

Ben Sless20:07:33

Theoretically you don't need files

Ben Sless20:07:53

Just the image

Ben Sless20:07:33

Imagine you could freeze the state if a JVM to a file then pick it up later

Ben Sless20:07:48

And the IDE was integrated with it

sova-soars-the-sora20:07:12

Hibernate the VM… could be cool. I think there is something I saw recently to pause calculations on big things and continue them later…

Ben Sless09:07:03

Not just calculation, imagine the entire state you built up in the repl, the entire state of a running application. Freeze to a file, move to another computer half a planet away, pick up where you stopped