Ask HN: Is it time to resurrect a Usenet clone?
Lots of people keep trying but they have a ton of problems.<p>I have done a lot of research and thought about this quite a bit.<p>* For a long time P2P automatically meant crypto.  I&#x27;d rather Google use my data to get richer than Bitcoin bros waste electricity to do the same.<p>* Many were laboring under the delusion that self hosting is a sane idea.  Anyone who&#x27;s ever self hosted anything knows it takes actual effort and sometimes money, and probably won&#x27;t be as reliable as Facebook.<p>* Protocols that are immutable-first are bad. You should at least be able to try to delete your old embarrassing posts.<p>* Normal people do everything on mobile. It&#x27;s just so much better of an experience than any desktop OS.  Add a keyboard and Android is the perfect device for basic stuff.   P2P devs don&#x27;t usually support mobile.<p>* Bandwidth is a thing.  IPFS still uses too much of it.  Helium used way too much last I checked.  Disk wear and CPU is also a thing.<p>* Centralized servers are really good for performance.  I think that an ideal platform probably wouldn&#x27;t use any kind of DHT or anything, it would use a combination of local discovery, and semitrusted servers that are separate from your actual identity.<p>* Federation as seen today isn&#x27;t that meaningful in practice.  If my identity is tied to a server, there&#x27;s only one server I&#x27;m going to consider choosing.  The biggest most popular one that might stay around the longest.   Might as well just do centralized FOSS at that point.<p>* You need a killer app to make normal people who aren&#x27;t in it for political reasons use your thing.  If you don&#x27;t have that, your app will become KaczynskiNet, and I&#x27;ll just ignore it, because... nobody I know will want it and I probably won&#x27;t be able to convince them.    Free speech is a good thing, and the &quot;controversial&quot; platforms might have a valid place.... but I&#x27;m not going to spend much time on platforms almost entirely full of communities I&#x27;m not part of and don&#x27;t agree with, there&#x27;s not enough hours in the day for that.<p>* Endless scrolling is evil and sent to instantly kill any idea of persistent communication.  It does not belong anywhere but a news feed.  Even pagination isn&#x27;t ideal, we should probably be using time-based &quot;Next N records after $date&quot; pagination.<p>* I believe it also may subtly cause low grade anxiety by removing reference points and causing content pages to feel like they could change at any moment<p>* The current social media model developed around centralized servers.  Things might have to change a bit.<p>* Heirarchal nested threads do not mirror real life conversations, and complicate the UI a lot, and make it easy to miss stuff if you aren&#x27;t familiar with how stuff works.<p>The protocols involved are Not That Hard. It&#x27;s been done several times, just never polished.   Retroshare, BitTorrent, SyncThing, Jami, and Dat between them probably have 100% of the technology needed to make it work.<p>Possible solutions for a semi-decentralized model preserving some of the advantages of decentralized:<p>* Private Key based identity, no unique human-meaningful names at the protocol level.  Just use some other platform to actually find your friends instead of trying to replace the whole internet.<p>* Your data is on your device, and on any server you are registered with and set up sync with.  They can be free or paid, not the.protocols problem.<p>* Actually finding where to look for your friends stuff is not the protocols problem.  You have LAN discovery, you can manually enter a server, and the clients know to try the common servers.  Add whatever name servers or DHT extensions you want to that.<p>* Discussion threads could just be best-effort sync.  Maybe you don&#x27;t see every message if the network was partitioned but you probably will eventually.<p>* Threads could be &quot;Hosted&quot; at all servers that a user who made them is registered with.<p>* Messages contain lists of what other servers you are registered at, and you get a certificate from all of them proving it.<p>* That means the client can always find your other stuff somewhere else even if one server goes down.<p>* You can always choose to mirror a thread on all your own devices and servers for archival, and make it visible on your profile, it stays in sync, or you can freeze it so it doesn&#x27;t, or you can copy it to a brand new thread.<p>* Posts are editable and deletable.<p>* Tombstone problem solution: Content is truly gone if you know the full list of servers a user is synced with, all those servers are up to date with their device, and none of them have it.<p>* You can make a thread that requires membership at a specific server to post at, for spam restrictions.<p>* There are no categories.  You just share your thread to other threads.