@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, to random
@fabio@manganiello.social avatar

How can you call yourself a civilized country when you can’t even keep guns outside of schools, and your solution to gun violence in schools is either to have armed guards at the entrance or give teachers guns as well?

Is it a civilized Western country or is it the fucking far west?

How come most of the other countries around the world have figured out long ago how to send kids to school without fears of them being shot, and the richest country in the world can’t figure out how to solve such a simple problem yet?

https://www.dw.com/en/tennessee-passes-bill-to-let-teachers-carry-guns-at-school/a-68903939

fabio, to Matrix
@fabio@manganiello.social avatar

I wish that #Matrix (and #Synapse) were better designed.

It has become among the most popular open messaging protocols, but it remains a scalability nightmare.

It's literally the Blockchain of messaging. Its current state is given by the sum of the whole chain of events received since t=0. It's a brittle append-only ledger, and any modifications you do to it are very likely to break it.

Do you have a huge 100GB database and you want to clean up old stuff? Sorry, you can't. There are some non-official solutions for compacting the events, but they're all likely to break your db - and none worked so far in my case.

Do you have users on your instance that entered a busy room on matrix.org? Then you'll get all the join/leave events of that busy room on your db, with no way of deleting them, and nothing to do unless your users exit those rooms.

Did you start your instance by toying with the default SQLite backend, and now that it's become big you want to move to Postgres? Sorry, no official guides provided, only unofficial procedures scattered across a bunch of blogs.

Do you want to change the name of your server? Sorry, you can't. All the events are tightly coupled to your server name. The advised solution is to simply start a new instance.

Such a rigid and brittle implementation shouldn't have become an open de facto standard without much questioning about its poor design decisions.

At the very least, some official tools must be provided to enable admins to compact events. If the size of the database is guaranteed to increase indefinitely, then entry barriers against self-hosting are only going to increase.

fabio, to random
@fabio@manganiello.social avatar

@adiz lol my bad - my tut client mixed up the threads.

The only alternative I see to Matrix right now is XMPP. I still run my own server. But it doesn’t come even close to compete with the number of available bridges (that’s actually the main thing I use Matrix for).

The only thing that can still compete with Matrix when it comes to bridges/integrations is still IRC+bitlbee. But that ecosystem is literally falling apart, it’s largely based on libpurple extensions that often haven’t been touched in years, and of course you can forget decent mobile-native clients.

Or maybe just run alternative servers to Synapse, but so far I’ve had a mixed experience with them - Conduit is definitely snappier, but I’ve had trouble to set up many of my bridges, which seem to be primarily designed for Synapse.

fabio, to random
@fabio@manganiello.social avatar

Conservatives' approach to solving difficult problems: sign a law that makes the problem illegal, and the problem will solve by itself.

https://www.axios.com/local/miami/2024/03/20/florida-law-desantis-homeless-camps-public-sleeping

fabio, to random
@fabio@manganiello.social avatar

I’ve decided to go full-in with my own mail server. The #ProtonMail bridge over SSH+VPN tunnel is no substitute for a proper mail server - plus it’s awfully slow when used as a full IMAP server and it breaks the IMAP implementation in a lot of ways.

I’ve created my new domain, gone through the configuration of DKIM/DMARC/SPF like a good postmaster, just to get immediately blacklisted by @spamhaus on my first outbound email.

I’ve been through this before, but in my previous experiences a blacklist removal ticket would be either resolved automatically or within a couple of hours at most.

In this case, nearly 24h and three tickets later and nothing is moving. Not even some directions on how to get removed or an ETA. The mailboxes have already been all migrated with forwarding configured on the old addresses, but outbound email is still broken because being blacklisted by a single company means being unable to communicate with nearly any mail servers out there.

Does anyone have any tips on how a #Spamhaus blacklist removal process can be sped up?

fabio, to random
@fabio@manganiello.social avatar

