Is Diaspora anything like this idea I had for the raspberry pi?

30 views
Skip to first unread message

Andrew Singleton

unread,
Sep 25, 2016, 4:34:32 AM9/25/16
to diaspora-discuss

Concept

A machine that is portable, can talk to other machines like itself to gather files, news, and other things users can access through their web browser be it through desktop, laptop, phone, whatever has a browser. Ideally at no point would the internet be needed for this, including software updates.


Best example i can come up with is a combination reddit/facebook and a networked hard-drive.


When Users connect to a machine

There should be a nice friendly welcome page that is minimally customize-able (because Myspace proved the kind of cancer totally user customization of the welcome page is.) This page has as defaults the following links: About the Thing, What this thing offers, The News this Thing serves as selected by the user, and how to make your own Thing both in terms of parts, and downloadable files along with instructions on how to turn it all into a working Thing.


While a facebook-like timeline of entries would probably be best as a 'this is the person who's Machine you have connected to' type of thing... I want it to be more than just 'facebook off the internet.' I want it to cover not just 'what I had for breakfast' or 'what's on my mind' but say a local band or other thing made a thing I like I would want to share it so other people can connect.


It would be nice if there was a Wiki like set of pages the Thing's owner can arrange the News/Media/what-have-you for public consumption in an easy to look at manner.


Optionally this would include a Discorse type forum, a discord-like chat thing, and a way for you the user to upload stuff into the Thing.


When Owner Connects to Thing

When the Thing's owner connects to it and identifies 'yes i am the owner of this Thing, let me in so i can do Owner Things' the following should happen.


The Owner will see what random users have uploaded to the Thing and decide what is worth sharing, what should be deleted, what to leave where it is.


Similarly if the owner pokes at their own Machien they should see what the machine has gotten from other machines to see what is worth sharing, what is bad/wrong drop it, what is flagged as a Bad Thing (more later in document on Bad Things.)


Optionally but strongly desired there should be ongoing Discussions that only the box's owner sees or the owner can flag as publicly viewable. These messages can get shared from box to box to box (think Usenet or mailing lists if you know what those are. If you don't, think facebook posts that get responded to months later or reddit posts that never get locked.)


The ability to easily edit the 'wiki' or other page layout to showcase what Users see and how. IE do Users see the news' first? How-to's? music/movies/media?


Adjust the tags the Thing is supposed to look out for to automatically grab when connected to other Things so there's new stuff both for personal and public consumption.


When Machines connect to other Machines

For the sake of simplicity let's consider this as Machine A connects to Machine B. YHowever Machine A could be talking to B, C, D-Q through all this.


Machine A goes Are you a Machine or a User? If you are a Machine respond like This, otherwise I am going to assume you are a User.'

Machine B goes 'I am a Machine.'


Machine A has a list that reads along the lines of: 'My owner wants anything you have that is tagged as News, Home Improvements, How-To's, Movies, Music, Genre, Item, Item, Item.'


Machine B goes 'I have Item, How To's, Item, Item.' Machine B then lists off these items.


Machine A looks at this list. If Items are New 'Hey great I would like These Things.' Otherwise it will look and go 'Oh I already have those,' or possibly 'Mine are Newer. Would you like those?'


Machine B similarly gives Machine A a List of Things its owner has that it wants and the same happens.

There is a Bad Things List. Bad Things are Viruses, Bad Updates, Illigal Things. If Machine A gets a List of Things from Machine B and sees anything that is a Bad Thing it will go 'I do not want anything from you right now.' And then adds Machine B's ID (Mac Address or some other identifier) to a Bad List. Anything on the Bad List does not get talked to. Things are not shared with anyone on the Bad List. Bad Lists can be shared between Machines.


Bad Things

This could be anything a user has tagged as 'I Do Not Want This. EVER.' It could be illegal things or just 'I don't like that music.'

Because Machines on the Bad List do not get talked to it takes effort on the Owner's part for things to end up on a Bad List because mistakes happen, what You have labeled as How To might pull up a 'how to do incredibly Stupid and Dangerous Thing' when what you want is 'how to turn Broke Things into Useful Things.


It should be clear that my intent is a Bad List is the last resort, the box owner did VERY bad things to get on that list (distribting BadWrong Illegal Things, or distributed updates that do Bad Things.) Normally Machine looks at what another machine has and only asks for specific Things, unless the owner has decided to have their Machine go 'show me everything.' That way if someone is sharing things you do not like, but it isn't on your Interest List you never see it.


When Machines connect to the Internet

This one is tricky. What should happen is if a Machine connects to the Internet it will get news articles, wikipedia pages, how to guides, and other stuff that the owner has told it to grab if it detects an internet connection. (I do not know how to do this I simply describe the ideal.)

Owners need to tell it what information they trust. There needs to be a wide range of default choices so that during setup a Machine will ask it's owner 'Which of these places do you want me to go to for Information about Things you want me to grab?'

While connected to the internet it will connect to mail servers that are able to allow people to not use Their client (Google being one such service.) Mail is gotten and sent.


Why?

Because I can? Because the Internet, contrary to popular belief, is not always on or otherwise always There.


People can take these boxes to Events like concerts, conventions, gatherings, parades, and the like. Their box sees a friend's box and goes 'oh hey our owners are friends. You are Awesome! here are Things.'


Or it could be an emergency situation and people use these boxes to connect to for information on how to make the best of the situation.

Most times however I see these being used as 'oh no the home internet is down. let's see what the Box hoovered up.'


However over the years the internet has gradually gotten more locked down and censored, watched, and in short it's grown a lot less nice. This is a thought experiment I had based off of different concepts I've seen here and about online so that if the web ever becomes so locked down it's unuseable, or becomes Comcast's dream of 'channels' and unless you like something that was able to pay Comcast's tax/toll/whatever the extortion fee is called, you still have an option. the BBS is dead because there is no reliance on land lines, and nobody likes the idea of having to grab a special client since that's scary and weird and they might end up on a list.


So if all the end user has to do is point their phone at this 'SHAREBOX-USER' wifi network they can instantly get pointed to a list of stuff you feel the world would like to know.



Thee big problem here is this relies on a lot of Boxes/Machines/Whatever close enough to talk to eachother. A Machine by itself is boring in this setup other than as a thing on a person's home network that filters things out that the person that made the box wants to look at, or respond to all in one place that is accessible if the internet is there or if the internet isn't there.


This gets more interesting when Machines talk to eachother.

Cem Örsel

unread,
Sep 27, 2016, 3:04:41 AM9/27/16
to diaspora-discuss
Nice concept, i'm not a diaspora dev, just a user but from what i've seen so far, i don't think diaspora supports syncing on ad-hoc or lan network (correct me if i'm wrong). Contrary to your proposal, diaspora rather tries to prevent network partitioning, i.e. it tries to provide that each and every user account is globally connected to each other over the internet, at all times.

Your proposal would require a lot of work, but could prove to be a pretty good project imho. The greatest problems that first came to my mind are building the trust network. With such partitioned connections, it may be hard to know who you can trust, and who is malicious. Also, how do you plan to detect other machines when connected to internet? (sort-of-p2p dht tables, perhaps?)

Also -ireelevant, but- you might want to check blockchain based social network site projects. They are quite popular nowadays (although i don't know if any one will actually catch on).
Reply all
Reply to author
Forward
0 new messages