 Let's see if this actually goes. Hi, everyone. All right. There we go. Cool. Well, it was super cool to see kind of your full presentation about GifCoin and kind of all the ideology that came into that. And so I'm going to kind of look one layer deeper of like how we can actually store all this data that we need to create these kind of pluralistic profiles of individuals that contribute to these systems. And yeah, so the network we've been building is really designed to allow us to have a kind of web scale data throughput in a decentralized way. And I'll kind of dive into what it means. But first, I kind of want to give an overview of what this really is. So this is a slight adaption of a talk I gave at the decentralized science conference. There was last few days. So if you missed that, there was really good, good conference. And so this is kind of talking from the perspective of like a knowledge graph that really generalizes to like a graph of contributions and application data generally. So what we set out to achieve, like maybe to take a step back, when we started building ceramic, we were really trying to build a system for identity. But we realized that identity is like not really about you going through some institution, getting some potential, getting like a passport. It's like officially stamped by a government. If you think about the real world identity, it's more about the relationships you have with people and the relationship you have to the world, like your interactions essentially. And so we wanted to kind of capture that in a digital form. So we kind of started thinking about it as a knowledge graph of the internet or generally like a contribution graph. It needs to be kind of living and relational, both data and it needs to relate to each other. But also like the relationship between people, how they interact online, can also be captured. And one way to think about this is as an emergent web of trust. Some of you might be familiar with like this old PGP Web of Trust project. I think the reason that didn't work was that it was trying to like introduce this new social norms about like verifying each other's keys and stuff like that was really difficult for people to understand. But if we kind of can have interactions with the digital design, we can start to kind of have an emergent web of trust. And from that we can start to extract this kind of like social proximity which Kevin and the GIF going guys talked about just now. And once we have this kind of open data graph where we start to do like collaborative sense making in that. And so I'm going to talk about some of the properties that is really needed to GIF this. First of all we want to be able to share data across applications and across organizations. We don't want to data if we lock into like big stakeholders that just hold the data for themselves and kind of keep it captured. And we want people to plug into the system and optimize for their specific workflows. Everyone's not going to want to query data in the same way from the system. And we want the data to be composable. If a GIF going creates their kind of profile that adds very powerful credentials, someone else should be able to plug into that view that also like maybe creates a new way of adding data and still kind of leverage your old data and reference that old data. I think with this we can increase kind of the rate of innovation in this kind of ways of looking at the reality. Finally we need authenticity. So we need the system to be censorship resistant. We don't want arbitrary actors to be able to remove stuff. We want every action to be authenticated. This essentially means that users will like sign data or essentially like accounts will sign data. I think an important piece to realize here is that the system is sift-on. It doesn't like require any real kind of real world identity, whatever that would mean information. And we also want kind of like secure time stamping. So we have like verifiable all the product trails of like what happened and what point in time. And with this authors of data can kind of build reputation. So how can we build this system? Well can we just put it on the blockchain? The blockchain kind of provides all of this functionality. Well the problem with blockchain systems is that some of you might have noticed they don't scale very well. And so the reason for this is that they favor something called strong consistency. Essentially that means that all transactions need to be ordered in a particular way. And this is really good because all transactions need to be ordered completely. And there can't be like two nodes that have like different ideas of what state of the blockchain is. This great prevents double spends allows us to do all these nice financial things. We can do fund management through DAO so we can fund public goods. We can have cool NFTs that can have a lot of use cases beyond like you know only like pictures on line. But yeah the main limitation here in throughput is that at every block there needs to be an individual block producer that's chosen by whatever consensus mechanism you have to produce the block. Which essentially makes the scalability limit whatever one node in the network the smallest node in the network can produce. Or can't compute. So there's essentially two ways that different projects are taking to scale blockchains for data. There's two camps. So big block camp is Solana, Celestia, Army. They basically have different mechanisms of kind of convincing themselves in the community like hey this is secure. And that's all well good but the problem is you still have a big computer that needs to process all of the transactions and you can think about applications such as Twitter and Facebook and Messenger and these things. They can't scale by having like one centralized server. They actually need to have a huge distributed system. So thinking that we can scale to web scale with a blockchain system that we set big blocks that's pretty far, we're going to get pretty far off the mark. There's another approach called proof of storage. Essentially that means that you as a user of the system you can make an agreement with some node or a set of nodes in the network like hey you can store this big chunk of data and there's like proofs that make kind of guarantees that the data will be there when you want it back. Just great now we have much more throughput in the system but for every kind of agreement you make you need to make a transaction that needs to go into the block. Most of the time if you have like millions or hundreds of millions of users all of those updates are not going to be like big data updates it's going to be small updates that each individual makes so we're still kind of like not going to be able to get that through all of those small updates we still need to go through the block. So we need something different. We need a decentralized system that is eventually consistent that allows us to produce data in parallel without having the limitation of this block producer that they have in a blockchain and so I think we can achieve this if we have verifiable audit trails and ideally that can enable us to have data compulsability. One key thing to note here is we can we can achieve parallel data production without this kind of and having eventual consistency by focusing on non-financial data because the financial data use case really need this strong consistency to be able to function correctly. So let's focus on non-financial data I kind of tend to think of that as like sold out data because you can't like trade it. So with ceramic we're building a solution for this and we essentially split it into three pieces events streaming at the bottom like a hash linked log of events on top of that an indexing system that basically builds a view on top of the event streams and on top of that is like a GraphQL API that allows you to like easily query the data within the system. So at the bottom we focus on making event streams available so these are independently verifiable event logs I can sync the state and verify the validity of one individual event stream without having to know anything about the rest of the state of the network and so this is quite different from a blockchain where you need to sync the entire blockchain to know what's going on and each of these event streams are produced by an individual account so we use DIVs which is a way to represent the accounts and this kind of allows us to have individual or like support any sort of blockchain laws so right now supporting MetaMask but we're working on extending that to like any any blockchain wall if you can sign a message and DIV is like a really good way of making an abstraction for that so each individual account produces their own event streams so you can choose to index essentially like one account or across multiple accounts and we use the peer-to-peer network to synchronize the event streams so you can connect to the network synchronize only the event streams so like as a user of the system you would produce your own event streams and there's no way to trade those event streams so you should type to your account to your Ethereum address or to whatever other address you have and an interesting thing also is that I can produce an event stream that makes verifiable credentials and claims about other individuals I can claim that you're here and Kevin could also have done that and claimed that about everyone here as well and then you can build an index on top of event streams for like the presenters of tonight and kind of query information about kind of social complex and that data will also be sold out because you can't really trade that high with so the event streams probably looks like this every event here is put into this hash and then you can kind of build this hash linked stream of events and so the genesis event is just like the creation basically ties the event stream to your account and then the sign event updates to this event stream and we also periodically anchor these event streams into the blockchain and this is key for like the security of the system because we can now get like secure timestamps you might wonder like if now I need to make a transaction for like every time I want to anchor this into the blockchain you know that seems like a limitation but it's pretty simple to get around that we can just take a bunch of updates to a bunch of different streams build a merkle tree or some sort of vector commitment you just put the root of the tree or like so the vector commitment on chain so we can basically group a bunch of updates and put them on the blockchain and so on top of the event streaming layer we have the indexing layer and so each node in the network can choose to build an index on top of the event streams and this index is essentially they can essentially choose which data to index so we have like an abstraction called data models which allows you to create a subset of data that describes essentially semantically describes some data that you might use for your application and each node can choose like which model to index and they don't need to index this data the entire network so this is kind of like what really makes it scalable because each node can just choose what they prefer to look at and the interesting thing also with this kind of event streaming and that indexing on top approach is that if someone is not satisfied with the kind of database layout of whatever you get from indexing they can just plug in directly to the event streams and read the data maybe perform actions directly based on events or build a different sort of index and I think this flexibility is really key and so finally on top we're building this more easy to use interface for engineers and developers to create and add data to the system so we call this data models you can create them using standard graphql schema definition language you can query the data using graphql and these models you can discover models that have already been created and you can kind of compose them you can take existing model create a new model that maybe referenced all data or add some original data which yeah just like same sort of composability of smart contracts but without the financial pieces and finally here the interesting piece of data models is that you as a developer you define the data model but then you don't actually define how a database where a user is right any user can create an event stream that writes data to this data model and as a developer you can choose to query all data across all of the users or query data across maybe like only the specific NFT holders or something like that so you can kind of choose it's like an open open system where anyone can write but you can choose which things to include in your view so here's a quick example of what this would look like is that you have here potentially have a proposal and it has an author which is provided automatically by the system to reference to another data model which is a comment this is pretty much the same but it has a proposal ID which basically a reference back to the original proposal so you can see how you can create two different data models here and how they can reference each other and propose and potentially someone could come in now if I build this application for DAW proposals or whatever someone else could come in like hey I want to be able to like proposals and I'll quote in DAW more comments so you can add a new data model and it allows for that alright so quickly some use cases these are kind of like more tailored to the decentralized science thing because this slide is from but I think it's really interesting to think about this sort of way of modeling data as a semantic knowledge graph where you describe kind of the data you put into the system and the relationships between data another interesting aspect is you can have more direct collaboration on things because you have this kind of open write access to write to a data model and any user can for example like create a proposal any user can create a comment and it's up to kind of the application to choose which data to query and it's useful for citizen science it's useful for building DAWs in general I think I think the last and I think most interesting piece of this is that once you have this kind of graph of interactions between users how people contribute to communities maybe they made a proposal, maybe they made insightful comments and whatever else you might model into your application you can look at this graph of contributions to your open DAW ecosystem and see which account, which autonomous accounts contributed and do some sort of like communal retroactive funding for the individuals that contributed and there you could of course take into consideration like plurality and things like that as well alright, thank you for listening I hope that was helpful are you going to take some questions if we have time, yeah sure yeah, I think we have at least five minutes I hear some careful questions bye there, thanks for the talk I just wanted to check my own understanding so event sourcing is about you only ever add that you don't edit to your data sets is that right? yeah, I mean you can think of an event stream as a stream where you put events and you can create updates and delete as actions so you can put different actions into this event streams and those can be like great updates so you can deal with removing illegal content or the right to be forgotten for instance yeah, so each event stream is each node essentially chooses which event streams they keep available and pin to their node so if there is something that you don't want to be kept available on your particular node you can remove that cool, thank you can you have a question? okay here we have one I was doing some research and I didn't want to lose any data so I thought maybe start that data on the blockchain you had some projects in your slides like FIPE one and I think there is not this one, we have like decentralized file space or file system is that also a use case you can do around Kermans? yeah, so ceramic actually uses for the event stream the way it's represented is using the same data model as IPFS uses it's called IPLE and it's basically a way to put data into a hash linked graph and refer to and kind of create DAX directed by cyclic graphs using in a kind of standard way of representing this data you can actually represent the theory in blockchain or like Bitcoin blockchain inside of IPLB and the nodes there is a ceramic token? there is no ceramic token right now but there is going to be because like in here right now in the event streaming layer you need to run your own node and choose which event streams to keep available as an end user that's a hassle right so I want to be able to pay the network to keep my data available as long as I want and so we're adding an incentive layer using a token to achieve that did you think about like a lot of other projects have like single point affairs and if there is an emergency like nuclear war we maybe have some soon or not yeah did you think about the price from the token drops maybe your node will turn off or nodes will turn off because there is no incentive of running a node so yeah, the files are lost maybe because nodes are turned off no it's definitely about concern I think it's true for like any decentralized crypto system that uses the token incentives one interesting aspect of ceramic in particular is that I can even if there is like this tokenized network and I if I don't I think that like okay if the token goes to nothing and like I don't believe in the current remediation strategy I can still run a node and keep those event streams available on my node and if the incentive mechanism stops working the event streams will still be available in the network thank you I can project so let's take the mic for the recording so other than keeping their souls are there other other like real applications people are starting to use with this or anything else that kind of brings it to life yeah one interesting example that recently got published is cyberconnect they're building kind of a profile page for projects in the web 3 space I think as the web 3 space have grown it's become like much harder and harder to like actually know what's going on and like which projects are relevant because we have no source of truth and I think like if they can achieve like one source of truth that would be interesting so that's just like simple profile page for projects but I think they are planning to expand that into more of a social network so like the social use cases are interesting I think like generally projects around like now coordination is interesting as well I talked to a bunch of projects that would be interested in using ceramics at the B-side conference for like lab dollars an interesting example essentially going to create a marketplace for people to run lab experiments so a someone that has an experiment could put out a proposal and people could use that cool thanks maybe a last question Joy? anyone? no? don't be shy guys I'm curious how you see like competitor protocols that are sort of more single purpose like focused around a certain use case competitors which seems to be sort of very general sort of protocol in the sort of social aspects you have some example well like lens protocols trying to do like social media stuff I mean they're trying to do it on Jane but it seems like social media applications could be built on something like lens protocol or something like ceramics I'm curious which way you see the advantages of ceramic over things like lens yeah so I don't see it as like a strict competition like I think lens does interesting things because you can have like incentives through the NFT organization and ceramic is not really about like NFTs it's about like generally building a high throughput data system I think like if you try to build a system that makes everything all the data into an NFT you're going to run into this problem you can't scale a strongly consistent system to the scale of the internet like we can't do that in rep 2 like why would we be able to do that in rep 3 to me that doesn't make sense but if we can leverage the benefit of like high throughput data that ceramic brings with kind of financialization of certain aspects like lens brings I think that's the best of both worlds thank you very much again so let's now take a little 10 minutes break to enjoy some drinks and to grease a little bit and then we'll come back for the last part of the session