I’ve just had to debunk some more pseudoscience garbage shared by my mother on Facebook. The only reason why I still use that platform every now and then is just to make sure that my family doesn’t go completely off the basket case tangent with conspiracy bullshit.

This time, after chemtrails, vaccines that cause autism, Covid intentionally spread by the government, climate change that doesn’t exist, new world order secretely decided in Davos, freemasons and Jews ruling the world, gender theory pushed by a cult of paedophiles, and Putin and Trump as the only saviours, it was the time for the landing on the moon that didn’t happen.

The arguments used by the guy (“there are no signs of the source code that was used by the Apollo missions and the lunar module didn’t have enough thrust to take off”) could be dismantled with a simple Github link and a quick round of the Tsiokovsky rocket equation.

But the original post had hundreds of reshares, while my response didn’t get a single reaction. And my mother, who quit school at the age of 12 and has no clue of what either specific impulse nor escape velocity are, didn’t understand anything of my explanation anyway, and tomorrow she’ll probably just reshare some more bullshit that she wants to believe in.

Does anyone have family members or close friends who are also stuck in this vicious conspiracy cycle that apparently can’t be broken with any efforts of reasoning? How do you cope with that? It is becoming utterly depressing from my side. The conspiracy-inclined side of social media has features that resemble too much those of a cult. I’ve fought to take my family out of a cult years ago, just to see them plunge into another one. The time required to debunk bullshit is high, while the time to reshare it basically zero, and I feel like it’s a war I can’t win. Wondering if there’s a way out that doesn’t end up affecting our own mental health even more.

fabio,
@fabio@manganiello.social avatar

@informapirata a proposito, ma va bene se redirigo un paio di boomer intortati da anni di complottismi su Facebook su mastodon.uno come forma di detox temporaneo? 😆

fabio, to bitwarden
@fabio@manganiello.social avatar

Just migrated from to .

Same API, same features, same UI, and support for other DBs than MSSQL.

One single stand-alone application vs. Bitwarden’s 10 Docker containers. 70MB of RAM vs. 2GB. 3MB of db storage vs. 300MB.

Why was a password manager supposed to take so many resources in the first place? Just because it runs on a Microsoft-only stack and on .NET’s inefficient VM? Just because somebody thought that it was a good idea to separate everything into different containers (even icons and 2fa are modeled as separate services in Bitwarden)?

It reminds me of my recent migration from Mastodon to Akkoma. I got more features, 5GB of RAM freed up and 300GB of storage freed up almost overnight.

Writing and running inefficient software that pointlessly consumes all the resources available on a machine should be a crime in a world with limited resources.

It makes me think of how much shitty bloated software like @bitwarden, probably based on awfully inefficient languages and frameworks like Java, Ruby on Rails and .NET, is running out there, pointlessly sucking up resources for doing simple jobs that could easily be done with 99% less resources.

Today’s developers, spoiled by IDEs, powerful machines, docker-compose and shortsighted “just throw more RAM at the problem” approaches, have forgotten how to write efficient software. Time for them to learn how to write good efficient software again. Software doesn’t eat the world. Only shitty software built on shitty framework does.

fabio, to Youtube
@fabio@manganiello.social avatar

So many interesting insights in this research.

First, the technique used by these researchers to find out the actual number of videos hosted on #YouTube is definitely unorthodox (and inefficient), but it worked. Since Google won’t provide these numbers, and relying on traditional crawling techniques is likely to bring to the surface only videos that enough people have already interacted with, researchers have run an algorithm on a bunch of supercomupters that simply brute forced all the possible combinations of YouTube ID strings, and kept track of the requests that didn’t end up with a 404.

Second, even a conservative estimate of the number of videos on the platform is massive. 14 billion. Or nearly two videos for each human alive. With an unfathomably long tail.

To dig more in detail, videos with 10,000 or more views account for nearly 94% of the site’s traffic overall, but less than 4% of total uploads - a quite extreme version of the 80-20 rule. About 5% of videos have no views at all, almost 75% have no comments, and even more have no likes.

