Show newer

@pry Merkle Search Trees are way more complicated to deal with and implement in my experience. I wrote up a spec for the prolly tree impl I use here: github.com/ipld/ipld/blob/776b

It talks about how merging works.

The tl;dr is you traverse the merkle tree and where you see a diff, you add in keys from there, you can quickly skip places where the data is the same. You could treat it like an eventually consistent system in that way. Also could merge just subsets of the tree according to the keyspace

@pry The other cool part is that compared to other DBs like hyperbee from holepunch.to Prolly Tree based databases can be determenistically merged without much hassle so you can have communities merging datasets into larger and larger indexes without having to fully replicate all the data, just the parts at boundries.

@pry Right now most p2p data things use some variation on an "oplog". As your data grows it gets slower and slower for a peer to get the state of the data and it makes it hard to do "sparse replication" of just the data you want.

Using an indexed database as a building block means you can replicate just the data you need for a particular db query. This means you applications get more speedy and you use less data overall. You can still do full replication in the background.

Google PR sure is taking its sweet time getting back to me about the finding that Chrome has a hidden extension that allows all *.google.com domains to monitor your CPU usage and other private system info. I'm sure they're working just as fast as they can.

simonwillison.net/2024/Jul/9/h

High on my todo list is HTTP over app messages with a local daemon that can act as a proxy.

- Register veilid service
- Run local daemon as a proxy (optionally tell it to make a safety route)
- Curl to a unix socket the daemon is listening on
- `Host` header set to the public key for the service
- Encode request as app message to the service
- Response gets sent as an HTTP response down the socket

Bad for large files, good for locally run services / automation.

Show thread

@KatS Oh good, I think back when it first came out there was a max size limitation. Glad my knowledge is out of date on that!

@pry Oh! Have you seen my blog post on peer to peer databases by any chance? blog.mauve.moe/posts/peer-to-p

I'm less into realtime document sync and more into optimizing for sparse replication of views. CRDTs are cool but they often share the same issues as oplogs. I think the latest version of automerge is pretty speedy though.

@pry @yala @quinn IIRC the datamodel and execution is similar to datalog? I'm mostly interested in "local-first" daabases so you can merge data from multiple sources as you network connectivity grows with local data being available.

Datalog over might also be cool to do some day.

@KatS Nice. Yeah I was considering just using Neo4j but I wasn't sure if the max node limit would be something I'd run into. I think my matrix server data alone leads me to at least a few million records.

@pry @yala I think the work @quinn was doing on Rhizomatic seems relevant. Unsure what the state of it is.

youtube.com/watch?v=vkMXbk7Pn_

@KatS Do you have any example projects building on it out there? Sounds relevant to what I'm into.

@yala @pry I looove datalog. Have you seen any good impls out there other than datomic? I also don't think I've seen any "live query" options out there yet.

I was thinking wrapping stuff in HTTP with an EvenSource endpoint would get pretty far towards easy to use interfaces.

Does anyone actually try to hire companies that cold call them about "services" from scraped emails? Like, when is it ever anything but annoying spam. Even if I wanted the service I sure as hell wouldn't trust the person that spammed me about it.

I think what I want instead of apps is a standard datamodel in a graph database with live queries I can tie to table views.

"the internet is a resilient network"

the internet when one cdn goes down:

Accessibility in XR: the XR fragments spec now promotes 2-button navigation as well.
Beef up your 3D models with xrfragments.org for an open, accessible, and interoperable XR internet ❤️

@lykso I think the main thing for me is that I am working accross 4 projects at once with different teams for each project. 😅 Thankfully the communications I *do* need to pay attention to are mostly signal and very little noise. Just a lot of it.

Defs more a fan of small shops.

Show older
Mauvestodon

Escape ship from centralized social media run by Mauve.