@fabio@manganiello.social
@fabio@manganiello.social avatar

fabio

@fabio@manganiello.social

:platypush: Creator and #developer @ platypush.tech
:booking: Senior #software engineer @ booking.com
#Automation addict
🤖 #AI builder
:linux: #Linux user since 2001
🔓 #FOSS contributor
:arch: Prone to unsolicited "btw I use #Arch" statements
🏡 #SelfHost all #tech!
🔬 Open #science and open #data advocate
🎶 #Music geek
🎸 #Guitarist + occasional composer
🛹️ #Skater
🏄 #Surfer
👪 #Dad of a small geek
🇮🇹 ⇒ 🇳🇱

This profile is from a federated server and may be incomplete. Browse more on the original instance.

fabio, to random
@fabio@manganiello.social avatar

Me: “After a long consideration, I’ve decided not to defederate Threads from my personal instance, because the benefits of being able to reach out to my friends and relatives using the open tools that I’m contributing to build and run outweigh the risks, but I’ll keep an eye on it, I may reserve the right to block Threads later, and I respect and understand those who prefer to block them instead“.

Easily triggered strangers: “You self-entitled privileged cis tech bro, you are not doing enough to protect vulnerable minorities from the fascist harassers in the world out there, I hope you die from a gut infection“.

So much for “the Fediverse is an open place that embraces diversity and mutual respect where everybody should feel safe”.

fabio,
@fabio@manganiello.social avatar

I feel like @zuck may achieve his goal of killing the #Fediverse through divide et impera without even needing to kickstart the E-E-E phase.

The simple announcement that #Threads is going to federate has caused such a huge backlash, and so much pressure and retaliatory blocks and defederations towards users and admins guilty of not doing enough to block this perceived “cancer” (including @Gargron), that I feel like the Fediverse is at risk of splintering in two - a subset of instances that decided to deferate Threads, and another subset that decided not to defederate it and wants to cut all the bridges with those who haven’t.

fabio,
@fabio@manganiello.social avatar

@dg3hda what I care the most is the open protocol. If ActivityPub reaches critical mass, then the whole industry may be pushed into adopting an open standard that will lower entry barriers and benefit everyone. If we shut down any efforts towards external integrations (it’s not only about Threads, I’ve seen very similar arguments made also when Wordpress/Tumblr/Flipboard federated or considered to federate) because we want our open solution to be used only in a safe and controlled environment, then the world outside of the Fediverse is more likely to be stuck in proprietary solutions.

fabio,
@fabio@manganiello.social avatar

@happyborg I was just discussing the “centralized distributed platform” problem on this response.

And I agree, p2p would be the best solution, probably as simple as a stand-alone app that you can start when you want to post something or read something, and it would connect on the fly to neighbouring trusted online nodes to relay the content over a DHT. But I honestly can’t wrap my head around all the problems related to fitting something like ActivityPub on top of something like Bittorrent’s DHTs (content delivery guarantees, distributed trust issues…). It would definitely take a while to design properly, and another big while to implement properly.

The quickest solution IMHO would be to have more alternative ActivityPub implementations that have lower entry barriers for users to run. I think that #Mastodon is actually a big part of the problem. It runs on 73% of all the instances, and it’s a beast to run. I had a mostly personal Mastodon instance before, and I had to run it on a Linode host because my home network couldn’t handle the amount of traffic it generated. It would eat up 5-6GB of RAM at its peak, and required me to permanently store a ~100GB cache on an S3 bucket just for the cached media. Eventually, at its peak, running the whole thing would cost me ~$100/month. Something like this is definitely not within everybody’s reach. You can’t say that you have solved/democratized the problem of distributed social media when the most popular solution available requires to spend $100/month on a cloud node and knowing all the internals of how to maintain a Ruby on Rails server application.

I like Pleroma/Akkoma because they lower that barrier - I can now run an instance in my home network, it takes only a couple of GB of storage and ~1-2GB of RAM. But they’re still relatively immature. And that bar could be even lower.

fabio,
@fabio@manganiello.social avatar

@happyborg

Mmm, that’s like saying tolerance requires accepting the intolerant.

My proud Popperist side is horrified by this interpretation of my words.

I firmly believe that it’s our duty to be intolerant towards the intolerant, and proactively kick fascist asses to the hell they belong to.

But when “intolerant” is applied as a label to anyone who doesn’t proactively defederate a platform where the definition of “intolerant” is statistically likely to cover at most 5% of its user, I have a problem.

In short, I don’t think that it’s ok to be intolerant towards those who are on the same side as yours, but just happen to have a different “intolerance tolerance” bar, because nasty fracturing feedback loops may occur from such a transitive law.

