• 2 Posts
  • 499 Comments
Joined 2 years ago
cake
Cake day: July 31st, 2023

help-circle

  • I agree with your overall opinion, but I just don’t agree with how the problem was presented. Your statement, with more of the surrounding context:

    lemmy.ml, works more like that than you realize. e.g. a change is soon going to give lemmy.ml veto power in what communities are allowed to be acknowledged as existing to new instances …

    The key words here are “allowed to be acknowledged as existing”. Not acknowledging a community’s existence means not federating it. .world does that with db0’s piracy community because of EU laws, and it’s basically an instance-imposed community ban. Pyfed has/had a hard-coded denylist of community names in the source code that stopped them from being federated, and the result was none of the instances running unmodified Piefed were able to access them.

    I wouldn’t have an issue with if you said a change in Lemmy “gives lemmy.ml exclusive control over promoting what communities show up as popular in other instances”. They don’t have the ability to censor the existence of communities that go against their views just the ability to censor their promotion. That’s a big problem, but it’s not as catastrophically bad as them having the power to censor the actual content on other instances.


  • I dislike centralization as much as the next person and have my issues with lemmy.ml being allowed to control anything outside its own instance, but I think the way you phrased it is misleading.

    what communities are allowed to be acknowledged as existing to new instances

    That suggests .ml has the ability to prevent communities from being acknowledged at all by other instances, while the anti-feature is actually about them being the sole source of truth for what counts as a “popular” community.

    They can censor and curate that list to their authoritarian-apologist desires—which is a problem—but it only affects discoverability when browsing for popular communities, and instance admins can (and should) turn that off.


  • Your source is 3 months old and doesn’t back up your claims.

    what does “hardcode lemmy.ml as a source to pre-fetch popular communities” mean in practice.

    It is an attempt to pre-populate new instances with some popular communities which is seen as a way to improve discoverability. I find the general concept of using “popularity” for that to be somewhat problematic, but the main issue I have with the actual implementation is that it uses lemmy.ml as the source of truth for that, and there is no way to change that*.



  • You would hope, but knowing how competent copilot is, it’s just going to turn out like this:

    User:
    I’m running out of space, can you help me clean up?

    AI:
    Sure thing, I can help with that. You have some programs that haven’t been opened since 2017. Would you like me to delete them?

    User:
    Yes

    AI: OK, let me do that for you.

    I apologize, but as an AI Agent, I am not allowed to delete files or uninstall programs automatically. You can remove them yourself, however. I have created the cleanup.txt file on your desktop, which you can run by renaming the file to cleanup.bat, right-clicking on it, and selecting “Run as administrator”.

    User:
    Thank you, I did that but it only freed up a little bit of space. Can you find more?

    Error processing request: 0xC3E9A005.
    Unable to connect to copilot agent service:
    The system can not find the module specified: “kernel32.dll”



  • No entitlement necessary.

    People typically welcome more competition in retail spaces. Having the freedom to pick between store A and store B allows consumers to choose whichever works best for them, whether for convenience or service reasons. Look at GOG. Nobody is complaining that they exist, or that they sell a subset of the games that people could instead purchase on Steam.

    What people don’t welcome is companies deciding they want a slice of the pie, entering a market, and then making the experience worse1. Coercing people onto a platform by removing their ability to choose is consumer-hostile. People complained when E.A. and Ubisoft made new games exclusive to their own storefronts, but they begrudgingly sucked it up because those were developed by the platform owners and they weren’t interfering with games they didn’t own.

    What Epic Games did was make timed exclusivity deals with third-party developers2 and publishers in an attempt to stick their foot in the door, while providing the bare minimum service to consumers3. They made EGS for the publishers and offered little more to their customers than contempt and the occasional free game as a bribe to boost the Epic Games Store user counts.

    The cherry on top was Tim Sweeney acting like the messiah of PC gaming coming to save it from the Steam monopoly, only to start behaving like a petulant child on social media in response to people justifiably being pissed off at Epic Games for the monopolistic shit they were doing.

    If his decisions weren’t openly hostile to the people he expected money from, there wouldn’t be much of a reason for people to dislike him. But, through his decisions and actions both as the leadership of Epic Games and as himself on Twitter, he gave people plenty of reasons.

    1: See digital streaming services, for example. Everyone was happy to just pay for Netflix. Some of them even paid for Crunchyroll, too, since it provided a separate catalog. Now, every media conglomerate has taken their shows off of Netflix and moved them to their own separate services at the same price point. It’s not a coincidence that digital piracy is making a comeback.

    2: Such as with Ooblets, when they paid the developer after the game was crowdfunded to release it on EGS instead of Steam.

    3: No user reviews, it took years to get a shopping cart, customer support being useless when people get locked out of their accounts, etc.




  • As a developer as well, I agree that they can get fucked. Bloated crap that wastes bandwidth and ruins first-time-to-paint on mobile devices by necessitating downloading and initializing a multi-megabyte bundle of npm packages.

    As a user of the internet, I need websites to work, however. I would have disabled JavaScript entirely by now if it weren’t for the fact that doing so renders what feels like half of the entire web unusable.


  • Might be that there’s some way of blocking that behavior if you don’t like it, though, if I’m not seeing it.

    Not without either breaking most SPAs (Single-Page Applications) or writing userscripts with site-specific logic.

    The classic way of doing this crap was to make a placeholder page navigate to the article page. That leaves the redirect page in the history stack so when the user presses the back button, it just opens the page that navigates them forward again.

    The modern way is to use the history API with history.pushState to add a history entry while listening for the popState event to check if the user pressed the back button. Unfortunately, both of those features have a legitimate use case for enabling navigation within a SPA. Writing an extension to replace them with no-ops would, in the best case, break page history in SPA websites. In the worst case, it would break page routing entirely.

    You might be able to get away with conditionally no-oping their functionality based on heuristics such as “only allow pushState if the user interacted with the page in the last 5 seconds,” but it would still end up breaking some websites.