Show HN: Freenet Lives – Real-Time Decentralized Apps at Scale [video]
youtube.comI gave this talk on the current-generation Freenet: a ground-up redesign focused on real-time decentralized applications rather than a static datastore.
Happy to answer questions.
My understanding (so far, I'm halfway through the second of your recorded presentations) is that the data in the network is ephemeral, held only by active peers who are hosting a contract (and thus its state).
Does that mean that if all peers hosting a given contract go offline is the state completely lost? Now what happens if a formerly offline peer starts hosting the contract with an outdated state? Does that just become the new state?
I guess I'm not 100% clear on how data persistence works. Do we entirely forgo databases and instead encode everything into the contract state?
Some more examples of comparisons to existing application infrastructure would be immensely helpful to fill in the gaps of understanding. I'll likely be writing a few articles myself once I better understand everything.
Hi, thanks for the thoughtful questions.
You’re right that data remains in Freenet only as long as people are actively interacting with or hosting it. After that, it may eventually be removed. The key point is that Freenet is a communication medium with caching, not a storage medium.
That said, it only takes a single peer to keep a contract alive by continuing to host it. We call this pinning. As long as someone maintains a subscription to the contract, its state remains available.
You’re also correct that if a contract disappears entirely and someone later reintroduces an older state, that older state becomes the state others retrieve. There is no global database preserving history independently of participants.
Happy to clarify further, especially if you’re planning to write about it.