This sheds an interesting light on what YouTube actually is. Not a product that should be monetized at all costs, but a collective memory of basically all the media content that the human race has created in the past two decades. It’s vital infrastructure that should require no entry barriers, and it should be treated as such.

Most of the minutes of videos stored on YouTube’s servers aren’t from MrBeast, Veritasium or Tom Scott. They are from church services, weddings, condo-board meetings, graduation ceremonies, school lectures, and all other things that humans record and want to save on a permanent storage - for themselves, their families, their co-workers, their friends or their classmates. With absolutely no intention of monetization, wider reach, or whatever stinky corporate metrics YouTube PMs are obsessed with.

When you store most of the media content that our whole species created in the past two decades, you have a strong duty of making it accessible to everyone, all the time, with the smallest amount of friction and UX disruption. And that’s exactly the opposite of what Google has been doing lately.

I don’t see a use-case where we should keep publishing to YouTube, unless you are a professional creator with some actual following there. It should never be used for storing things to be shared only with a small circle, and even less as a permanent storage of your memories. Google can’t be trusted, and yet we’ve donated them all of our creations of the past 20 years, thinking that they’ll take care of them forever - remember the “unlimited storage, forever” promise made by GMail back in the day?

https://www.theatlantic.com/technology/archive/2024/01/how-many-videos-youtube-research/677250/

fabio, to Bulgaria
@fabio@manganiello.social avatar

I’m not sure who’s to blame in the #EU for giving up to the lobbying efforts of #Apple and #Microsoft (I can’t think of anything short of public official corruption behind the last minute reversal of the #DMA definition of “gatekeeper” for the two most valuable companies in the world), but these are some consequences of this decision:

  1. If Apple isn’t labelled as a gatekeeper when it comes to #iMessage (an app used by 1.3B people), then they won’t have to comply and open up their walled garden to 3rd-party clients, while, for example, Messenger and WhatsApp will have to.
  2. If Microsoft isn’t labelled as a gatekeeper when it comes to #Edge (a piece of software installed as the default browser on an OS used by at least 1.5B people), then they’ll be free to keep rewriting https:// URLs as microsoft-edge:https:// just for the sake of intercepting everything and breaking compatibility, they’ll no longer have to provide browser selection pop-ups on fresh Windows installations, and they can keep opening all the web views and PWA on Windows devices in their own browser without providing alternatives - while, for example, Chrome and Safari will have to comply.

Shame on the EU for bending to them. Shame on these companies. Shame on their filthy lobbying efforts. Shame on everybody who uses their products.

The DMA and the “gatekeeper” definition was supposed to be the proof that these companies are now run by responsible adults. Being a “gatekeeper” is the acknowledgment that you are running platforms used by billions, and with great power comes great responsibility - towards society, towards the rules of the open market, towards your own competitors.

My employer might be included on the list soon as well, and I’m more than happy to comply. Large tech companies like ours have enjoyed lavish profits and outrageous market shares and ignored anti-competition laws for too long: now it’s time to prove that we’re all grown ups who want to play by the rules.

Instead, Apple and Microsoft have unleashed their overpaid legal counsels and lobbying crews, who have engaged in a pathetic dance to gaslight Brussels officials, and force them to say that one of the largest messaging platforms and one of the most used browser in the world, run by the two companies with the highest evaluation in the world, for some reason are not expected to play by the rules written for everyone else.

Shame on them, and shame on the childish selfish sociopaths who run them.

https://www.theregister.com/2024/02/14/apple_microsoft_dma_exemptions

fabio, to threads
@fabio@manganiello.social avatar

I’ve had some quite passionate (euphemism) discussions in the past couple of days with people who accused me of “throwing minorities under the bus” or “allowing Meta to scoop up everybody’s posts” just because I’ve temporarily decided not to defederate from my personal Akkoma instance.

What’s interesting is that some of those accusations came from people who, in some cases, had their profiles fully public and searchable, on instances with webfinger enabled and without authenticated API constraints.