And I also don’t believe that voluntary reclusion that excludes that 95% of potentially innocuous users amid fears of encountering that 5% of potential jerks is a scalable solution that empowers vulnerable people to be really part of the society - it instead reminds me a lot of the features of a cult.

fabio,
@fabio@manganiello.social avatar

@dg3hda I still don’t see the problem. If me, as an admin of an individual instance, wants to federate with Threads, that shouldn’t automatically make me a part of a “Fediverse subset” in mutual exclusion with others. If there are concerns about “second hand smoke” and ways to circumvent defederation, then we can talk about them, but at least AFAIK from a technological point of view most of those loopholes should be either closed, or provide configuration options (like authenticated fetch), if a specific instance admin is actually concerned about them.

If Threads goes haywire fascist or full E-E-E tomorrow, I can always defederate it and keep interacting with the other instances I usually do. I don’t see a whole universe “deteriorating”.

That also partly answers the “why be Meta’s guinea pigs?” problem: we’re not. If we have a solid fabric and good distributed governance, Threads can do whatever they want: the Fediverse will keep existing with or without them.

And the other half of the answer is: the chicken-and-egg problem. We all know what’s the ideal final outcome - all social media solutions use at most 1-2 open protocols with low entry barriers, without sufficient incentives to develop new proprietary protocols. Just like today there’s no incentive to reinvent proprietary versions of TCP or HTTP: you don’t reinvent a functioning wheel that everybody can use unless you have an amazingly brilliant reason to do so.

But that means that also the existing large platforms have to start in some way. For as much as I would love #Meta to implode into itself tomorrow, that’s statistically unlikely to happen. Until then, we have to create the right incentives for them to change, or most of the human population will still be trapped in the same cages even a decade down the line with no viable alternatives.

The #DMA gives a nudge in the right direction, by forcing gatekeepers to make their platforms inter-operable, but it doesn’t suffice by itself. Without sufficient incentives to implement ActivityPub (like being able to potentially interact with a couple of millions of users on existing platforms that already implement it), these companies just won’t have enough incentives to seriously commit themselves to adopt it. In a couple of months they’ll come back to Brussels or Washington and say “well, we’ve tried to adopt an existing open W3C-approved protocol, but we met too much resistance from the existing communities, so instead we’ve decided to build <put-tech-bro-foundation-name-here>, a consortium that includes Meta, Alphabet, X, BlueSky and ByteDance, to build a new “open“ protocol that allows anybody to join - provided that they pay a fee to the foundation, sign a couple of NDAs and accept a couple of custom EULAs, and we allow them to join the club”.

I have no doubt of which outcome is the best for technology and society at large.

fabio,
@fabio@manganiello.social avatar

@happyborg well, if we talk from a strictly technical point of view, I don’t see the issue there.

I mean, if an admin of an instance cares that their garden is completely insulated from risks of scraping/forwarding of their user content, then they already have the tools for it:

  1. Encourage user who care about their privacy to make their profiles private / followers-only.
  2. Disable /.well-known/webfinger.
  3. Enable AUTHORIZED_FETCH on their instance configuration (Pleroma’s APIs are authenticated by default, but Mastodon requires that environment variable to be explicitly enabled).
  4. Encourage other federated instances to also enable AUTHORIZED_FETCH.

If all these four conditions are met, I don’t see how Threads, or an instance federated with Threads and also with theirs, could be exploited to extract information about their users.

Meeting all four conditions means that:

  1. The posts of a user aren’t publicly accessible, and they can’t even be crawled by a search engine nor by an under-the-radar bot instance. If some admins complain that my instance not defederating from Threads threatens the safety/privacy of their users, they should probably first make sure that their profiles are actually private and their content isn’t already indexed on a search engine. Because that’d be like asking me to close a small door on the back when they’ve actually let the flood gates open.
  2. AUTHORIZED_FETCH closes the loophole on the “indirect content fetch” side. Consider this case: instance B is federated with both A and C, but A has adopted a strict “no-C” policy, while B has implemented a “wait-and-see” policy. If user Y on instance B boosts/quotes a post from user X on instance A, and both instance A and B have AUTHORIZED_FETCH enabled, then a request from C to download the post from B with the quote from A will have to go through an authorization phase from both A and B. If either fails, then the user on C will either see an empty post or nothing, depending on the implementation.

That’s what I mean when I say that, technologically speaking, we already have the tools to ensure that those who want their content to be shared with a controversial instance, but don’t want to lose the existing connections to other instances on that basis, can already do so without any side doing compromises.

