@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

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

The home of the 5000-year-old 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 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.”

has employed against the 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 history
@fabio@manganiello.social avatar

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 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 ai
@fabio@manganiello.social avatar

joins the ranks of software projects that ban 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 write a suite of unit tests for this class”? Or also cases where 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 random
@fabio@manganiello.social avatar

Positioning your project as an alternative implementation of something is a losing proposition.

It doesn’t matter how smart you are. It doesn’t matter how hard you work. The problem is, when you build an alternative implementation, you’ve made yourself subject to the whims of the canonical implementation.

They have control over the direction of the project, and all you can do is try to keep up.

https://pointersgonewild.com/2024/04/20/the-alternative-implementation-problem/

fabio, to random
@fabio@manganiello.social avatar

Is anyone aware of ways to control programmatically in any form, without having to focus the window and having to emulate keyboard/mouse bindings in it?

ffplay is amazing, light, fast, and it’s a player that comes with any installation.

supports media players such as VLC, mpv, mplayer, omxplayer and gstreamer, but they all come with their bags of issues - the VLC libraries seem to break too often on Wayland, mpv has too many API breaking changes across versions and controlling it only works if the version of the library and the player are carefully aligned, mplayer is an unmaintained dumpster fire with a messy control API, working with gstreamer in Python requires the user to install the whole fat GLib luggage and MBs of plugins, and omxplayer is basically dead.

ffplay would be my favourite pick for a portable and lightweight default media player. But the fact that it apparently can’t be controlled in non-interactive ways really puzzles me.

fabio, to llm
@fabio@manganiello.social avatar

A study that confirms what I’ve been suspecting for a while: fine-tuning a with new knowledge increases its tendency to hallucinate.

If the new knowledge wasn’t provided in the original training set, then the model has to shift its weights from their previous optimal state to a new state that has to accommodate both the previous and new knowledge - and it may not necessarily be optimal.

Without a new validation round against the whole previous cross-validation and test sets, that’s just likely to increase the chances for the model to go off the tangent.

@ai

https://arxiv.org/abs/2405.05904

fabio, to apple
@fabio@manganiello.social avatar

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

Selling credits for carbon capture initiatives that never happened: how the green economy became a marketing tool for parasitic fossil companies that reap profit without contributing any value.

When the executives of Exxon and Shell repeat that no green initiatives can happen without them (because they have the expertise, the capital, the competencies etc.), keep in mind that they’re shamelessly lying in order to extend their ride and inflate their retirement profits while burning the planet for everybody else.

Funding needs to be moved from them to new businesses that don’t have incentives in burning T-Rex juice, and these companies must be left to rot and die without anybody mourning them.

They’ve had plenty of occasions to do things right, they’ve managed to squander each single one of them, and they aren’t worth of a single inch of our trust.

https://www.cbc.ca/news/climate/shell-greenpeace-quest-1.7196792

cory, (edited ) to music
@cory@social.lol avatar
fabio,
@fabio@manganiello.social avatar

@cory the idea sounds similar to what I’ve done a while ago with + (and optionally Tidal). My implementation also uses the scrobbled tracks over a certain period and Last.fm’s API to automatically generate a “discover weekly” playlist.

I haven’t toyed with Plex in a while, but why did you have to run everything on Firebase/Supabase? If you have your Plex server running locally isn’t it more convenient to go for a fully local solution?

fabio, to Pixelfed
@fabio@manganiello.social avatar