Their posts are already available on any search engine, searchable on Mastodon, their profiles can already be enumerated via API, and, even if their instance blocks another one, users on the blocked instance may still be able to see their content (especially if reshared/quoted) through unauthenticated API calls. But yeah, they think that the problem is with my tiny personal instance not defederating what they don’t like.

I’ve got the impression that there’s a lot of confusion on the on how to customize the and of your content, and how to make sure that only those you wish will ever be able to see it.

In order to prevent pointless retaliatory blocks/defederations towards instances whose only fault is not to block what others want them to block, and in order to prevent the Fediverse to splinter into small islands along totally arbitrary fracture lines on the basis of unfounded beliefs about how it works, I’ve put together a sequence of steps to check if your profile and your content are really private and sealed from unauthorized access (if that’s what you wish) - thanks to @gruff for the suggestion, and thanks to @evan for validating some of my assumptions.

@Gargron you’re welcome to validate my hypothesis about how AUTHORIZED_FETCH and DISALLOW_UNAUTHENTICATED_API_ACCESS work on Mastodon - I knew about AUTHORIZED_FETCH before, but I see that its functionality is now split on two environment variables, and I’m not sure if both instance A and instance B need to have it enabled to prevent content leak towards blocked instances from reshares/quotes.

cc @fediverse @privacy

fabio, to random
@fabio@manganiello.social avatar

We understand migrations of this magnitude can be challenging

No, this specific migration should have never happened in the first place.

Manifest V3 is an absolute disaster that makes developers’ lives hard for no reason other than Google being desperate to crackdown on adblockers.

No additional security. No additional features. Nothing to make the pill sweeter. Just Google abusing its dominant position in the browser market to relentlessly push for years for a new standard that makes HTTP requests and intercepting requests at runtime ridiculously hard, so it can tame uBlock and friends. The whole declarativeNetRequest API that replaces the dear ol’ webRequest API is the equivalent of tying developers’ hands behind their back with the only purpose of increasing friction.

Manifest V3 is a technological abomination that greatly limits what extensions can do, and it should have never seen the light of the day.

My browser extensions will stubbornly remain Manifest V2 only. Even if that means being compatible only with Firefox. I wish that more developers did the same, so the Chromium-based extensions ecosystem may become as barren as it deserves to be, and more people would switch to alternative browsers, but of course nobody likes to say no to the browser that serves ~90% of the market. I just hope that the folks at Mozilla won’t get strange ideas and will keep supporting Manifest V2 forever.

https://blog.chromium.org/2024/05/manifest-v2-phase-out-begins.html

fabio,
@fabio@manganiello.social avatar

@collectifission I don’t feel very comfortable with Mozilla’s stance on the topic either:

“Firefox, however, has no plans to deprecate MV2 and will continue to support MV2 extensions for the foreseeable future. And even if we re-evaluate this decision at some point down the road, we anticipate providing a notice of at least 12 months for developers to adjust accordingly and not feel rushed.”

I really don’t like that “…even if we re-evaluate … 12 months notice…“ part. I know that the folks at Mozilla may have the best intentions, but with all Chromium-based browsers leaving V2 behind Mozilla will basically become the sole maintainer of the old Manifest API. Brave at some point announced that they’ll keep supporting it as well, but 1. I don’t trust anything that comes out of Brendan Eich’s mouth, and 2. if they decide to keep supporting V2 then they’ll basically have to maintain, forever, their own fork of Chromium that keeps the old API.

I feel like Google used its weight and played the long game quite well here. Of course we all know why V3 came out. Of course nobody likes it. But hey, what are you going to do? Maintain your own fork of V2 without having even a fraction of Google’s resources, and to serve probably <5% of the market with a tiny subset of extensions that didn’t migrate? Hmm…

fabio, to RaspberryPi
@fabio@manganiello.social avatar

I think that @Raspberry_Pi has got a problem.