If we want to talk about the ideological side, and whether we want to build a community with a single consistent position on certain issues, or a set of independent islands with different values that can still communicate talk to each other, regardless of who else they also like to talk to, then it’s another thing.

p.s. I think that AUTHORIZED_FETCH helps but it’s not the ideal implementation. For the chain to work, all the instances in a “federated chain of trust” need to enable it, or the risk of exposing unwanted content (especially upon repost/quotes) is non negligible. And the fact that it’s not even enabled by default on Mastodon (the software used by 73% of the servers here), and that many admins don’t even know about it, or didn’t enable it, means that my little Akkoma instance (with authorized fetch) federating with Threads is the least of the problems. IMHO either that option should be enabled by default (even if that means breaking back-compatibility with instances that run Mastodon < 3), or complemented by another feature that doesn’t require strong authentication (like chains of referrals).

fabio,
@fabio@manganiello.social avatar

@happyborg @HedgiePT if you have a forge link (I couldn’t find any references by name) I’m happy to take a look when I have some time.

I would love to help either on the protocol side or the coding side, but I’m afraid that I can’t really commit much - I already maintain a dozen active open projects and my time is more stretched than Dali’s clocks. But if I see the potential I may make some time for it.

fabio,
@fabio@manganiello.social avatar

@gruff @happyborg honestly I haven’t found much around. Everybody seems to hysterically yell “we all must defederate Threads, otherwise everybody’s privacy will be diluted!”, which means that few probably have a clearer picture of the settings already available and how cross-instance content forwarding works. I may work on putting together this information in a more articulate stand-alone post.

Disclaimer: this information is based on my understanding both of the protocol and the available settings, which in turn are based on on skimming through the source code myself. I’m not sure if other loopholes are available (for example posts cached on other instances and indexed), so I’d love to get confirmation from someone who has contributed to the Fedi more than me.

fabio, to random
@fabio@manganiello.social avatar

If a free sounds too good to be true, it’s usually because it is.

Free VPN services that actually turn your device into a zombie proxy:

  • Lite VPN
  • Blaze Stride
  • Byte Blade VPN
  • All CaptainDroid apps
  • Fast Fly VPN
  • Fast Fox VPN
  • Fast Line VPN
  • Oko VPN
  • Quick Flow VPN
  • Sample VPN
  • Secure Thunder
  • Shine Secure
  • Speed Surf
  • Swift Shield VPN
  • Turbo Track VPN
  • Turbo Tunnel VPN
  • Yellow Flash VPN
  • VPN Ultra
  • Run VPN

https://www.bleepingcomputer.com/news/security/free-vpn-apps-on-google-play-turned-android-phones-into-proxies/

aral, to threads
@aral@mastodon.ar.al avatar

Dear @Gargron,

A fediverse server called Threads is violating mastodon.social’s second server rule:

“2. No racism, sexism, homophobia, transphobia…
Transphobic behavior such as intentional misgendering and deadnaming is strictly prohibited.”

https://glaad.org/smsi/report-meta-fails-to-moderate-extreme-anti-trans-hate-across-facebook-instagram-and-threads/

Can you please defederate from this server to protect the trans people on mastodon.social?

Thank you.

PS. It’s run by these guys: https://techcrunch.com/2024/03/26/facebook-secret-project-snooped-snapchat-user-traffic/

#mastodonSocial #fediblock #threads #meta #mastodon #transphobia

fabio,
@fabio@manganiello.social avatar

@aral @eatyourglory I’m not sure if I agree completely with this statement.

Defederating Gab, poa.st, cum.salon or RapeMeat was really a no-brainer.

Those were instances created by trolls/fascists/homophobic/misogynist admins, and specifically dedicated to people who share the same ideas and the same ways of treating others.

There’s literally no doubt of the ideology of a person who joins one of those instances: if you join Gab or poa.st, then it’s quite easy to identify your ideas as well.

Can we say the same about Threads? Can we say that everybody there is a transphobic, or a Nazi, or a troll? Can we say that the admins explicitly embrace and actively promote these ideologies?

When you have an instance with millions of accounts, you’re always statistically likely to get jerks. The questions that admins have to ask before defederating are:

  1. Are jerks a clear majority there?
  2. Are the failures at moderation due to the website administration actively promoting jerks (like it’s the case for Musk’s shithole), or are they due to the challenges of scaling up moderation, or to bars that are just set higher than many Fediverse admins?
  3. If we defederate it, what are the risks of cutting out a lot of useful traffic (like institutional accounts, or harmless accounts that are followed by many users on our instances)? In other words, does the signal/noise ratio justify sacrificing the signal in order to protect users from the noise?
  4. What are our thoughts about striking a balance between protecting our users from abuse vs. giving them a chance to connect to whoever they want to?

