FluffyDeveloper

@FluffyDeveloper@meow.social

A Danish/Italian gay fox, software engineer, archivist, and writer :)

๐ŸฆŠ๐Ÿณ๏ธโ€๐ŸŒˆโŒจ๏ธ๐Ÿ‡ช๐Ÿ‡บ๐Ÿ‡ฉ๐Ÿ‡ฐ๐Ÿ‡ฎ๐Ÿ‡น

There will be NSFW, check content warnings!

PFP by juniorjosi on FurAffinity
Banner by Aphybreas on FurAffinity

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

FluffyDeveloper, to twitter

Hahahahaha xD

This is just perfect, #x isnโ€™t circling the drain anymore, itโ€™s all the way down.

FluffyDeveloper, to programming

I've finally found a way to extract an installed browser's actual user-agent via Python, using only standard libraries!

It uses the http.server library to open the teensiest little server. It serves just a few bytes of HTML and stops after the first request.

The page cannot close itself due to safety limitations built into the browser, so instead I added a redirect tag.

It's for a scraper I'm writing, which needs both the cookies and the user agent used to log in to authenticate requests. I wanted the process of getting those details to be as painless as possible for users.

patterfloof, to random
@patterfloof@meow.social avatar

deleted_by_author

  • Loading...
  • FluffyDeveloper,

    @patterfloof There are also Telegram stickers :3

    https://t.me/addstickers/EepyBios

    FluffyDeveloper, to programming

    I hate Python so much right now โค๏ธ

    The blasted CPython implementation is shit at handling recursion, so I had to turn a nice, clean, functional one-line command into a 6-line procedural function with a while.

    I hate that Python is so bad at implementing functional paradigms. Even JavaScript is better! And it's even more object-oriented!

    Python code for a procedural-style function that takes a tree and flattens it into a list, it is a lot less elegant than its functional counterpart.

    FluffyDeveloper,

    @cazabon Itโ€™s a chain of around 600 comments that triggers the exception. The issue is that each object has multiple fields that are โ€œdict-ifiedโ€, and even though only one is recursive (the replies), all those calls stack up because the top function is not closed yet.

    My machineโ€™s default limit is actually 3000, but Iโ€™m very reticent to modify it instead of the code. Besides, changing the limit only postpones the problem to the next longer chain of comments :/

    FluffyDeveloper,

    @cazabon Itโ€™s 600 comments down the branch :)

    So reply of a reply of a replyโ€ฆ etc. Not just 600 comments in a list.

    FluffyDeveloper,

    @cazabon I was also surprised by the trigger so early down the branch.

    That _remove_recursion function is there to remove links to other elements in the tree (beside replies), to avoid loops and in fact there is no loop, I tested it.

    I suspect it has to do with iter, which uses yield to return the elements. Each comment also has a field for the author, and dict is called on that as well. I think that somehow is adding to the stack even though itโ€™s a different instruction.

    FluffyDeveloper,

    @cazabon Yep, depth not width.

    Still weird that it would fail so soon though, it threw the error 488 comments deep, just around 1/6 of the recursion limit of my machine.

    I think dict and yield are doing something weird behind the scenes that keeps the stack from clearing, because I tested it and there is no looping: it fails at the first branch and does not deviate from the intended depth-first behaviour ๐Ÿค”

    patterfloof, (edited ) to random
    @patterfloof@meow.social avatar

    deleted_by_author

  • Loading...
  • FluffyDeveloper,

    @patterfloof Try deleting cookies and local browser storage maybe? Force the app to logout.

    FluffyDeveloper, (edited ) to ai

    To anyone thinking about joining BlueSky, especially artists: everything you post is sent to a third party for AI labeling.

    BlueSky uses AI to label content for moderation, and to do that they use a company called https://thehive.ai. If you look through their privacy policy, you will see that they can use content sent to them to train models for all their services, which include generative AI for both text and images.

    Update: https://meow.social/@FluffyDeveloper/110652053858910840

    FluffyDeveloper,

    @digslogic94 yeah :(

    Nothing stops people from scraping Mastodon as well, but at least itโ€™s not a built-in function x3

    FluffyDeveloper,

    @SteffoSpieler It's another social media network created by the same people who backed Twitter and Nostr. Instead of going with ActivityPub however, they decided to make their own VC-backed protocol called AT.

    The protocol itself is not too bad, but its controlled by private companies and BlueSky has decided to basically avoid moderation and offload everything to AI labelling.

    In short: it's decentralised Twitter with venture capitalists trying to control their own fediverse :/

    FluffyDeveloper,

    @murm Here you go :)

    Look under "How We Use Information We Obtainโ€, 4th bullet point.

    https://thehive.ai/privacy

    FluffyDeveloper,

    @murm No need to, here is the actual code calling on hive.ai API.

    https://github.com/bluesky-social/atproto/blob/main/packages/bsky/src/labeler/hive.ts#L11

    FluffyDeveloper,

    @murm I cannot find their privacy policy either, nor any terms of service, even on their company site.

    Maybe it's visible during signup?

    FluffyDeveloper,

    @murm I'd think they would have to have one regardless of the readiness of the software, especially for European users to follow the GDPR.

    FluffyDeveloper,

    @brandonhorst @ff00aa The difference is that with BlueSky the behaviour is baked into the network itself, and they never reveal it to users.

    FluffyDeveloper,

    @chiefgyk3d @hyc Wait, no hashtags? o.O

    FluffyDeveloper,

    Adding sources for my earlier post.

    The code calling to hive.aiโ€™s API: https://github.com/bluesky-social/atproto/blob/main/packages/bsky/src/labeler/hive.ts

    hive.ai privacy policy (โ€œHow We Use Information We Obtainโ€ section at the bottom): https://thehive.ai/privacy

    BlueSkyโ€™s TOS (section 7.4): https://blueskyweb.xyz/support/tos

    FluffyDeveloper,

    @micahdraws would you trust dorsey & co. to forbid hive from using usersโ€™ data to train models?

    Given the kind of people they are and what they say, I think itโ€™s very safe to assume the worst.

    FluffyDeveloper,

    @micahdraws They specifically say they will use content given to them to train their models.

    Itโ€™s not nefarious, but the point of the fediverse is to not be tied to private companies with this kind of behavior. Otherwise we may just as well all go back to Twitter.

    FluffyDeveloper,

    @micahdraws 4th bullet point: โ€œMaintaining, operating, improving and developing the Services [โ€ฆ]โ€

    Thatโ€™s just boilerplate for model training. These documents rarely use technical language and are much more generic so they have more wiggle room.

    FluffyDeveloper,

    @micahdraws yes but most websites donโ€™t provide generative AI services x3

    Besides, users should always be told where their data is stored, sent, and used for. Maybe there is nothing to it and Hive throw everything away after labeling it, but there is no way to know for sure and seeing the kind of people involved in BlueSky it is more than fair to expect the worse.

    Itโ€™s not misinformation, there is a literal line of code with a commit attached to it and a privacy policy that is very vague.

    FluffyDeveloper,

    @twilliability @sushee They should tell their users though. One thing is to have your content scraped by some random company, another is for the company you give your data to to give it to someone else who will use it for training.

    FluffyDeveloper,

    Linking the update lost here as well: https://meow.social/@FluffyDeveloper/110652053858910840

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