Showing posts with label open source. Show all posts
Showing posts with label open source. Show all posts

Tuesday, November 25, 2025

Building Decentralized Social Media: A Peer-to-Peer Alternative to Facebook



https://p2p-social.github.io/ 


Building Decentralized Social Media: A Peer-to-Peer Alternative to Facebook

By John Sowal, presented at the Dojo

The Problem with Centralized Platforms

As someone who's been involved in internet infrastructure since the early days—building some of the earliest CDNs in '92-'94 and working on streaming video—I've watched the evolution of social media with growing concern. The Twitter Files revelations and ongoing issues with Facebook have made one thing clear: we need alternatives to centralized social media platforms.

The core problem is simple but fundamental. As Jack Dorsey pointed out, any company-based platform is vulnerable. The moment you incorporate, governments can issue subpoenas, apply pressure, and force compromises. The result? Increasingly aggressive content moderation that goes far beyond preventing genuine harm.

Real-World Censorship Examples

The filtering has become absurdly disruptive:

  • Getting banned for posting clips from Hollywood movies
  • Facebook jail memes and pins have become so common they're being sold as merchandise
  • Feeds filled with algorithmic content instead of posts from actual friends
  • Legitimate technical content blocked by AI filters (try sharing information about Yasa electric motors—it's blocked because a Turkish politician shares the name)
  • Humor and satire flagged as "false information"

I just want to do what I did with my BBS in 1987—one of the largest in the Bay Area, called Turbo Sysco. Back then, we'd share San Jose Mercury tech articles and discuss them freely. Today, that simple activity feels impossible on Facebook.

The Technical Vision

Can we build something better using modern browser capabilities? The answer is yes. Today's browsers are incredibly powerful:

  • Enormous compute resources: Access to GPU, WebGL, WebGPU
  • Significant storage: Browser-based storage systems
  • WebRTC: Enables mesh networking between peers
  • Flexible data management: Ability to simulate drives, export/import databases

The architecture I envisioned uses relays with WebRTC to establish connections between nodes, creating a truly distributed system where code executes in browser tabs rather than on centralized servers.

Exploring Existing Solutions

Before building from scratch, I surveyed the landscape:

PureJS

Interesting pure JavaScript implementation, but lacked the full feature set needed.

Croquet

Really impressive real-time synchronization. Their demo shows perfect timing across devices—open it on your phone and desktop, and they stay in perfect sync. The platform can run server modules directly in the browser, generating and rendering content while keeping everyone synchronized for gaming and interactive experiences.

The catch? You need an account with them. If the FBI or anyone else wanted to shut you down, they could simply turn off your account. Still centralized.

CYFS

Very interesting—they actually implemented something remarkably close to what I had sketched out independently.

Gun (by Mark Nadal)

I met Mark Nadal at the Dojo about a month ago, and his architecture is exactly what I had sketched out. It uses relays for WebRTC introductions (just like I proposed), but they're simply backups—the real communication happens peer-to-peer. I've been working hard to implement this, though as someone who isn't primarily a Node developer, it's been a brutal learning curve. (ChatGPT has been invaluable for deciphering the alphabet soup of modern web libraries.)

Nostr

The newest entrant, and it shows real promise. Unlike Mastodon's federated approach, Nostr is more censorship-resistant. While relay operators can filter content, your data persists on the protocol indefinitely. There's no central authority that can remove you entirely.

Mastodon vs. Nostr: Federation vs. True Distribution

Mastodon is distributed but federated. My experience showed that you can still get booted from instances for simply publishing links. Because there are people managing these relays, moderation creeps back in.

Nostr, on the other hand, can't be stopped in the same way. Individual relays might filter you, but your data remains on the protocol. As one attendee noted: "there's no filter—it's beautiful."

However, Nostr isn't truly peer-to-peer; everything still goes through relays. Gun's approach is more aligned with pure P2P, using relays only for initial introductions.

My Vision: Radical Transparency Without Interference

Here's my position: I don't even want to encrypt everything. If authorities want to monitor conversations, fine—do it in clear text. What I object to is the interference, the filtering, the fact-checking, the blocked links.

If I'm posting something illegal, let the FBI arrest me. But don't interfere with normal conversation. The bar for censorship has become absurdly low.

I want:

  • A Facebook-like site where I can chat with friends
  • The ability to share links without arbitrary blocking
  • Discussion of news articles without algorithmic interference
  • No "old lady in the middle of the conversation judging everything"

Technical Advantages

A truly peer-to-peer system offers compelling benefits:

  • Zero bandwidth costs: Pull as much data as fast as you want
  • No server fees: No backend infrastructure to maintain
  • Resilience: No central point of failure
  • Static hosting: Code can live on GitHub Pages—free and reliable
  • Rich capabilities: Build virtual worlds, 3D animations, VR experiences, multiplayer interactive content
  • User control: Each person can run their own relay if desired

Addressing Concerns

Q: Won't peer-to-peer put illegal content on my computer?

Ideally, encryption or other mechanisms prevent you from accessing cached content. More importantly, if designed as a caching system, you're only keeping copies of content you've actually viewed—not redistributing material you never looked at.

Q: How will people find each other without indexing?

Through direct sharing of keys, handles, or identifiers. In my case, I have my own domain and can run a relay, making myself discoverable. Users can share their connection information directly with friends.

The Path Forward

We're at a crossroads. The centralized social media experiment has shown its limitations. Censorship, algorithmic manipulation, and corporate vulnerability to government pressure have made these platforms increasingly hostile to free discourse.

The technology exists today to build alternatives. WebRTC, modern browsers, and systems like Gun and Nostr provide the building blocks. What we need is the will to build these systems and the community to adopt them.

The future of social media doesn't have to run through Silicon Valley data centers. It can run in your browser, connecting directly to your friends, with no intermediary deciding what you can say or share.


Interested in learning more about peer-to-peer social networking? Check out these projects:

Wednesday, June 17, 2020

AudioByte, Amiga Mod files and Chip Tunes.



It all comes full circle. 

All that stuff  Jesse Monroy and myself did 30 years back,
AudioByte (Originally Sound Byte)
The Original Parallel Port Dongle audio adapter.


Editor and Mod file players in Intel x86 assembly code.

More at:  http://www.dnull.com/zebraresearch/
               https://github.com/johnsokol/AudioByte
   

 Now I stumble on WebAssembly and OpenGL and realize I have more power in a browser tab  than I had on the $250,000 4 cpu SGI workstation at stanford.

Certainly dwarfing the 10 Mhz 286 I had in those days.

Then I found chiptunes. This is super cool. 

These guys are mad crazy about video game emulators and reproducing the hardware faithfully.

https://deskjet.github.io/chiptune.js/    A player you can drop Amiga Mod files on and play them.

 http://www.dnull.com/mod/files.html   My mod file collection.

 And the new version, not as good.
https://deskjet.github.io/chiptune2.js/#  


But this is WOW!!!!   it's like wow.  A universe unto itself. 
https://mmontag.github.io/chip-player-js/browse/ModArchives?play=ModArchives%2Faws_aq16.xm

Best part it's all open source and hosted free of charge on github. 


--

Wednesday, December 28, 2011

Can you trust your Software ?

We have a major crisis brewing.  One that's been slowly creeping up and the general public is plagued with problems and helpless to do anything about it.

Can users trust their computer?

 Most of us at some point find ourselves with a computer that's full of Virus's, Trojans, spyware, tracking software and other malware.  Few realize there is even a problem till accounts have been compromised, the computers become next to unusable, or are they shut down by a service provider because there computer is sending bad things.

The World Wide Web had become the Wild Wild West as soon as the mass public started using the Internet.

What is amazing is the legislation and law enforcement are making faster strides at dealing with this then the computer programmers!   Funny because the perception is Software is fast and flexible while the law and government are slow and unresponsive.  On a micro scale that is clearly the case, but on a macro scale, Software hasn't made any strides at all to deal with larger overall security issues. Meanwhile the Law can now pull down web sites, block IP, seize servers, monitor traffic, and put out International Arrest Warrants.

Just look at Wikileaks for an example of who is winning Law vs Software?  Never in a million years would I have guessed the System was more responsive then the Hackers.

I create OccupyInside.org because we need to control this software.  Software need to be transparent, Secure and Open Source.

Transparency Begets Trust

Trust builds Confidence

Confidence Builds Success



I think we need some new models for supporting Software development efforts. New methods for management and control of software development, distribution, security and trust.  We need to get this conversation started. 


John L. Sokol


From SlashDot:


Why American Corporate Software Can No Longer Be Trusted

Posted by Soulskill 
from the looking-out-for-number-one dept.

jrepin writes"There is a problem with proprietary, closed software, which makes Rick Falkvinge, the founder of the first Pirate Party, a bit uneasy: 'We get a serious democratic deficit when the citizens are not able to inspect if the computers running the country's administrations are actually doing what they claim to be doing, doing all that and something else invisibly on top, doing the wrong thing in the wrong way at the wrong time, or doing nothing at all. ... In the debate around the American Stop Online Piracy Act, American legislators have demonstrated a clear capability and willingness to interfere with the technical operations of American products, when doing so furthers American political interests regardless of the policy situation in the customer’s country."

Thursday, July 07, 2011

Ask Slashdot: Open Patent Licenses?

Ask Slashdot: Open Patent Licenses?

"We are working on a new piece of code that will be protected under a GPL license, this is fine for the code itself, but what about our 'innovations'? Are there any 'Open Patent License' models similar to the GPL or Creative Commons? We have Google patenting the highlight of search occurrences, Facebook protecting the word 'Book,' and Apple registering body movements. This is becoming ridiculous to a point. Now the patent trolls are making a killing as well. Does the open source community has a good way to protect its innovations and inventions? There are some initiatives to buy patents and release them to the public or at least place them is a protected area, but where would my very small company register a new way to include titles in a private message? Where could Drupal patent the use of 'hooks' to let developers interact with the core of the application? (If they invented this, I am not really sure.) I don't want to wake up in 10 years and discover that X huge company patented my innovation and that now I actually have to pay them for it."

There's OpenPatents.org, there's the Open Source Hardware and Design Alliance, there's CERN's newly-updated Open Hardware license, and there are domain-specific patent sharing organizations like the Open Patent Alliance; what else is out there?