deleted_by_author

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

    @paul yeah it seems to work for me too now. I eventually went for the nuclear option - reset the db, encryption key, workdir and create everything anew.

    Not sure if the problem was with some cached configuration parameter that wasn’t refreshed even after the container was destroyed, but at least things seem to work now…

    @dansup

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

    @Goffi integrations like Instagram, Telegram and WhatsApp mostly rely on libpurple plugins (like purple-gowhatsapp or purple-instagram) that are either poorly documented, more unstable or lack many features that are available on Matrix bridges.

    By own admission of some of these developers, they usually don’t test their plugins against Spectrum2, and mileage may vary a lot. And usually when one of these plugins dies it takes the whole service down with it.

    I’m in general a bit unimpressed with the state of libpurple - I feel like it’s becoming a very aged ecosystem maintained by a very limited number of developers that have to make those plugins work for a very wide range of clients. That’s also the reason why I left bitlbee.

    Slidge seems to be promising, but I feel like it’s still at an immature stage.

    jwildeboer, (edited ) to random
    @jwildeboer@social.wildeboer.net avatar

    #WhereIsMySurprisedFace

    Facebook/Meta starts talking about the "Extend" phase of Embrace, Extend, Extinguish as predicted:

    "“You could imagine an extension to the protocol eventually — of saying like, ‘I want to support micropayments,’ or … like, ‘hey, feel free to show me ads, if that supports you.’ Kind of like a way for you to self-label or self-opt-in. That would be great,”

    https://techcrunch.com/2024/04/25/why-meta-is-looking-to-the-fediverse-as-the-future-for-social-media/

    fabio,
    @fabio@manganiello.social avatar

    @jwildeboer I’m honestly ok with some of the ideas outlined in that interview.

    Content monetization is a topic that has been floating around on implementations long before Zuck’s helpers considered playing with it.

    @dansup already toyed with the idea a year ago.

    @Techaltar recently also brought up the topic in his series of Fediverse interviews.

    And creators like @thelinuxEXP have mentioned multiple times that the lack of financial incentives to post their content on e.g. PeerTube vs. YouTube acts as a deterrent for many.

    And the Fediverse community in general has already a strong sense of “reward-based” ethics - many already make LibrePay/Patreon donations to their instance admins and favourite content creators, so why not embed such ability in the protocol itself and bypass the middlemen?

    Allowing micropayments in ActivityPub (per-post, one-off, recurrent etc.) would actually attract many creators who are currently stuck against their will on proprietary platforms, are at the mercy of YouTube’s mercurial monetization algorithms, don’t have much freedom in deciding how they want to get paid, and have to give back a non-negligible share of their revenue to the platform itself.

    Imagine instead a world where micropayments are handled at protocol level itself, a piece of content or a profile that requires the user to make a payment would transparently respond with an HTTP 402, the money would move from the donor’s account to the contributor’s without any middlemen to shave off profits, no external algorithms are in charge of what can be monetized and how, and creators don’t even have to worry about posting the same content across multiple different platforms because ActivityPub would take care of the whole distribution problem. I can’t think of a better silver bullet to get content creators to do the jump.

    The thing is that if we don’t implement this right on the protocol level because we oppose commercialization on ideological grounds, then Threads may implement it anyway on their version of ActivityPub (and then yes, it’d really be E-E-E), and content creators who do content creation as a job have one more reason to avoid the Fediverse.

    I’ve got a bit more of a mixed feeling about ads instead. There’s sensitivity on the Fediverse about donations and micropayments, but almost everyone here hates the ad-based business model to the core. If the payments idea and implementation works right, then I don’t think we need to pollute our walls with such low-quality littering. I’m happy to leave that to Threads if they want to implement it, because I really don’t see much of added value in it and I don’t see why anybody out there would like that idea.

    fabio,
    @fabio@manganiello.social avatar

    @Chocobozzz @thelinuxEXP @Techaltar @dansup @jwildeboer I would add that any implementation of a payment subsystem should probably be done at protocol level, so individual implementations of don’t have to reinvent the wheel - doing right is a hard problem, and it doesn’t make sense to fragment the efforts by solving the same problem multiple times on Mastodon/WriteFreely/PeerTube/Pixelfed etc.

    The payments subsystem should be better integrated in the ActivityPub ecosystem compared to a “Donate here” link that redirects to a 3rd-party provider. This is probably the right chance of giving the HTTP 402 code the implementation it deserves.

    I left the payments industry a few years ago so I’m not sure of what open solutions and protocols are in the market that could be already leveraged, but maybe something like OpenPayments could be a good starting point - there are many efforts on the open banking standards lately, with different degree of maturity, and IMHO a good implementation of payments over ActivityPub could be a great driver for adoption.

    I’ve got the feeling that if we don’t do this right then Threads could scoop up this chance for an “embrace” to “extend” pivot.

    fabio, to random
    @fabio@manganiello.social avatar

    Like with all the commodities with increasingly scarce supply and high demand, the time has come for addresses to also become a speculative asset.

    Not the kind of thing that you'd buy to run your little server, but the kind of thing to hoard on and use as the aluminum foil to wrap and back your corporate bonds.

    Just when you think that the enshittification of our industry can't get any worse, here you go with news of somebody creating money out of thin air backed by IP addresses.

    https://tech.slashdot.org/story/24/05/04/2122251/multinational-isp-offers-206m-in-secured-notes-backed-by-ipv4-addresses#

    fabio, to Jewish
    @fabio@manganiello.social avatar

    My solidarity goes to those #Jewish / #Israeli students who genuinely feel unsafe, threatened or subject to prejudice. Nobody deserves it.

    But I couldn't care less about those who just feel uncomfortable because the protests are about something bad that their country is doing.

    When Putin started his unforgivable war in Ukraine, and protests sprawled around the world, there wasn't much talk about shutting down the protests because they would make Russians abroad feel uncomfortable. So why do we have to treat Israelis and Jewish as exceptional snowflakes? Just because they keep stubbornly playing the antisemitism card whenever you criticize them?

    #Safety and #comfort aren't the same thing. People have an inalienable right to feel safe and not subject to prejudice. But their ideas and dogmas don't have the same rights. They aren't people. I shouldn't refrain from protesting against ideas and acts that I perceive as wrong just because my protest may make somebody else feel uncomfortable. Pulling people out of their comfort zone and creating awareness is the whole point of a protest, after all.

    And universities are exactly meant to be those factories of ideas where different sensibilities meet and come up with a better view of the world, without fear of retaliation.

    If you don't feel comfortable about it, if you feel like criticism against your ideology is criticism against you as a person, then probably you just don't belong to a university in the first place.

    And if you keep calling out as an antisemitic anyone who criticizes the acts of #Netanyahu's government, thus advancing the fascist theory that the ideology of a government is part of the identity of the nation, and thus political criticism is personal criticism against all of its the citizens, then you're just an idiot, or someone who benefits from this simplification.

    #Israel #Palestine

    https://www.theguardian.com/us-news/article/2024/may/03/college-gaza-protests-antisemitism

    koen, to Amsterdam
    @koen@procolix.social avatar

    Dear European based LGBTIQ+ people.. (so basically everybody).

    Today I attended an event in organized by @waag @DeGroene @gemeenteamsterdam and the Amsterdam public library called

    Featured speaker this time was Euro Member of Parliament @kimvsparrentak who passionately spoke on the need for a more free Internet detached from and more focussed on and real interaction.

    When confronted with her presence on X and Insta, and the lack of active presence here on the we promised to help her.

    Please help us get a decent follower-base here and follow her account right now, before she even gets a chance to get more active. A follower base of more than a 1000 people will surely help her convince her party members to spend time and money on a real presence here.

    I used a cut out of the image posted by @sicco in this post: https://todon.nl/@sicco/112372340250592627 thank you for that Sicco.

    fabio,
    @fabio@manganiello.social avatar

    @koen @waag @DeGroene @gemeenteamsterdam @kimvsparrentak @sicco I’m definitely onboard with such initiatives, but IMHO the chicken-and-egg problem should be solved on both ends.

    Many politicians agree with us that centralization is bad. Yet their primary presence is on Meta/X in most of the cases. When asked “then why are you not on the Fedi?”, many respond with “because there aren’t enough people for me to justify the jump/investment”.

    And that in turn feeds the other feedback loop - “why do you still have an account on X?” - “because most of the politicians/public figures are there”.

    Building presence in the social infrastructure one actually believes in, even if that requires extra effort, shouldn’t be something contingent to the probabilities of getting thousands or followers on that platform.

    fabio,
    @fabio@manganiello.social avatar

    @amerika @kimvsparrentak @koen @gemeenteamsterdam @DeGroene @sicco @waag to be fair, recent European laws are as anti-monopolistic as they can get. The DMA is a good piece of legislation that, if implemented right, can really lower many of those barriers erected by those monopolies - from hostile approach towards 3rd-party integrations to the tyranny of the app stores.

    IMHO you don’t have to explicitly encode incentive structures when you are dismantling existing barriers. The goal of dismantling barriers arbitrarily created by someone else (e.g. by E-E-E of open protocols like RSS/XMPP, by takeover of potential competitors, by hindering inter-operability, by opposing alternative clients/stores etc.) is to re-establish the level-playing field.

    Once the level-playing field is restored, competitors have a fair access to the market again, and have market incentives to create e.g. alternative clients for Facebook, alternative app stores, social platforms that support cross-posting across walled gardens, experiment with alternative business models without having to compete with the established stalk-and-throw-ads monster, etc.

    There’s demand for these things (the number of screenshots posted on walled gardens about stuff that happens on other walled gardens are a sad manifestation of such demand), there’s potentially supply to fullfil those demands too, the only thing that stands in between is a handful of monopolies who have no incentives in opening up.

    You don’t need to give those monopolies incentives to stop monopolizing and implementing rent-seeking behaviour. You just need to hit them hard where it hurts them the most, because they will perceive any change from the status quo as a net loss and will oppose it with all the means they have.

    The retreat of a monopoly is already a great incentive structure for competitors to fill in the gaps. The only additional incentives should probably be directed towards businesses and entities that instead embrace openness (sticking to the “pick the willing, not the winners” principle). And this is probably an area where the EU could do more (e.g. through direct investing into companies like Nextcloud or Fairphone, or funding to medium-sized Fediverse server admins), so they have a better chance of standing against multibillion companies and build credible alternatives.

    fabio, to philosophy
    @fabio@manganiello.social avatar

    I often get criticized for ideological inconsistency by mixing and socialist values in my posts.

    I often cite , , and other fathers of the liberal movement when it comes to civic rights, freedom of speech and expression, and defense against conservatism, totalitarism and dogma.

    And I often use the language of , and Rosa Luxemburg when I talk about inequality and class struggle, capitalism, common resources, common access to the means of production and workers alienation.

    But the more I think about it, the more I start to actually see them as complementary sides of the same coin.

    It actually makes perfectly sense to me to be strongly liberal when it comes to individual freedoms, and strongly socialist when it comes to regulating the market.

    You can’t have individual freedoms and universal rights in an economic system that is prone to unregulated exploitation and formation of oligopolies that no longer obey to the rules of an open and competitive market.

    And you can’t have a fair and sustainable economic system without freedom of expression, freedom of growth and enterprise and equal opportunities.

    Liberalism without a socialist core is the post-1970s neoliberal degeneration advocated by Friedman, Reagan and Thatcher. It’s cynical capitalism on steroids/cocaine, it’s assured enshittification and establishment of rent-seeking behaviour perpetrated by an unaccountable handful of oligopolies who only respond to their shareholders.

    And socialism without a liberal core is the Soviet-like degeneration that the world has experienced throughout the 20th century.

    And I wish that such a liberal/socialist doctrine had more political representation out there, instead of being embodied by political forces that are often in mutual exclusion with one another.

    @philosophy @politicalscience

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

    @davidculley my experience with Ruby on Rails application mostly involves running both Mastodon and Gitlab on my servers.

    In both the cases, what I’ve noticed is that it’s not the language itself that is slow and heavy (Ruby’s weight is comparable to that of e.g. Python), but Sidekiq.

    Sidekiq is the standard framework used by Ruby on Rails application to schedule and run asynchronous jobs (processes, threads…), kind of akin to what php-fpm does for PHP.

    In my experience, it’s hard to configure properly, and when not configured properly it ends up with endless pools of active jobs doing all kind of things and sucking up all resources you give to them.

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