I have the impression that for Threads the response to these questions is negative, at least for now.

Of course, I’m monitoring the situation, and I’m ready to pull the drawbridge at the first signs that Threads has a negative net added value for the Fediverse.

But that doesn’t seem the case for now IMHO (I actually see a lot of nice/decent people on Threads that are genuinely curious about the Fediverse), and I’m not sure if I would handpick a few cases of moderation failures to make an argument in favour of defederation (rather than individual blocks/bans/mutes).

fabio,
@fabio@manganiello.social avatar

@aral @eatyourglory I’m very well aware of Meta’s challenges with content moderation. And I definitely would like them to be called more accountable for this.

I’m just challenging the idea that full defederation of a platform with millions of people is the right way to respond to these failures, or if more granular measures (blocks/mutes) can be implemented.

Again, if the tree was rotten at its very roots (Gab, poa.st etc.), there would be no doubt about it.

If the head of the platform was actively engaging and promoting hateful ideologies (like Musk), there wouldn’t be any doubt either.

But for now I don’t see any such strong signals from Thread.

fabio,
@fabio@manganiello.social avatar

@aud @aral @eatyourglory far from it, I want him called accountable for his unethical business practices, for his failures at moderation and for being a sociopath.

It’s just that I don’t think that full defederation of a platform with millions of users, and giving up our chance of finally making the Fediverse more mainstream and stopping using other platforms to communicate with our friends and relatives, is the best solution.

fabio,
@fabio@manganiello.social avatar

@greenWhale @aud @aral @eatyourglory I don't disagree with your argument. The larger the server, the harder it is to moderate effectively.

On the other hand, discoverability, availability of content, and having a self-contained social platform that doesn't require us to open Facebook or Instagram, can only happen when we get a big platform plugged in. We can't expect to solve these problems by adding small instances of 10-100 users each to the pool. We've been trying this for a while, and it didn't really work.

If we want all of our friends, relatives and elected politicians to be on the Fediverse, then the best way is to have Mark let them take a walk outside of the fence he's built - and that's exactly what's happening now.

Eventually, I believe that higher adoption and ability to effectively moderate everything are mutually exclusive. We just need to pick which one we prefer.

fabio,
@fabio@manganiello.social avatar

@aud @aral @eatyourglory @greenWhale > And in the meantime, you expose tons of people to immediate danger (LibsofTikTok, etc).

I feel like there’s a divergence in social network philosophy in the Fediverse community that is becoming hard to reconcile.

Many believe that the primary goal of social media is to proactively shield vulnerable users from any possible forms of abuse or trauma. Even if that comes at the cost of proactively defederating whole instances that aren’t strictly aligned with our approach to moderation or with our ideology. Even if that means proposing to proactively defederate all the instances that run Pleroma/Akkoma software just because many of their contributors are perceived as too liberal (yes, somebody actually went as far as seriously proposing that). Even if that means harming discoverability, availability of content, or splintering the Fediverse into smaller bubbles and reducing its potential reach.

I personally belong to the camp of those who believes that the primary goal of social media is to enable people to connect as easily as possible to others and discover content with the least amount of frictions, and give users enough power and tools to granularly decide what content they want to see.

I want to minimize the harm to vulnerable users, but that shouldn’t come at the expense of everything else.

The user is in charge. The user can block/suspend/mute/report anything they don’t like. Sure, in extreme cases drastic decisions ought to be taken, and a whole instance with 100s/1000s/10,000s of users needs to be defederated. But such extreme cases IMHO include things like poa.st, Gab or X itself, where the tree is truly rotten at its roots, where the admins themselves endorse violence/prejudice, and/or where, picking a random user out of their base, it’s statistically very likely that that user is an absolute jerk/sociopath.

IMHO that doesn’t include Threads. Sure, Mark’s behaviour is something that we should keep a constant eye on. Sure, the higher the number of users, the higher the probability of bumping into jerks. But it’s just up to us to filter/mute/block/report them and move on. We don’t throw the whole platform away because of the sporadic jerks, because on such a large platform there are actually also people (like many of our real-life friends, or relatives, or journalists, scientists and politicians) who would add a lot of value to my feed, and the cost of losing all that content to me is much higher than the benefit that I would gain from making the Fediverse completely/proactively impermeable from the Libs of TikTok.

