- cross-posted to:
- BoycottUnitedStates@europe.pub
Glad to be a citizen of the chadiverse.
This has absolutely nothing to do with enshittification. Bluesky doesn’t need that redirect to know what you’re clicking on. You’re already on their platform, they can already track every single click that you do while on Bluesky including navigating to outbound links. I’m a bit shocked that nobody here is calling that out to be honest
FUD is the name of the rage bait game.
I don’t know much about how any of this stuff works, so these are honest questions in good faith. But how did Bluesky know, before this change, that I clicked a link? Am I not just telling my browser to visit a website? I don’t really understand how it’s different from me copy-pasting the URL manually.
The same way that they know that you clicked on literally anything on their website.
It’s foundational to how the modern internet works (more specifically JavaScript)
For a more visual example, let’s say there is a button that makes an animation or changes color when you hover over it.
That is happening because of code running in your browser that was written by the website that served it to you, in order for the button to know to change, the code must know where your mouse is and if the mouse is hovering over the button.
Your browser, emits ‘events’ which the JavaScript code is able to interact with, these are things like keystrokes and mouse actions. The JavaScript running on the page can very trivially record these actions.
Every single way you interact with a website can be tracked, here is a commercial product that specializes in complete session recording (in theory to see how your users interact with your pages to make improvements: https://mouseflow.com/platform/session-replay-tool/
Am I not just telling my browser to visit a website?
Well yes, but actually no. You are clicking on a link, which, by default, will make the browser visit the website behind the link. But the website that shows you the link can have Javascript code in it, which runs in your browser and can, among other things, “intercept” clicks on anything and change what the clicks are doing.
This is how this redirect is happening in the first place. The links on Bluesky still point to the correct target site, but when you click one of them, JavaScript jumps in and changes the target of the navigation to the redirect domain. This is not necessarily to deceive you, it’s actually a good thing that you can still check the website you’ll end up at before you click, and you can still do things like right-click to copy the link manually this way.
That means that even without the redirect, JavaScript could for example not change the navigation target at all, and just send a tracking event to their servers in the background to let them know you clicked the link. This is how it works for most websites that use analytics. For the normal user this is totally invisible, and this is why I’m saying that bsky doesn’t need the redirect to track you. They could do that in a much less obvious way already. And for all we know, they probably are already doing that, as their privacy policy explicitly states that they can collect usage data like what links you click on.
All of this is pretty standard for any commercial service on the web, btw - knowing what your visitors/users are doing makes it much easier to see where your app might be having issues, what features need to be focused on to be improved, etc. It only gets shady if that data is also used for marketing or sold to third parties. And, to be fair, bsky’s privacy policy doesn’t really prevent them from doing that as far as I can tell. It’s just that all of this was already the case before the redirect, so it’s very unlikely that this specifically is suddenly a sign of oncoming enshittification.
Indeed. I have no doubt that BlueSky will eventually enshittify given that they are not truly non-commercial, but this is not an example of such a thing.
Just because they have other means of doing link tracking doesn’t mean they aren’t using this link proxying to track stuff.
I mean… Sure? They might, or they might not. My point is that pointing to this change as a sign of enshittification doesn’t make any sense, because it’s not changing anything about how they can track and exploit you. There’s nothing there to suggest that this is related to a change for the worse regarding enshittification.
If you want something to point to, take their privacy policy that allows them to collect your usage data and possibly use it for marketing purposes, not a random feature that likely has nothing to do with this.
A centralized platform did something? Must be bad. The post title primes that reaction.
So why?
Facebook does the same, even in their own in-app browser to keep tracking you.
I don’t think that is true, iirc you can’t track simple clicks on HTML
a
elements.With JavaScript you can track your precise mouse cursor movements. Many analytics products even offer that as an “session replay” feature to check how a user moved their mouse, or to see heatmaps of where people are pointing to.
Tracking actual clicks is obviously much more trivial.
Apart from using JavaScript, there’s also a way to track links in HTML
https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#ping
TIL, thanks for sharing
with javascript you can just use an onclick.
Yes, you absolutely can, and it’s super simple. Click listeners are one of the most basic things you can do with JavaScript, and there’s nothing special about
a
elements that would make them not work. The only way to stop it from the user’s side is to disable JavaScript in their browser, but that comes with the downside of the majority of websites and apps just plain not working anymore.
They already know your IP address, you’re using their website/app.
It’s either to track outbound clicks (And potentially block them if they’re harmful, YouTube and Steam do that), or a much more unlikely option is to hide the referrer from the target site (Since browsers have better ways to handle that now, but old ones don’t)
Wouldn’t it be easier to just scan the original post for harmful links?
Then you have to scan every single existing known post every time a new link is blocked, if you redirect it through a bouncer it’s a single endpoint to block any link, regardless of the source of the post (since bluesky is in theory decentralized)
Interesting idea. Is that what devs & mods have commented about the system setup in update notes (if any?)? I’m not in web development, and not at all sure about what’s considered standard practice or new. Others seem to be commenting in a way that sounds as though they feel put out or deceived, but you’re saying it’s just a minor security protocol?
Could be that.
Could be big data. If you click a link to furaffinity on Bluesky, this change means they know your account visited that website, and they know you’re a furry. So they sell that data to Fursuits-R-Us. Then Fursuits-R-Us buys some feed priority with furry users, and now you’re seeing a lot of posts about Fursuits-R-Us. Ta-da, that’s the magic of feed-integrated personalised advertising. You get marketed to, and you don’t even know it.
You might think advertising fursuits is harmless. But what if The Heritage Foundation buy that data and that feed priority instead? Or what if a right-wing Twitch streamer just started a playthrough of Red Dead Redemption, so they pay Bluesky to promote their content to all accounts that are marked as politically naive Red Dead fans?
This is how elections are bought and sold.
No such thing as a free lunch, amirite? At least with the realization that your data is getting harvested like tuna by pirate fishing, you can purposely feed it bullshit to skew the metrics over time. If you want to get on the inside track of cheese sales, setup a program to search for cheese 1-3 hours/day during your time away from the terminal, and see how many sales of delicious brie/roquefort/edam/camembert/cheddar/emmentaler you get. Might as well get ads for delicious cheese wheels while you’re at it.
Websites can change
So either they are solving problems the most common browsers are solving or they are tracking clicks to sell user data. Somehow the latter sounds more likely, especially since they have no reliable source of income yet.
True, but at the same time it’s their app. They already know what profiles you’re looking at, what posts you’re viewing, and the images you view, knowing what links you’re clicking on is just another event handler.
track outbound clicks (And potentially block them if they’re harmful, YouTube and Steam do that)
Google & Meta & Discord doing the same?
Didn’t take long for the expected to happen.
Never follow social media to a second location.
sometimes follow social media to a second location.
always follow social media to a second location
perhaps even a third or fourth location
The mistake was the first location to begin with, so might as well go all in.
There is a legitimate reason for this: it’s the only way to provide content creators with evidence of how many people actually clicked on the link.
The downside is that there is so many ways that a feature like this can be abused by BlueSky in ways that can hurt users.
Yeah, it’s literally the second step of enshittification, where platforms stop allocating value to users and start allocating them to publishers. This is still Bluesky expanding out its surveillance apparatus, something it will have every incentive to abuse later on like other platforms before it.
The content creators themselves could use a link that goes through a counter if they really need it, no?
No, it’s not the only way. You could track the click with JavaScript.
The user can also block your tracking scripts. Besides, the user can share the link with friends, and you won’t be able to track them this way. I’m sure there are many other reasons why having a middleware is de-facto the industry standard.
The user can also block the URL target rewriting. Not sure what’s your point though, I said it’s not the only way, not that there are better ways.
There is no way it isn’t already being abused, there are zero guard rails on it
Fucking typical, a move that hurts the platform long-term is being cheered for by ignorant idealists while the makers of its demise are already salivating and cartoonishly rubbing their hands in glee
Why do content creators need to see how many clicks they get?
It’s how a number of them get paid.
I think I would like to go back to social media before people were getting paid for it
I would like to go back to the 90s and 00s where the internet wasn’t being monetised at every fucking opportunity.
Thats the fediverse!
I don’t know. I’m happy that some very talented and knowledgeable people create content that makes my life a little better, and that they are able to do that thanks to the various forms of monetization.
Removed by mod
That’s incorrect.
BlueSky relies on JavaScript to run (try turning it off and loading their site, it won’t even render). Click-through traffic is almost exclusively measured by JavaScript (e.g. Google ad “events”). This is the same as measuring other stats, like whether you lingered on a post before scrolling past it, or whether you opened another tab, or whatever.
Proxy links are absolutely a method of measuring traffic, and they’re a method that works even when the site has JavaScript disabled - but since that’s not how Bsky works, it’s not relevant.
it’s the only way
lol. Citations needed. Pretty sure this is JavaScript 101.
Trust me bro, we are not tracking you. Please trust me bro!
Anything under direct corporate control will enshittify. It has nothing to do with mission, values, direction, purpose, or any other bullshit in the charter of a service. If it is controlled by an entity with shareholders turning a profit, it will enshittify, because those shareholders will demand ever increasing profit for their investments. It is a one-way process.
The direct counter to enshittification is interoperability: the ability to pack up your content (likes, followers, messages, uploads) and import it into another service provider.
Since Signal is open source and mostly FOSS, you can theoretically create a Signal fork that can import Signal backups. I know because this program can read such backups and convert them into other formats. Ideally, the Atlantic reporter could have exported a Signal backup with the offending group chat messages before they expired.
so Signal too?
Yes indeed.
What?
While Signal and the structure of how signal is managed has flaws.
It is not a coorporation and therefore has no need to enshitify
The Signal Foundation is not a corporation.
But Signal Messenger, LLC is indeed a corporation, and it operates officially as a subsidiary of the Signal Foundation. The Signal protocol, as well as the official app, is developed by the LLC and not by the foundation.
In any event, there is plenty of room for a future enshittification of Signal. Is it less likely than many other entities? That’s probably a fair statement. Is it impossible? Not in the least.
it’s a “non profit organisation”, just like OpenAI once was
The only thing I want from companies is just a little transparency and a paid option to opt out.
“Facebook is free, but we will mine the balls off your data, monitor everything you do, we will control your feed and you cant customise anything. Or for $20 a month, we wont mine or track you, your feed and how it works is totally customisable”
Just put a number to it and let me decide if my privacy and experience is worth the money.
20$ is ridiculous. 1-2 would be reasonable.
What they ask for isnt the point, just give me the option to decide for myself. 1
Oh, there is so much more you can do with this “functionality”. Welp, anyone who trusts bluesky even an inch better prepare to be deeply disappointed.
“It’s better than the Nazi one” major selling point. The bar is so low, it’s under Satan’s foot.
Oh, there is so much more you can do with this “functionality”.
Like what? What would this redirect be able to do that they couldn’t already do just with their normal website/app?
As predicted… And people piled on me here when I question why they were falling head over heels over bluesky when it was yet another techo bro platform
Fucking same! It baffles me how dumb people can be over and over again
I noped out the second I heard Dorsey was involved. Don’t care he isn’t anymore, it got the Techbro ick! Eurgh 🤢
This is not enshittification. Many other knowledgeable users who actually know what they’re talking about have explained why.
deleted by creator
they’re in this very thread cmon man
deleted by creator
It’s not for bsky to log clicks…??? They can already do that without doing this bounce link because you’re using their app??? Like folks are we really doing this?
It’s for external websites to know that the click came from bsky. (E.g. if you click the link from the bsky app, without this trick it would like you just typed the URL in, since apps don’t provide a referral header)
“check the link before you click” and these man in the middle forwarding systems make that impossible.
generally not true… the link href (the thing the browser shows to the user) would be the original link… bsky hijacks the link with an onclick (or similar) handler so you can see where you’ll be taken before clicking
Funny how people keep saying it’s not enshittification right up until the point where they choke to death on shit.
It’s not exactly enshittification yet. The service still mostly works. But it is an attempt to build a wall around the garden.
Fuck walled gardens. That shit got old years ago. At least with FB you could pretend you didn’t expect it. Maybe. If you’re oblivious, at least.
I don’t really see how. Other AppViews and custom clients don’t do this. Its just a few lines of javascript in the frontend.
Anybody know what the real reason for this is?
All websites can track how often a link is clicked, and what the link is, and who clicked it (especially if you have an account).
It’s to get around a bug on some platforms where the Referer header isn’t set properly. Basically when you click the link in the app (maybe other platforms too idk), it can’t set the Referer, so website statistics can’t know what came from bsky. This was in their changelog. It used to already work correctly on desktop, though.
Yeah I saw it in some announcement from them, it’s this.
Probably so bluesky can get affiliate money, either changing affiliate links with their own a’la honey or just tracking them to report to advertisers how much traffic is going through their platform to garner deals.
In other words, money
So far no one seems to know what the real reason is. That is why there is a lot of guessing.
They said themselves its for publishers to track outgoing clicks.
Not sure why they have it go through a redirect like that; you can just trap click events and do whatever with them, including sending tracking info back before sending the user to the new page.
I’m thinking they’d want to control misuse of the platform. Someone links malware and it is shared enough, they may want to be able to intercept that. At least, that’s what I’d want to be able to do.
i doubt it’d be for that: if it’s a malicious link, they can just remove the post/link from their platform and the same effect is achieved
best case scenario it’s planning for when atproto has more PDSes, front-ends, etc: in that case, a central place where all platform links go so that you can set your “home” server so that all links into atproto redirect to your home server
worst case it’s for tracking click through for advertising
Most companies implement for malicious link control. They can actively scan as needed and they can prevent users from going to any links deemed malicious. It also adds tracking for amount of clicks on a specific URL. There are more nefarious uses that others have stated redirection for paid links to them and user profile building for ad targeting
How is this enshittification? As far as an end user is aware nothing has changed right?
Literally nothing. Sure, twitter used its similar t.co links to throttle sites, but bsky isn’t doing this, and if they did, someone could fork the app and people could start using that instead.
Even if it didn’t go to bluesky.app first before the actual link, clicks on it can still be made to be tracked. It’s trivial to do it much more discreetly.
It is definitely tracked, but I would guess that turning it into a bluesky link has other uses, not all nefarious, such as: link previews, caching, dealing with dead links.
Removed by mod
I use an app called URLcheck that I’ve installed via F-Droid. Although it doesn’t appear to give me the ability to skip the bluesky redirect action but at least I know it’s there I guess.
The best part is that if you inspect elements, it still shows as the original link. They only generate the go link after you clicked.
That is so… gross!!! Ugh. Yuck!
Gross, or brilliant?
Depends on where you fall on the sociopathy spectrum.
The former lol. I’m a software dev and I’m ashamed at how we keep making the internet worse by just doing whatever the money tells us to do. It’s even worse when we “innovate” for them in this way.
That’s how Google always worked, btw. But there is one obvious benefit to showing the original URL before you click it, you can hover it to see where the link actually leads before they hijack the click.
Not always, but for quite a while now
that’s also for accessibility, etc so i wouldn’t pin it all on being malicious
You can use pattern checker to automatically replace the URL with the original one.
"bsky": { "regex": "https?:\/\/go.bsky.app\/redirect\\?u=(https?.*?)", "replacement": "$1", "decode": "true", "enabled": "true", "automatic": "true" }
(it’s possible they will add more parameters in future, in which case you may want to restrict the selection to not be essentially anything after
u=
)URL Checker is an awesome that many more should be using if they’re not. It can also remove trackers, redirects and other shenanigans from links before committing to the click
Right? I didn’t even know all of the times I’ve clicked links that had trackers on it before using this app, or to remove amp links and such too. I’m not 100% sure what the “scan” function does however.
the scan button is added by the url scanner module. it can do a virustotal check
Ah that’s right, forgot.
FYI, you need to insert an additional Return ¿ or the text will align with your image’s left-hand side and throw off the comment formatting. The extra line of space will either place the text above or below the image instead of on its hip.
Ah okay thanks. Is that true, independent of the app I am using? Reason I ask is that I am currently using Sync, but I’m looking into other apps (Voyager specifically)
I couldn’t say with any certainty whether or not your choice of app would affect formatting, or how, as I only use one and it’s not Sync.
Theoretically, formatting rules don’t vary widely from one program to the next, as it’s all pretty standard stuff tracing back to standard practice for publishers’ typeset or even typewriters when you get right down to it. The enter key is literally a downward & left-hooked arrow indicative of the advance-page (rotate up and away from user/keyboard to place cursor below already-written text) & return to left margin action on a typewriter, which is what including the space will accomplish in this scenario.
Ah okay thanks. I’ll have to play around with the apps I am trying out then. I switched over to Voyager to reply to this comment, and looking back through the original post, comments and such seems to be rendered better in voyager than sync, and I know it’s been a while since sync has been updated, so it may just be a case of that app getting more and more out of date.
In any case, thank you for your reply!
samsung internet? why?
Depends on what I’m doing, most of the time it’s Firefox with noscript running, ad block, privacy badger, decentraleyes, etc. but if I need to log into, say like a bank website, I’ll use Samsung Internet. I know it’s underpinnings are chromium, but I dunno, feels better than using straight up chrome I guess.
why not just use firefox for the bank? is the website broken?
I mean I could, I’d have to disable noscript for that site, which isn’t hard to do, but since URLcheck just lets me pick which browser I want to use, I’m just being lazy about disabling my Firefox extensions lol
followup: here is its docs: https://noscript.net/usage/
Ah neat, thank you!
I think you can add per-site exceptions in noscript, so you don’t need to disable the whole addon
Eh. Doesn’t seem too bad, but then again, I haven’t made an account there because of it not really being decentralized enough for my taste.
Seems kinda dumb to go from one centralized service like X to another. Bluesky’s claims of being decentralized are highly exaggerated.