PiCameras are amazing pieces of hardware with a software that could probably be managed better.

The original PiCamera libraries haven’t seen a commit in 4 years, as they were deprecated with the Bullseye release. I can still run some code that uses that library on some old just because I’m keeping them on some ancient version of Raspbian. Otherwise, raspistill and friends break in many possible ways both on both Bullseye and Bookworm, and the package doesn’t even install on Arch ARM because raspberrypi-firmware is now gone.

A couple of years down the line, and its replacement, PiCamera2, is still in beta. It can be installed through a relatively smooth process only on the last two versions of RPi OS via apt, and it’s otherwise very hard to get installed on any other distro - on Arch it depends on packages that officially aren’t even available for ARM (like python-av), when installed via pip it tries to build the world even if some packages (like numpy) are already installed on the system, and I didn’t manage to get it to run on Ubuntu because of permission issues.

It’s really a pity because a vibrant ecosystem of camera apps and scripts had been written using the old version of PiCamera, which could do a lot of things with very low entry barriers. Then a sudden deprecation was announced without a viable alternative, and a couple of years down the line that alternative isn’t quite stable yet. I’ve eventually resorted to leverage the native v4l2 integration over ffmpeg as a cross-platform workaround, but that moves most of the burden to the CPU and I’m not really leveraging this hardware at its best, plus it probably raises the technical bar for a lot of hobbyist makers.

Why was something so important to many users deprecated without any stable alternative on the horizon?

fabio, to beeper
@fabio@manganiello.social avatar

How do you feel about , and Automattic acquiring Beeper?

TBH credit is due where credit is due. Nobody can predict the real intentions of a company, least of all engineers, but Beeper has from day 1 built its product on top of , it has made it much easier to install and configure messaging bridges (even to those less likely to go through the hassle of configuring a full Synapse server and install bridges with huge configuration files), and it has challenged Apple head-to-head with the iMessage bridge.

I feel that Beeper joining forces with Automattic will give the company both:

  1. Stronger shoulders to defend themselves from lawsuits coming from the likes of Apple and anybody who has made it their business mission to oppose inter-operability as long as they can - Apple can’t simply take down a Github repo with a snap of their fingers if that Github repo is owned by the same company that also owns Wordpress, at least not without a lengthy legal battle on the blueprint of Epic v Apple. Moreover, sclerotic corporate scum with an outdated business model like Apple will just never understand how big of a favour they do to small companies like Beeper when they attack them. Beeper was in beta until recently. Then it got a lot of attention after Apple declared war to its iMessage bridge. Consequence: the largest company on earth suddenly put a relatively small product like Beeper under the spotlight, its user-base went up by an order of magnitude or so within a short time frame, they rushed their way out of beta, and now Automattic is acquiring them. There’s no better publicity than an aggressive rent-seeking parasite waging war against your product.
  2. More opportunities to sit at a table with the likes of Google, Meta etc. and get them to actually build the open alternatives together, instead of reverse engineering their closed garden and play and endless catch-up game with them.

The timing of this announcement is also perfect, as the EU’s is just about to make inter-operability a requirement for messaging gatekeepers - and Beeper seems to be eager to capitalize on its opportunity of being at the right place at the right time.

Let’s keep an eye on how this product develops. I see a lot of potential for growth, and I’ll be looking for all the signals of early-exit/lock-in/enshittification.

https://blog.beeper.com/2024/04/09/beeper-is-joining-automattic/

fabio, to Palestine
@fabio@manganiello.social avatar

US: “We support a two-State solution, but let’s not get too serious about it ok?” #Palestine

https://www.theguardian.com/us-news/2024/apr/18/us-veto-palestine-membership-request-united-nations-council

fabio, to ubuntu
@fabio@manganiello.social avatar

“We like LTS / stable because they make your system stable, predictable and easy to maintain, while and friends make it too easy to break”.

If I had a penny every time I heard this argument, I’d probably be a millionaire by now.