It’s like taking a public bus in a busy city: the busier the bus, the higher the chance of bumping into some scum who throws racial or homophobic slurs to other travellers. In such conditions, depending on the magnitude of the offense, most of the people would either:

  1. Move to another seat
  2. Directly address the offender and call him/her out for being a jerk
  3. Report the offender to the bus driver (or the authorities)

The alternative would be to stop taking public busses, and inviting everyone to stop taking busses as well, because the risk of bumping into potentially traumatizing confrontation with a sociopath is non-zero, and maybe criticize the bus operator for not preemptively preventing a potential fascist from taking the bus.

Which of these two approaches sounds more reasonable to you?

Plus, you can literally go on those platforms and talk about the fediverse… wait, you can’t! Because they seem to be actively suppressing those conversations.

This isn’t true. After announcing support for Fediverse sharing for US, Canada and Japan, I’ve actually noticed that a lot of people on Threads started talking about the Fediverse. Many were wondering what it was. was among the most popular topics discussed on the platform. I saw even some people open up Mastodon accounts to test how the integration works.

To be clear, I hate both the management of X and Meta from the bottom of my heart. But credit is due where it’s due. Musk used to mock “Masturbodon”, preemptively ban any Twitter accounts with a Fediverse handle in their profile, aggressively shut down one after the other all the APIs used by services like Birdsite to bridge tweets to the Fediverse, and basically prevented anybody from even talking about the Fediverse on its platform. Threads, on the other hand, invested a lot in building this integration, lets people talk about the Fediverse freely, it doesn’t mock it nor it’s aggressive towards us.

Sure, it doesn’t mean that I trust them. It doesn’t mean that I support their way of developing this integration (through meetings with ActivityPub luminaries covered by NDAs rather than truly building in the open). It doesn’t mean that I don’t see risks in the future. But I don’t feel like it’s fair to put X and Threads in the same bucket when it comes to their approach towards the Fediverse just because they are both big and both run by very unpleasant human beings.

Anyone on threads will see federated content through threads: through the slats in the fence, except they won’t even see the fence. They won’t see me at my tiny server; they’ll just see a random post I made.

The alternative to “users on Threads will only see federated content through Threads” is “users on Threads won’t see anything outside of their bubble at all”. If they see your posts, there’s a non-zero chance that they’ll click on your profile and maybe follow up on your instance. If they don’t see your posts, this chance is much lower.

You want people off corporate social media? Make a plan that’s better than theirs.

I can’t make a plan that is better than theirs if they have all the content and all the users.

I’ve spent a lot of time in the past couple of years trying to convince friends and relatives to do the jump.

The questions I get from them usually aren’t along the lines of “is the protocol/source code open or closed?”, nor “what are the odds of bumping into jerks on that platform?”, nor “how will moderators/admins proactively prevent me from seeing potentially disturbing content?”

No, most of the questions I get are along the lines of “can I still follow this celebrity/politician there?”, or “can I still talk to my relatives and friends from there?”, immediately followed by “how easy is it to use?”

If the answers to all these questions are negative, then we’ve lost a user. It’s a war that we can’t win. If however there is some form of permeability between large corporate platforms and smaller federated platforms, and those who feel that it’s too hard to onboard on the Fediverse have an “easy path” to interact with its content, the offer becomes much more compelling.

But in another, the existing pro-capital/corporate legal environment in many regions of the world means any company deserves scrutiny (particularly of their funding source).

You can’t possibly scrutinize the funding sources of each single corporate entity that decides to join the Fediverse. And, even if you do, you’ll probably find some stinky hedge fund or VC money everywhere.

For as much as I would love a Fedivese that is completely made up of no-profits and volunteers, I know that we’ll never get traction that way. If a business joins the ranks, then we get more attention and more content.

The Flipboard case is a good one. But I could also add Wordpress, Tumblr, and many other companies that recently have either built an integration with the Fediverse, or are working on building it. I personally don’t see how they could threaten the Fediverse either. If the number of jerks on the Fediverse increases when these companies integrate their products, we can just block the jerks. If the number of jerks goes out of control, or if the company proves to be malignant in its intentions, we can block/defederate the domain. But I don’t see how the existence of businesses in our space could threaten our space. Eventually, users and admins have a lot of granular control, and they can decide what they want to see. The existence of businesses who use the ActivityPub protocol to publish their activities isn’t a threat to the Fediverse any more than the presence of businesses who use HTTP over TCP/IP is a threat to anyone who wants to run their own website.

fabio,
@fabio@manganiello.social avatar

