published a draft of the rationale behind Singularity, a soon-to-be-developed decentralized social networking system. looking for advice or interested collaborators re: distributed systems, cryptography, unique challenges for marginalized people, and whatever else we might need help with.
@typhlosion @byte nice to read some opinions on a similar idea I had. While dabbling a bit with OpenFlow SDN, I had one problem: I needed a representation of a computer, to know that I'm reaching the same host twice and beyond.
Computers can have dual-ethernet, wifi, bluetooth, 5G modems and other outgoing interfaces that all use Internet Protocol. Look at your phone and wonder what happens if you used Bluteooth PAN, WiFi and 4G all at the same time. In the end, I needed a mesh protocol.
After working with an oldschool internet enthusiast, I could finally understand why university professors compared internet with telephone system: IP is basically a telephone system with a fixed size. It carries over a lot of flaws, which includes all the means for arbitrarities from any part (censorship included). I can imagine some ways to aglutinate computers, but I'm still not sure if it would scale well and still fit within the constraints of an arduino.
Instead of splitting "Identity" "Networking" and "Content" into different provider boxes, I thought like "everything is a file" and settled at "everything is a claim". A base "NULL claim" that points towards some hard-coded behavior (like pypy, it's Rpy built-ins and cpython reimplementation as py scripts) would provide the required bootstrapping.
Instead of propagating changes, some devices would prefer fetching changes and entering a low-power mode. Battery-powered devices like phones, for example.
Disallowing writing custom user-patchable server code might end up like ZeroNet, but there's the "application handles interoperability" caveat from Linked Open Data to also avoid. [+]
About patching and running code, that's a complex matter. I hope that representing code in an intermediate ontological representation allows me to run stuff together despite programming languages. The hard part will be tracking conflicting contributions (such as deep refactorings) together.
About UI, I'd avoid web browser engines as hard as I can. DIY IoT projects that relies on a ESP32 wouldn't be able to use them. Wouldn't use especially after doing accessibility checks for web pages. But GUIs are needed to exist.
All that said, I hope that the project becomes easier to build applications than playing an API deployment provider such as Heroku or Render, and looks better than electron, so people have an actual place to move out from the commercial web.
Awoo.space is a Mastodon instance where members can rely on a team of moderators to help resolve conflict, and limits federation with other instances using a specific access list to minimize abuse.
While mature content is allowed here, we strongly believe in being able to choose to engage with content on your own terms, so please make sure to put mature and potentially sensitive content behind the CW feature with enough description that people know what it's about.
Before signing up, please read our community guidelines. While it's a very broad swath of topics it covers, please do your best! We believe that as long as you're putting forth genuine effort to limit harm you might cause – even if you haven't read the document – you'll be okay!