In the meantime, I’ve been forced to migrate from Arch to Ubuntu LTS on my work laptop because the Palo Alto endpoint security crapware (calling it a piece of software would be an offense to anyone who takes software development seriously) is only compatible with Ubuntu LTS. And, without that endpoint security crapware, you are not compliant™.

My Arch system worked flawlessly. Some stuff installed via pacman, some installed via AUR, one system upgrade a week, and everything worked well together.

A few weeks into my adventure with Ubuntu LTS, and I already feel like it’s a castle of matchsticks just one step away from crumbling.

The packages on apt are ancient because the distro is ancient (almost two years old). Want to get reasonably recent versions of Neovim, Node.js, Docker, Firefox or Wayland? Well, are you ok with just forgetting about it?

So I’ve already ended up with a horrific mix of apt, PPAs, backports, Snaps, and just compiling a lot of software from source because (like in the case of Neovim, foot or i3) all the solutions currently supported on Ubuntu LTS are either outdated, broken or incompatible with the rest of the system.

To be clear, I can’t recall the last time that I had to manually compile some popular piece of software from sources on Arch because I was provided with no alternative.

And I don’t even want to think what’s going to happen when Palo Alto finally updates their crap and I can finally run a dist-upgrade. Now I understand why many say “instead of upgrading Debian/Ubuntu, just reinstall it”. Last time I’ve had to install Arch on my personal laptop from scratch, it was in 2016, just after purchasing it.

Do people really use this crap and convince themselves that it’s easier than Arch?

fabio, to apple
@fabio@manganiello.social avatar

#Apple challenges the courts again on payments processing.

You can now show users an external link to process the payment outside of Apple’s platform.

But that comes with a new “external link fee” of 27% - to be paid on top of the fee you pay for users who still make their purchases through the App store.

I’ve said it several times, I’ll repeat it: companies like Apple can get away with such parasitic rent-seeking behavior with no added value, and with challenging courts all over the world, because they are practically above the law.

They can afford to create their own taxation system as if they were an independent country, but without being accountable to voters, and without losing a single percentage point of market share if they behave like jerks.

And any fine thrown on them by courts around the world is likely to be only a tiny part of their revenue - unless we get the balls of fining them for hundreds of billions and use that money to support more competition in the market, which would be an act of redistribution long overdue IMHO.

Apple can treat fines as small operating costs because their monopolistic behaviour is still profitable enough to pay those one-off fines many times over.

And if they are above the law, it’s because too many people bought their crap and gave them power that they didn’t deserve. And they’ll keep buying their products even if Tim Cook starts wearing a Darth Vader mask during interviews.

If you use anything made by Apple, you are part of the problem.

https://darnell.day/apple-outsmarts-court-upsets-judge-regarding-third-party-app-payments

fabio, to ai
@fabio@manganiello.social avatar

#NetBSD joins the ranks of software projects that ban #AI generated code.

How they are going to enforce such ban is an obvious question lingering in the air.

Does it include only cases like “hey #ChatGPT write a suite of unit tests for this class”? Or also cases where #Copilot simply autocompletes a for loop while I’m typing it?

In the latter case, how would a hypothetical reviewer enforce the ban? How would the for loop autocompleted by Copilot, or the boilerplate population of hashmap values, look any different than one I would write myself?

And if the issue is with any code that isn’t directly written by a human, then why stop at modern AI generation? Why not include LINTers and traditional IDE autocomplete features?

I have no doubt that the projects that are announcing these no-AI policies have good intentions, but it’s probably time for all of us to have an honest talk.

Code completion isn’t a clear cut binary feature. It’s a big spectrum that goes from the old exuberant ctags to ChatGPT writing whole classes.

And code completion shouldn’t be banned. If it makes a developer more productive, and if the developer understands the code that is being completed, then such bans are akin to a “drivers should only use cars with manual transmission because we feel that it’s more manly”. It’s a conservative and elitist act of shunning out new productive tools because we can’t understand them and regulate them properly.