@aud @aral @eatyourglory @greenWhale get your shit together and wash up your mouth with caustic soda before ever attempting to talk to me again. I’m just sticking rational arguments together without ever getting personal. I expect the same level of respect.

I have done more for oppressed minorities, to grant everybody equal opportunities and to combat fascists in my whole life than an equality poser like you can even imagine in 100 years. With my own money, with my own time, and even risking my own career and incolumity for people I didn’t even know.

And I’ve done so because I’ve been myself among oppressed minorities, and a target of discrimination for most of my life, and I’ve started from a quite low spot in life too. Just because I don’t constantly show off my trauma, or slam an oppressed minority badge of honor on everybody’s face and ask for everybody’s pity, it doesn’t mean that I’m a privileged white guy who had daddy paying all of his bills, and doesn’t know what it means to be publicly discriminated.

Don’t you even realize that YOU are the fascist jerk here?

You talk so much about protecting oppressed minorities from aggression and prejudice, and yet you are the one who’s dumping a full page of aggressive scatology upon a stranger who has probably gone through more shit and prejudice than you - and all just because I’m trying to have a civilized conversation about the trade-offs between discoverability/connectivity and sealed insulation from any possible source of injury.

You talk so much about preventive defederation, throwing the baby away with the bathwater if that’s the price to pay to make sure that nobody ever interacts with any potentially disturbing content, and you don’t realize that you’re just creating an unscalable and sealed safe bubble that does more harm than good. You probably wouldn’t tell vulnerable people to stay sealed in their houses only with their trusted friends around to avoid any contact or potential conflict with a potential jerk on the bus, at the mall or on the street. Yet that’s exactly what you’re advocating here, telling yourself the unforgivable lie that ascetic digital exclusion from the rest of the world is the best solution to strengthen the oppressed.

You talk so much about diversity, and yet you are the one throwing insults (including the f words) at somebody who is on the same ideological camp as you, but who just so happened to reach a different conclusion than you on a certain problem, and is trying to rationally consider all the trade-offs of a difficult problem. You like diversity only as long as everybody’s conclusions are exactly aligned with yours, and you bark like a rabid dog at anyone who deviates from the only path that you feel it’s righteous, and you’re so busy enjoying the nauseous smell of your ideologically inconsistent farts that you don’t even realize that your aggressivity and your inability to engage into a civilized discussion with someone who disagrees with you on a particular topic makes YOU the true fascist here.

Now just go back and re-read the messages you’ve sent me in this thread. Do you feel proud of them? Does your aggressive language show a good picture of you? Do you feel like your friends and family would be proud of you for showing such an ugly side to a perfect stranger on the Internet who just happened to disagree with you?

If you can answer affirmatively at all of these questions, then please proceed at blocking me before I do that with you. It means that you belong to that extremist minority of the minority that takes pride of its purist ascetism and does more harm than good to the world.

Otherwise, I expect an apology for your motiveless aggression.

fabio,
@fabio@manganiello.social avatar

@aud @SallyStrange @aral @eatyourglory @greenWhale I see. So your line of reasoning actually is “don’t go on Facebook, or you’ll get murdered”. Of course. Very logical, very rational, and very helpful.

fabio,
@fabio@manganiello.social avatar

@passenger @greenWhale @SallyStrange @aud @aral @eatyourglory

King did not encourage people to sit next to white supremacists on the bus in order to broaden their minds.

Maybe not broaden the mind of an individual supremacist, but it’s hard to deny the power it had on broadening the minds of many other Americans.

Discrimination and prejudice feast on ignorance and dehumanization. It’s easy for many folks to build a narrative of discrimination and dehumanization towards people that aren’t seen as part of the society. That was the whole point of segregation. If you see that someone shares the same needs as you, the same places, the same emotions, the same interests, then you’re less likely to dehumanize them only on the basis of their skin color.

The goal of civil disobedience was to force the wider society to acknowledge that black people were also part of it. You can see this doctrine in his 1964 speech on South Africa’s apartheid:

While living with the conditions of slavery and then, later, segregation, many black people lost faith in themselves. Many came to feel that perhaps they were less than human. Many came to feel that they were inferior. This, it seems to me, is the greatest tragedy of slavery, the greatest tragedy of segregation, not merely what it does to the individual physically, but what it does to one psychologically. It scars the soul of the segregated as well as the segregator. It gives the segregator a false sense of superiority, while leaving the segregated with a false sense of inferiority. And this is exactly what happened.

