you are viewing a single comment's thread.

view the rest of the comments →

[–]d3rr 2 insightful - 1 fun2 insightful - 0 fun3 insightful - 1 fun -  (10 children)

I've thought about that too wizz, I think it'd be possible.

[–]wizzwizz4 3 insightful - 1 fun3 insightful - 0 fun4 insightful - 1 fun -  (9 children)

The hardest part would be allowing posts and comments from external sites to be posted on normal pages. How hard is it to add an extra column to the posts and comments tables, setting every row's value of the column to NULL?

[–]d3rr 2 insightful - 1 fun2 insightful - 0 fun3 insightful - 1 fun -  (8 children)

it's pretty easy to add a new attribute to posts and comments that defaults to empty. you've gotta deal with subs though too?

existing federated reddits:

https://prismo.xyz/

https://gitlab.com/prismosuite/prismo

https://dev.lemmy.ml/#/

https://github.com/dessalines/lemmy

and maybe notabug?

edit:

i like this idea of baby steps into the fediverse, like with using your saidit account elsewhere, sounds pretty cool.

[–]wizzwizz4 2 insightful - 1 fun2 insightful - 0 fun3 insightful - 1 fun -  (3 children)

Subs are easy; you just cache basic data for the listings and then request it from the external site when you need to view it. Any content on there is stored on the external site, and maybe a copy's kept for convenience on user pages but that's non-canonical.

Does SQLAlchemy let you add a new attribute to the magic Table object, run the code in prod and automatically update the database? Or do you have to run SQL commands to add the column manually?

Hadn't seen Lemmy; that's cool. Also, it reminds me of one other issue:

Other sites have different voting systems. If we're going to federate with them, we need to genericise the way we represent votes or everything will fall over when we try to pass content to and from somewhere with only one vote, or with upvote and downvote, or even with three types of vote.

Here's one possible way of doing that: we have a votes table, where each vote has an id. Then we— wait, that won't work.

[–]d3rr 3 insightful - 1 fun3 insightful - 0 fun4 insightful - 1 fun -  (2 children)

Does SQLAlchemy let you add a new attribute to the magic Table object, run the code in prod and automatically update the database?

Yes, new db columns/rows are happening automatically based on changes in code.

genericise the way we represent votes

we can just call our points whatever the protocol wants to call them, upvotes or likes or whatever.

[–]wizzwizz4 2 insightful - 2 fun2 insightful - 1 fun3 insightful - 2 fun -  (1 child)

No, I mean…

Let's say (and this wouldn't ever happen) that we convinced Reddit to add federation support identical to our own. When you're viewing Reddit posts from Saidit, and find something funny, and click the fun button… they get a downvote. And conversely, if you don't like something on Saidit-from-Reddit, you want to downvote it, but accidentally mark it "fun".

What do we do about that?


Incidentally, /s/CringeAnarchy has CSS'd in up and down arrows, which isn't such a smart move as the mod probably thought it was. Do you want to try to explain, or just leave it?

[–]d3rr 3 insightful - 1 fun3 insightful - 0 fun4 insightful - 1 fun -  (0 children)

What do we do about that?

Well since only SaidIt clones will have the same voting model, the best we can do is work around it. If a downvote comes in, it's discarded (edit: or subtract downvotes from the upvotes if both are present). For a fun vote to go out, it either counts as another upvote or it's discarded. Etc. etc.

Do you want to try to explain, or just leave it?

I'm just gonna live and let live. Maybe they like it because it ups the cringe factor. Surely they will notice the score in the sidebar not subtracting points on "downvotes" sooner or later. Edit: they have already changed them anyway.

[–]JasonCarswell 2 insightful - 1 fun2 insightful - 0 fun3 insightful - 1 fun -  (3 children)

I didn't know about these! When did these happen? Worth reposting with details, how they work, and a run down on /s/DecentralizeAllThings

Also, have you considered them? Looked at their code? Etc?

What are the pros and cons of each?

This seems huge! It's exciting to say the least.

[–]d3rr 2 insightful - 1 fun2 insightful - 0 fun3 insightful - 1 fun -  (2 children)

They are both very early projects. Prismo is a little further along and has been live for a year. They used to have https://prismo.news but then dude accidentally deleted the DB and lost a year of content. Now they're at https://prismo.xyz

I'd certainly entertain switching if the feature set was right.

[–]JasonCarswell 1 insightful - 1 fun1 insightful - 0 fun2 insightful - 1 fun -  (1 child)

I hope you have backups.

[–]d3rr 2 insightful - 2 fun2 insightful - 1 fun3 insightful - 2 fun -  (0 children)