And more people need to call out the bluff: in cases where the AI only completes a few lines of code, its basically impossible to tell if that snippet was written by a human or an AI assistant.

https://tech.slashdot.org/story/24/05/17/007240/netbsd-bans-ai-generated-code?utm_source=rss1.0mainlinkanon&utm_medium=feed

fabio, to Palestine
@fabio@manganiello.social avatar

Pro protest in front of my office today.

I've been stuck inside of the office for a few hours together with my wife and kid, as they also came visiting today.

But I couldn't sympathize more with the protesters.

I've raised ethical questions many times about our choice of doing business with hotels and apartments that stand on stolen lands.

I asked the management several times why we are contributing to stealing revenue away from Palestinians and moving it to those who have been illegally occupying their lands for decades, in violation of many UN resolutions.

I asked several times why we severed our business links with Crimea after Russia illegally occupied it, but people on our website can still still book their holidays on occupied Palestinian territories.

I asked how can we say that we stand so much for diversity, inclusion and justice, while we remain horribly silent on what's happening in the Middle East - maybe gay people are a bit "more equal" than Palestinians, or maybe it's just because initiatives like the gay pride give much more visibility and it's considered less controversial than standing with Muslim people who are dying under the Israeli bombs amid the deafening silence of the West?

All I got back was either silence, or answers along the lines of "the company won't change its position unless it affects its bottom line".

Well, I hope that a few dozens of angry protesters, and their calls for boycotting , will affect our bottom line and our public image much more than I could do.

For the first time, while we were all trapped inside of our office, I heard some of my colleagues discussing if what Israel is doing is fair - that's usually considered a highly political topic that should be avoided in professional settings. Did it really take a bunch of university students trapping us inside for a couple of hours to wake up and realize that there's a whole world out our shiny bubble, that with great power comes great responsibility, that where and with whom we do business impacts the real world, and that when you're so big you can't afford to just leave politics out, because everything you do at large scale is political?

And I would also like to call out our management for the poor management of the issue.

They blocked all the doors of the office and let nobody in or out for hours.

I asked to walk out and stand in solidarity with the protesters, to no avail. I wrote on our social platform that we should be allowed to have a forum to discuss these issues and bring our message, as employees, to the management, just for my comment to be removed and comments on the original post about the protest being blocked.

If you feel like boycotting Booking after this, I feel your point and I fully understand you. I'd do the same if I wasn't working for them. I wish we had better ways, as employees, to get even our own voices heard.

fabio, to history
@fabio@manganiello.social avatar

#Platypush 1.0 is out!

It’s been 10 months and 1049 commits since the latest release of Platypush, 7 years since the first commit, and 10 years since the first release of its ancestor, https://github.com/blacklight/evesp.

The past few months have been quite hectic and I have nearly rewritten the whole codebase, but I feel like the software is now at a stage where it’s mature and stable enough to be used by a larger audience.

The changelog is quite big, but it doesn’t even cover all the changes, as many integrations have been completely rewritten.

The biggest (breaking) change is the merge between plugins and backends. Now, except for those integrations that actually listen for messages and execute them (like HTTP and Redis), all the other integrations are plugins. This greatly simplifies the configuration and removes a lot of confusion for new users.

The Docker support has been greatly improved too. There are now officially supported multi-arch images for Alpine, Debian, Ubuntu and Fedora, an official docker-compose.yml file, and both the platydock and platyvenv utilities have been almost completely rewritten to seamlessly automate the creation and configuration of containers and virtual environments (respectively) starting from a single config.yaml.

And the Python API has become much simpler and consistent. No more __init__.py files that the user had to manually create in each subfolder of scripts, just drop a .py file with your automation in the scripts dir and it’ll be picked up. Moreover, the most common imports are now available on top level as well, and there’s no more need to create procedures/hooks/crons with varargs:

from platypush import run, when
from platypush.events.sun import SunsetEvent