Then something happened, and circumstances made it possible and necessary for them to travel more—the coming of the automobile, the upheavals of two world wars, the Great Depression. And so his rural plantation background gradually gave way to urban industrial life. His economic life was gradually rising through the growth of industry, the development of organized labor and expanded educational opportunities. And even his cultural life was gradually rising through the steady decline of crippling illiteracy. All of these forces conjoined to cause the black people in America to take a new look at himself. Segregated masses all over began to re-evaluate themselves.

Did he say “they were empowered by surrounding themselves only with people who looked like them, thought like them and behaved like them, seclude themselves from the world and shelter in safe havens”? No, he said “they started to travel more, to experience the world more, to encounter other people, to educate themselves more, and learn that they had nothing less to offer than the whites”.

drewdevault, (edited ) to random
@drewdevault@fosstodon.org avatar

Quick FOSS legal literacy quiz

Imagine the following situation: your project is MIT licensed. Someone takes the whole project and white-labels it (changes the name), then sells it commercially without providing the source code or sharing any of the sales revenue with you. They include "Copyright <your name>" and a copy of the MIT license in the "about" page of the software.

Is this allowed?

fabio,
@fabio@manganiello.social avatar

@smallcircles @drewdevault I’d be interested in knowing the answer to this question as well.

Platypush falls exactly in this bracket - a lean core that supports hundreds of integrations around it, which may rely on 3rd-party libraries or frameworks released under all kinds of licenses. A specific integration/script may be released under a proprietary license too, if that’s what the developer wants, although probably distributed outside of the main repo.

For this reason (and also because in the IoT space you have a lot of non-FOSS solutions) I released Platypush under MIT years ago, assuming that the more liberal the license, the lower the chances of friction when bringing in more integrations. But I’ve never felt comfortable about this decision.

If it is indeed the case that plugins/integrations can be released under non-GPL licenses and still leverage the GPL core, then I’d be more than happy to change the license to AGPL - and spin off the integrations that directly or indirectly rely on conflicting licenses in a contrib repo. I know that this isn’t possible with stricter licenses (like the SSPL recently adopted by Redis), which usually state that all applications and services that use products released under that license must also be 100% FOSS, but I’ve always wondered where GPL sits on this.

fabio,
@fabio@manganiello.social avatar

@jwildeboer @drewdevault @smallcircles thanks, that clarifies things a lot.

So I guess that as a developer of an open framework that supports all kind of integrations with all kind of licenses I may have two choices:

  1. Leave everything as it is (MIT license so I don’t bump against the problem of redistributing GPL code with incompatible licenses).
  2. Extract the plugins that use different license schemes, or are built on top of products/libraries with incompatible licenses, into separate packages/repos under different licenses (or maybe a contrib repo under MIT/BSD), while the core + the open integrations can then be distributed under GPL.

It sounds like AGPL wouldn’t be a reasonable option either way though. My understanding is that an architecture along the lines of “clone/install the open core, then copy the contrib submodules inside of the same repo and run the whole thing together” wouldn’t be compatible with AGPL, because I’m actually mixing projects with difference licenses at runtime and providing them as a service.

fabio,
@fabio@manganiello.social avatar

@jwildeboer @drewdevault @smallcircles overall, a product like Platypush is very similar in terms of architecture and plugin ecosystem to HomeAssistant. Which, from what I can see, is actually released under Apache license. So I guess that the “pick a liberal license to minimize friction” is a common practices among this kind of software…

fabio, to Israel
@fabio@manganiello.social avatar

