Sign in

bairun ツ

@bairun.xyz
39 followers 145 following 91 posts

working on a open, public, decentralized data protocol • bairun.xyz

PostsRepliesMedia
Reposted by bairun ツ
David Imel @davidimel.com · 20/01/2025
Start your own website. Run your own blog. Use decentralized and open-sourced platforms @ghost.org is a great open-sourced blogging platform and website builder Pixelfed is doing great work for images and runs on the social web Support open social projects so your homes on the web don't fall apart
189112341712
bairun ツ @bairun.xyz · 05/12/2024
Here’s an updated link bsky.app/profile/bair.... Not sure when it got changed
010
bairun ツ @bairun.xyz · 04/12/2024
Here's an updated link github.com/graphprotoco...
github.com
020
Reposted by bairun ツ
bairun ツ @bairun.xyz · 22/11/2024
We just released a new spec for the data structure powering our decentralized data protocol. We have a very similar mission to #atproto, but with a very different designs. I’ll talk about the protocol itself more soon. Let’s talk about graphs. github.com/graphprotoco...
github.com
272
bairun ツ @bairun.xyz · 02/12/2024
Rite of passage for new CS2 players
010
bairun ツ @bairun.xyz · 28/11/2024
I was an alpha user as well but bounced away because of how much they pivoted to documents vs notes so excited to check this out
010
bairun ツ @bairun.xyz · 27/11/2024
Designing for maximally composable data and behaviors for highly dynamic data is actually a very complex problem. Interestingly, some video game engines use this exact tagging approach to compose data and behaviors for in-game objects en.wikipedia.org/wiki/Entity_...
en.wikipedia.org
Entity component system - Wikipedia
020
bairun ツ @bairun.xyz · 27/11/2024
Consuming type-aware data is now possible for any use-case, without the complexity and rigidness of schemas and tables. It's all data pipelines, so a developer or end-user can decide what behaviors to layer on top of the type information. Or ignore it completely. 4/x
120
bairun ツ @bairun.xyz · 27/11/2024
Consumers can decide how to consume entities based on the types that it has. If an entity is a Programmer and knows Rust I might show a different UI than if they know Python. You could make a feed of all the Programmers that are also Photographers. There's a lot of us 👋🏼. 3/x
100
bairun ツ @bairun.xyz · 27/11/2024
Types in GRC-20 work like tags. A type describes which properties might exist on an entity of the given type. Types on entities are composable, so an entity might be more than one type at once. For example, an entity might be a Programmer and a Photographer. 2/x
100
bairun ツ @bairun.xyz · 27/11/2024
GRC-20 is inherently schemaless. This enables maximum composability and flexibility as anybody can add any data to any entity without the tooling friction of typed schemas and tables. This doesn't mean we can't layer types and schemas on top of the graph 1/x
151
bairun ツ @bairun.xyz · 26/11/2024
Main thing will be monetization pathways. Can a business monetize on atproto better than it could on a centralized thing? My guess is no.
110
bairun ツ @bairun.xyz · 26/11/2024
Works great for me the last few months
010
bairun ツ @bairun.xyz · 24/11/2024
Call it “Random thoughts on SQLite internals.” Turn it into a bullet list.
021
bairun ツ @bairun.xyz · 23/11/2024
unique insights can be the moat*
000
bairun ツ @bairun.xyz · 23/11/2024
data harvesting tools. Maybe bsky the company has the best data science team with the best insights they can sell to people and that’s their monetization. At that point it’s Web 2.0 monetization with extra decentralization steps.
000
bairun ツ @bairun.xyz · 23/11/2024
Eventually the people undercutting competitors will have to make money somehow, but there’s no obvious way to do it that competitors can’t just replicate. Data science teams will probably be the money makers, because unique insights can be the most. So any products built on open data just become…
200
bairun ツ @bairun.xyz · 23/11/2024
That’s the biggest problem with an open, decentralized platform in general. Monetization. Anybody can undercut your pricing or provide the same service service in a better way because the data is open. The only moat is the product, which is great for consumers but a tough position for businesses.
100
bairun ツ @bairun.xyz · 22/11/2024
Like everything there’s tradeoffs for this model, namely developer tooling for graphs vs tables. I’ll talk about how we’re solving this with schemas and types soon.
000
bairun ツ @bairun.xyz · 22/11/2024
We think this model is incredibly powerful for composability and extensibility over public, open, decentralized data. It’s effectively a giant knowledge graph with subgraphs for each community composed into a global mega-graph. This is working today with a small set of alpha users.
100
bairun ツ @bairun.xyz · 22/11/2024
Community A and Individual B can add data to the same node permissionlessly, but they can’t change the data from other communities unless they are a member. This enables different groups to add their own views and perspectives to the same data. Maximum composability over the same data.
100
bairun ツ @bairun.xyz · 22/11/2024
Where this gets interesting is that you can layer a permissions and scoping model over the data. Each piece of data in the graph is scoped to an id which represents an individual or community.
100
bairun ツ @bairun.xyz · 22/11/2024
Interoperability in this graph model just comes down to using the same node id. Extending the node is just adding new properties or edges to it. No need to run migrations to merge it into your database schema.
100
bairun ツ @bairun.xyz · 22/11/2024
In a classic schema-first, row-based model, interoperability over the same data sets is much more complex. You end up needing a lot of tooling to merge someone else’s representation of a row with yours. You need to write migrations to add/remove columns in your db or change column types.
100
bairun ツ @bairun.xyz · 22/11/2024
You can add as many properties as you want to represent this node. Additional, you can add edges. Edges represent relationships between Nodes. Byron is Married to Jess. Married to is an Edge, and in our model it’s actually a Node, too. So you can add data to it like “Marriage date.”
100
bairun ツ @bairun.xyz · 22/11/2024
In a graph-approach, every concept, place, thing, person, etc. is represented by a globally unique node id. The data itself is what gives this id semantic meaning. There could be a node with a unique id and a property defining that the name of the node is “Byron.” This adds meaning.
100
bairun ツ @bairun.xyz · 22/11/2024
In a world of interoperable public data you want people to converge on existing data sets. You want people to be able to extend these data sets for their own uses easily. You want to be able to compose data across organizational boundaries permissionlessly. Graphs are perfect for this.
100
bairun ツ @bairun.xyz · 22/11/2024
We just released a new spec for the data structure powering our decentralized data protocol. We have a very similar mission to #atproto, but with a very different designs. I’ll talk about the protocol itself more soon. Let’s talk about graphs. github.com/graphprotoco...
github.com
272
bairun ツ @bairun.xyz · 22/11/2024
We need reclaim web3 for sure
000
bairun ツ @bairun.xyz · 21/11/2024
This is so much better. Previously my feed was like 80% people I don’t follow. Now it’s basically exclusively people I follow.
110
bairun ツ @bairun.xyz · 21/11/2024
Introduce yourself with four video games
020
bairun ツ @bairun.xyz · 20/11/2024
You could use a blockchain if you want to emit the CIDs from a PDS and it would solve the same problem as the relayer. Or you could write a federation layer. I think the atproto design misses a lot of what I think is useful for composability in a decentralized data network, but PDS is very flexible
000
bairun ツ @bairun.xyz · 20/11/2024
One thing that’s nice about the atproto design is that it works even without a relayer. People’s PDSs are decentralized and you could build any protocol you want to interface between them. Bsky made the relayer and that’s one way. It might not be super decentralized but that’s okay.
100
bairun ツ @bairun.xyz · 20/11/2024
Yeah I think we’re on the same page. I’m in the camp of “sufficiently decentralized should be the goal” and bsky at least is probably pretty close to that. But you’re right that it’s a spectrum. Even crypto-protocol folks doesn’t agree what is sufficiently decentralized or not.
100
bairun ツ @bairun.xyz · 20/11/2024
In any case I’m talking protocols in general, not specifically social. Bluesky can definitely be more decentralized, even if it’s not a design goal of theirs, regardless of comparisons to the decentralization of other protocols.
000
bairun ツ @bairun.xyz · 20/11/2024
Lens? Farcaster?
100
bairun ツ @bairun.xyz · 20/11/2024
I think the only way we'll see others start running the network infra is if they really need it for their uses and they're finding that the bsky operated infra isn't reliable enough, or they don't want to rely on it for some reason.
010
bairun ツ @bairun.xyz · 20/11/2024
Cryptocurrency protocols as a parallel example incentivizes others to run their network infra through cryptocurrency economics, which has proven to be very successful at getting people to help decentralize the network. Atproto doesn’t do anything to encourage people to help decentralize.
200
bairun ツ @bairun.xyz · 20/11/2024
I think they just haven’t designed atproto for network/protocol decentralization. From speaking with them previously their goal is that anybody COULD run the network, not that a sufficient number of people actually will.
100
bairun ツ @bairun.xyz · 20/11/2024
I think decentralization-maxis would be less vocal about it if people weren’t claiming that bsky is decentralized. It COULD be but it’s not yet
010
bairun ツ @bairun.xyz · 19/11/2024
Note that I’m specifically talking about operating the network, and not getting adoption of end-users. I agree that cryptocurrency is a large barrier for end-user adoption.
100
bairun ツ @bairun.xyz · 19/11/2024
Devised a way* thanks autocorrect
000
bairun ツ @bairun.xyz · 19/11/2024
If atproto wants to be completely decentralized, then they need to think about how to get people to run the infra. Financial incentives are a tried and true way of doing it. I haven’t seen a compelling alternative. I don’t think it’s a design goal of atproto though, so it will remain centralized
100
bairun ツ @bairun.xyz · 19/11/2024
I hear you but it’s an important property to decentralize power in distributed networks. If you want to run a distributed network, which atproto and their relayer are, then you need lots of people running this infra to avoid centralization. Cryptocurrency protocols have decided a way to do just that
200
bairun ツ @bairun.xyz · 19/11/2024
Sorry I mean crypto as in cryptocurrency. Cryptocurrency provides a mechanism for decentralizing power in distributed networks while also incentivizing people to do so.
000
bairun ツ @bairun.xyz · 19/11/2024
Having lots and lots of node operators is more secure. Bsky is infra is centralized in terms of trust as well. We have to trust that the bsky infra isn't censoring or modifying data in the relayer. If there's sufficient number of operators you can audit the stream output and see who is lying
000
bairun ツ @bairun.xyz · 19/11/2024
Note that I believe there's lots of things crypto aren't good at, but this is one of the things it's actually good at: creating an economy around implicit value, and paying people to operate the economy and protocol permissionlessly and durably.
100
bairun ツ @bairun.xyz · 19/11/2024
Why would people run bsky infra though? There's no reason to unless you just think it's cool or believe in the mission. What cryptocurrency protocols do is provide an economy to pay people to help operate the network, make it durable, and make it secure by incentivizing people to run a lot of nodes.
100
bairun ツ @bairun.xyz · 19/11/2024
What's happening is that there's a mismatch between decentralization re crypto protocols, and decentralization re: data protocols. atproto is probably sufficiently decentralization in that people can run their own data nodes. It's not sufficiently decentralized in terms of network infra.
100
bairun ツ @bairun.xyz · 19/11/2024
atproto and bluesky are currently centralized. If bsky infra goes down then so does the product, which we've seen many times. There aren't a sufficient number of bsky/atproto infra operators to run the network durably. The data nodes (PDS) are somewhat decentralized.
110