@when(SunsetEvent)
def sunset_lights_on():
  run('light.hue.on')

There’s also a revamped documentation portal, which now includes both the wiki and the plugin reference.

Most of the integrations have been rewritten at different degrees, and in the process many bugs have been squashed, many features added and many APIs updated to be more consistent, so make sure to check the documentation pages of your integrations in order to migrate.

And if you have more requests or questions, feel free to open a ticket, a PR or ask on the Lemmy server.

https://blog.platypush.tech/article/Platypush-1.0-is-out

fabio, to Israel
@fabio@manganiello.social avatar

“You should help us and let us take care of you. You don’t want to be getting into things that could compromise your security or that of your family.”

#Israel has employed against the #ICC the same intimidation tactics employed by criminals in my home town, and so far got away with it.

Calling out Israel as a mafia State that ought to be eradicated in its current form is a collective civic duty.

https://www.theguardian.com/world/article/2024/may/28/israeli-spy-chief-icc-prosecutor-war-crimes-inquiry

fabio, to random
@fabio@manganiello.social avatar

The home of the 5000-year-old #Yamnaya civilization, ancestors of most of the people currently alive in Europe, US, and all the way down to Iran and India, has finally been pinpointed in the valley laying between the Dniepr and Don rivers - just in the middle of Eastern Ukraine’s current battlefield. It was most likely a branch of the original Indo-European communities that lived in the Caucasian steppe.

From the Ukrainian steppes, these people spread throughout the whole continent within a couple of centuries, arrived in the UK about 4500 years ago, carried with them the language that evolved into the languages spoken by most of today’s people (from Latin, to Norse, to Germanic, to Sanskrit), the Y chromosome carried by most of men alive today, and probably also tolerance to lactose - and also susceptibility to genetic diseases like multiple sclerosis.

It’s sad to think that this may be the last archaeological finding in those lands for a while, as future archaeological missions will probably have to dig through km of landmines.

https://www.economist.com/science-and-technology/2024/05/05/archaeologists-identify-the-birthplace-of-the-mysterious-yamnaya

fabio, to threads
@fabio@manganiello.social avatar

It’s been almost 3 months since #Threads joined the Fediverse family. A quick overview of what changed since then:

  1. The hordes of Nazi/homophobic users from the outside world into our safe islands are nowhere to be seen. I was insulted multiple times a couple of months ago, along the lines of “if you don’t proactively defederate Threads then you’re an asshole who does nothing to protect the marginalized minorities on the Fediverse from the outside world!“. Well, guess what, it turns out that not everyone outside of our comfort zone is a pathological jerk craving for psychological abuse. It turns out that the minorities police over-reacted. And it turns out that the whole Fedipact thingy was probably collective hysteria.
  2. The Threads-Fedi sync is still an opt-in feature, and only available to accounts in selected countries. And posting responses from the Fediverse to a Threads post isn’t supported yet. I’m not sure if they are ever going to change that, but given the lack of announcements in these months I’m wondering if anybody at Meta is even bothering to work on this integration, or if it was just about another loud announcement for what was a time-bound experiment with no follow-ups.
  3. Threads itself, after reaping the initial novelty benefits, is losing momentum. No E-E-E on the horizon for now.

Result: I added a couple of Threads accounts to my list, I see their content on my timeline every now and then as if they were just another Fediverse instance (but one that I can’t directly interact with), end of the story.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • JUstTest
  • ngwrru68w68
  • everett
  • InstantRegret
  • magazineikmin
  • thenastyranch
  • rosin
  • Durango
  • ethstaker
  • Youngstown
  • slotface
  • khanakhh
  • kavyap
  • DreamBathrooms
  • Leos
  • osvaldo12
  • tacticalgear
  • cubers
  • cisconetworking
  • anitta
  • provamag3
  • modclub
  • mdbf
  • GTA5RPClips
  • tester
  • megavids
  • normalnudes
  • lostlight
  • All magazines