deleted_by_author

  • Loading...
  • fabio,
    @fabio@manganiello.social avatar

    @ecsd @israel @palestine of course anyone who has followed Israeli politics in the past two decades know that this was no “extremist outlier”.

    The arguments made in that post (that there is no archaeological/historical/genetic evidence of people other than Jews who settled in that area either before David or after the destruction of the second temple) are exactly the same I’ve heard many times by the most purist supporters of the Zionist cause, and they are even amplified by many government members (Ben-Gvir and his nativist/fascist friends in first line).

    The only reason why they’ve taken down that post was not to piss off a potentially useful diplomatic mediator like Singapore. Hadn’t the local government shown outrage at the content, I’m pretty sure that the post would still be there.

    fabio,
    @fabio@manganiello.social avatar

    @ecsd @israel @palestine I'm the last person on earth who would blindly repeat US propaganda. But the same principles apply to everyone, period.

    By invading Ukraine, trying to topple its elected government and denying its right to existence, Russia has violated the right to self-determination of an independent country. No crime in the world is worse than that. No prior agreement about outdated "spheres of influence" justifies the aggression. Ukrainians have the right to do whatever the fuck they please with their own country, their own alliances and their own governments, and in no circumstances any of their actions should be used to justify an unprovoked military invasion.

    Russia deserves to be treated as a pariah State because of that, at least until Putin is in power/alive (which most likely mean the same thing). And, like all pariah States, it is now fully bent on rewriting history in order to push its propaganda and justify its horrible actions (the roots of the Rus people that come from Kyiv, the appeal to a union among Slavic people with Moscow at its head, not to mention all the shameful lies and dehumanization attempts about drug-addict and Nazis who rule Ukraine).

    What Russia is doing is pure fascist imperialist playbook, page by page, with no diversions. I've seen it enough times to recognize it.

    And I agree, the US have also their big share of guilt in making the world an awful place, and they should have definitely been called more accountable for that. But let's not fall into the whataboutist trap - ethnic violence, imperialist war and external attempts of overthrowing elected governments are always bad, no matter where they come from.

    fabio, to neovim
    @fabio@manganiello.social avatar

    I’m impressed to see that my extension to send HTTP requests directly from the editor (it basically emulates the logic of IDEs like VSCode and IntelliJ with .http files) has already reached 65 stars! ⭐️

    There already a couple of feature requests that I’d like to tackle (I don’t open Github that often, so I missed the past 2-3 months of notifications), but I’m really struggling with time.

    takes most of my time, as I’m trying to wrap everything for the first stable release (it only took about 8 years!). The Platypush web extension, the Platypush Android app, the madblog blogging platform and the RSS viewer browser extension take my remaining (unpaid) development time. And there’s still sporadic work I’m doing on Mopidy, Jellyfin, OpenLineage and other projects.

    I released nvim-http as a toy one-shot personal project, covering what I perceived as a gap in the Neovim plugins and hoping that I wouldn’t have to come back to it again. But, 65 stars and 10 open issues later, it seems like others liked the idea too - and it’s probably fair to implement the improvements that they’re asking.

    Is there anybody out there who’s familiar enough with (or if you want to rewrite in , feel free to do it too, as I’ve been toying with the idea a bit already) and uses Neovim who would like to give me a hand with this project? I’m happy to add new maintainers/contributors if they can prove enough proficiency with Python and/or writing Vim/Neovim plugins. Otherwise I may eventually respond to all the open feature requests, but squeezing in another project to maintain regularly may prove tricky for me.

    @programming

    https://github.com/BlackLight/nvim-http

    fabio, to Redis
    @fabio@manganiello.social avatar

    deleted_by_author

  • Loading...
  • fabio,
    @fabio@manganiello.social avatar

    @thezerobit everybody loses for two reasons:

    1. Compatibility always loses when hard forks are involved. The two versions will have to be kept in sync. That takes time, and it’s not guaranteed to work forever, nor guaranteed to work for all the features, nor it’s guaranteed that the system of incentives will always play towards maintaining mutual compatibility - see what happened with the MySQL/MariaDB fork for an example, or more recently with Gitea/Forgejo. Since Redis is used in so many applications, many applications will also have to make their code compatible with both the versions, or fork it as well - think of what may happen with widely used applications like Celery. Developers that build products on top of Redis will also have to adapt their code to support KeyDB as well, or whatever other fork may happen soon. Eventually that spreads out development resources. And distro maintainers probably will also have to update the repos if it turns out that SSPL licenses aren’t FOSS-approved and they have to go for alternatives.
    2. The AGPL license strike a good balance. It’s a win-win with a compromise. Tech businesses can benefit from community work, but if they run it as a service or modify it they will also have to release the changes. In exchange, FOSS software doesn’t try and tell businesses what they are supposed to do with their own software if they want to use the open code. By taking a hard stance with a license like SSPL, the hard fork will happen and, if it’s based on a license like BSD/MIT, businesses won’t be compelled to contribute back to the open product at all. They will probably develop 100% closed products on top of the BSD codebase and are likely to break compatibility on purpose at some point, and there’s nothing the open product can do about it. Eventually, efforts will split as well, competition is likely to shift towards mutually exclusive features, and that’s where everyone loses.
  • All
  • Subscribed
  • Moderated
  • Favorites
  • anitta
  • InstantRegret
  • mdbf
  • ngwrru68w68
  • magazineikmin
  • thenastyranch
  • rosin
  • khanakhh
  • osvaldo12
  • Youngstown
  • slotface
  • Durango
  • kavyap
  • DreamBathrooms
  • JUstTest
  • tacticalgear
  • ethstaker
  • modclub
  • cisconetworking
  • tester
  • GTA5RPClips
  • cubers
  • everett
  • megavids
  • provamag3
  • normalnudes
  • Leos
  • lostlight
  • All magazines