https://anderegg.ca/

URL inviato:
https://anderegg.ca/
Report terminato:
LinkTesto
https://www.theverge.com/2024/10/18/24273435/bluesky-user-spike-x-tos-ai-changes-blockingA flood of users left X and moved to Bluesky
https://www.theverge.com/2024/9/23/24252438/x-blocked-users-view-public-postswill be able to see your posts
https://edition.cnn.com/2024/10/21/tech/x-twitter-terms-of-service/index.htmltrain their AI models with user data
https://techcrunch.com/2024/10/17/elon-musks-x-is-changing-its-privacy-policy-to-allow-third-parties-to-train-ai-on-your-posts/allow third parties to use data for AI training
https://bsky.app/profile/pfrazee.com/post/3l6xwk3l43f2rposted a thread yesterday
https://atproto.comthe AT Protocol
https://atproto.com/guides/glossary#pds-personal-data-serverPDSs
https://atproto.com/guides/glossary#relayRelays
https://atproto.com/guides/glossary#app-viewAppViews
https://atproto.com/specs/atplot of complexity

Variabili JavaScript · 3 trovate

NomeTipo
onbeforetoggleobject
documentPictureInPictureobject
onscrollendobject

Messaggi di log della console · 2 trovati

TipoCategoriaLog
errorsecurity
URL
https://anderegg.ca/
Testo
Access to fetch at 'https://tinylytics.app/collector/ymKy7embDzqpj9NARJqA?url=https%3A%2F%2Fanderegg.ca%2F&path=/&referrer=' from origin 'https://anderegg.ca' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. If an opaque response serves your needs, set the request's mode to 'no-cors' to fetch the resource with CORS disabled.
errornetwork
URL
https://tinylytics.app/collector/ymKy7embDzqpj9NARJqA?url=https%3A%2F%2Fanderegg.ca%2F&path=/&referrer=
Testo
Failed to load resource: net::ERR_FAILED

HTML

<!DOCTYPE html><html lang="en"><head><!-- Begin Jekyll SEO tag v2.8.0 -->
<title>anderegg.ca | Something (slightly) less boring than nothing.</title>
<meta name="generator" content="Jekyll v3.10.0">
<meta property="og:title" content="anderegg.ca">
<meta name="author" content="Gavin Anderegg">
<meta property="og:locale" content="en_US">
<meta name="description" content="Something (slightly) less boring than nothing.">
<meta property="og:description" content="Something (slightly) less boring than nothing.">
<link rel="canonical" href="https://anderegg.ca/">
<meta property="og:url" content="https://anderegg.ca/">
<meta property="og:site_name" content="anderegg.ca">
<meta property="og:image" content="https://anderegg.ca/img/logo.png">
<meta property="og:type" content="website">
<meta name="twitter:card" content="summary_large_image">
<meta property="twitter:image" content="https://anderegg.ca/img/logo.png">
<meta property="twitter:title" content="anderegg.ca">
<script type="application/ld+json">
{"@context":"https://schema.org","@type":"WebSite","author":{"@type":"Person","name":"Gavin Anderegg"},"description":"Something (slightly) less boring than nothing.","headline":"anderegg.ca","image":"https://anderegg.ca/img/logo.png","name":"anderegg.ca","publisher":{"@type":"Organization","logo":{"@type":"ImageObject","url":"https://anderegg.ca/img/logo.png"},"name":"Gavin Anderegg"},"url":"https://anderegg.ca/"}</script>
<!-- End Jekyll SEO tag -->
<meta name="fediverse:creator" content="@[email protected]"><meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="alternate" type="application/rss+xml" title="anderegg.ca" href="/feed.xml">
<style>*{margin:0;padding:0}body{color:#DDD;background-color:#25252C;font-family:Georgia, serif;-webkit-font-smoothing:antialiased}body a{color:#FF4830;-webkit-transition:color .15s linear;-moz-transition:color .15s linear;transition:color .15s linear}body a:hover{color:#FC9}#top{position:relative;background-color:#2D2C35;border-bottom:4px solid #484852;background-image:url(/img/pixels.png);font-family:"Helvetica", sans-serif;height:68px}#top h1 a{display:block;position:absolute;bottom:-10px;right:64px;font-weight:normal;font-size:42px;color:#FFF;text-decoration:none;text-shadow:0 0 3px #080812}#main{display:flex;flex-direction:column;border-bottom:4px solid rgba(0,0,0,0.8)}#main #mainNav{display:flex;width:100%;max-width:100%;font-size:1.1rem;font-family:"Helvetica", sans-serif;background:rgba(0,0,0,0.4);border-bottom:4px solid rgba(0,0,0,0.8)}#main #mainNav ul{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;width:100%}#main #mainNav ul li{list-style:none}#main #mainNav ul li a{display:block;padding:1.2rem 1.4rem}#main #mainNav ul li.active{background:rgba(0,0,0,0.6)}#main #mainNav ul li.active a{color:#FFF}#content{max-width:800px;margin:auto;padding:2.8rem 3rem 3rem 3rem;font-size:20px;line-height:156%;text-shadow:0 1px 1px #080812}#content img{max-width:90%;display:block;margin:auto;height:auto;border:4px solid #0e0e10}#content sub,#content sup{line-height:0}#content article.last,#content section.page{border:none}#content p{margin:18px 0}#content h1,#content h2,#content h3,#content h4,#content h5,#content h6{font-family:"Helvetica", sans-serif;color:#FFF;font-weight:normal;line-height:132%;margin-bottom:0}#content h2{font-size:32px}#content h3{font-size:24px;margin-top:32px}#content h3.date{font-size:18px;display:inline-block;color:#CCC;margin-top:0;margin-bottom:12px;padding-bottom:2px;border-bottom:1px solid #35333C}#content h4{margin-top:32px;font-size:20px;font-weight:600}#content ul,#content ol{margin:18px 0;margin-left:38px}#content .readMore{position:relative;display:block;padding:32px 0}#content .readMore a{float:right;text-decoration:none;padding:12px;background-color:rgba(0,0,0,0.4)}#content blockquote{margin:32px 0 32px 32px}#content code{font-size:90%;line-height:inherit;background:#15151C;padding:4px}#content hr{border:none;background:#999;height:1px;margin:2.4rem 2rem}#bottom{font-family:"Helvetica", sans-serif;text-align:right;background:linear-gradient(180deg, rgba(0,0,0,0.4) 0%, transparent 42%)}#bottom .content{margin:auto;padding:64px}@media screen and (max-width: 680px){#content{font-size:100%;padding:1rem 2rem 3rem 2rem}#content article>h2{font-size:24px;padding-top:32px;padding-bottom:4px}#top{height:48px}#top h1 a{right:32px;font-size:32px;bottom:-8px}#main #mainNav ul li a{font-size:88%;padding:1.2rem 1.4rem 1rem 1.4rem}#bottom{text-align:center;font-size:0.8rem}#bottom .content{margin:0;padding:1rem 32px}#bottom .content p{margin:0.8rem 0}}</style></head>

<body>
	<div id="root">
		<header id="top">
			<h1><a href="/">anderegg.ca</a></h1>
		</header>

		<div id="main">
			<nav id="mainNav">
				<ul>
					<li class="home active"><a href="/">Home</a></li>
					<li class="projects"><a href="/projects/">Projects</a></li>
					<li class="about"><a href="/about/">About</a></li>
					<li class="archives"><a href="/archives/">Archives</a></li>
				</ul>
			</nav>

			<div id="content">
				<div id="frontPost">
				
					<article>
						<h2>Thoughts on the recent migration from X to Bluesky
</h2>
						<h3 class="date">October 21, 2024</h3>
						<p><a href="https://www.theverge.com/2024/10/18/24273435/bluesky-user-spike-x-tos-ai-changes-blocking">A flood of users left X and moved to Bluesky</a> over the weekend. I’ve written <a href="https://anderegg.ca/2023/05/09/bluesky-frustrations">a bunch</a> <a href="https://anderegg.ca/2024/02/24/bluesky-frustrations-part-2">of times</a> <a href="https://anderegg.ca/2024/05/10/another-look-at-bluesky">in the past</a> <a href="https://anderegg.ca/2024/05/23/digging-into-bluesky-dms">about Bluesky</a>, and have gone from grumpy frustration to general acceptance of the service. I’m happy that people are moving away from X, and I think Bluesky is a reasonable replacement. That said, I think new users should understand a bit how the Bluesky system works. Some of reasons that people are leaving X also exist on Bluesky.</p>

<p>There are two big reasons I saw for the most recent X exodus. The first is that there’s a change to the way blocking works. Now users you have blocked on X <a href="https://www.theverge.com/2024/9/23/24252438/x-blocked-users-view-public-posts">will be able to see your posts</a>, just not interact with them. The second is that X updated its terms of service to make it clearer that they would <a href="https://edition.cnn.com/2024/10/21/tech/x-twitter-terms-of-service/index.html">train their AI models with user data</a>, and also <a href="https://techcrunch.com/2024/10/17/elon-musks-x-is-changing-its-privacy-policy-to-allow-third-parties-to-train-ai-on-your-posts/">allow third parties to use data for AI training</a>.</p>

<p>Paul Frazee, a developer at Bluesky, <a href="https://bsky.app/profile/pfrazee.com/post/3l6xwk3l43f2r">posted a thread yesterday</a> which gives a high-level overview of <a href="https://atproto.com">the AT Protocol</a> (atproto). The post I linked to is mentions RSS, but the whole thread is great. The gist is: lots of servers (<a href="https://atproto.com/guides/glossary#pds-personal-data-server">PDSs</a>) having their content slurped up by other servers (<a href="https://atproto.com/guides/glossary#relay">Relays</a>), and aggregated out to readers (<a href="https://atproto.com/guides/glossary#app-view">AppViews</a>). That last sentence is a massive simplification. There is a <a href="https://atproto.com/specs/atp">lot of complexity</a> under the hood, but users don’t have to interact with it. Here’s <a href="https://docs.bsky.app/docs/advanced-guides/federation-architecture">an official docs page</a> with another high-level overview and a nice diagram. I point to Paul’s thread because his RSS analogy is apt. It’s also one of the main reasons I don’t prefer the tradeoffs made by atproto.</p>

<p>A <a href="https://github.com/bluesky-social/pds">Personal Data Server</a> (PDS) is like a Git repository where one or more users might house their Bluesky content. It’s something that people can self-host today. Though most users have their content on a PDS hosted by Bluesky, the idea is that you can move your PDS to another host if you’d like. But PDSs are just stores for user data. They don’t communicate directly with other parts of the Bluesky system. Instead, the Relay is responsible for crawling all PDSs and making their data available to App Views. Because of this, all data <sup id="fnref:1" role="doc-noteref"><a href="#fn:1" class="footnote" rel="footnote">1</a></sup> on PDSs needs to be public. This means that anyone you’ve blocked on Bluesky <a href="https://docs.bsky.app/blog/block-implementation">can still read all of your posts</a>. This is part of the atproto design.</p>

<p>Similarly, because the protocol was designed for Relays to be able to read all Bluesky content, any content on the service is available to anyone. Including those who would use it for AI training. This is the “RSS” piece of the system. Relays need to know about all the PDSs, so it’s much easier to scrape Bluesky than it is to scrape the public web. All content from all users needs to exist as a feed, and the Relay needs to know where each of them is. <a href="https://worthdoingbadly.com/bsky/">This design makes it easy to grab all the content on the service</a>, if you have the time, space, and bandwidth. More than that, it’s trivial to <a href="https://docs.bsky.app/blog/repo-export">download an export of any user’s Bluesky content</a>, even if they’ve blocked you. I don’t have any proof that people are using Bluesky data for AI training, but I’d bet very heavily that it’s happening.</p>

<p>I’m not writing this to dissuade people from using Bluesky. It’s definitely not a cesspool like X, which is reason enough to switch. It’s also an exciting take on decentralized social media. Heck, <a href="https://bsky.app/profile/lecwhite.bsky.social">my new city councillor campaigned there</a>, as Halifax has turned into a bit of a Bluesky bubble. I’m trying not to be a grump about this platform, but they’ve made several trade-offs that I’m not so sure about. I’m very happy people are migrating from X, but I think that people should come to Bluesky with their eyes open. If your main concerns about X were being able to bypass blocks or having data available to companies training AI, you should know that Bluesky doesn’t solve those specific issues.</p>

<hr>

<div class="footnotes" role="doc-endnotes">
  <ol>
    <li id="fn:1" role="doc-endnote">
      <p>There are some things that PDSs keep private — <a href="https://docs.bsky.app/docs/advanced-guides/federation-architecture#personal-data-server-pds">which accounts you have muted</a>, for instance. It’s <a href="https://anderegg.ca/2024/05/23/digging-into-bluesky-dms">still not clear to me how direct messages work</a> on the server side, but these seem to be stored outside of the PDS. The main point is that all of your public-facing content on Bluesky needs to be accessible by anyone for the system to work.&nbsp;<a href="#fnref:1" class="reversefootnote" role="doc-backlink">↩</a></p>
    </li>
  </ol>
</div>

					</article>
				
				</div>

				<div class="readMore">
					<a href="/archives/">More articles »</a>
				</div>
			</div>
		</div>
	</div>

	<footer id="bottom">
		<div class="content">
			<p>Content and design © 2024, Gavin Anderegg — powered by <a href="https://jekyllrb.com/">Jekyll</a> and <a href="https://pages.github.com/">GitHub Pages</a></p>

			<p>This website does not use any cookies. <a href="https://tinylytics.app/">Tinylytics</a> is used to gather anonymized web stats</p>

			<p style="margin-top: 1em;"><a href="https://mastodon.social/@gavinanderegg" rel="me">Follow me on Mastodon</a> <a href="/feed.xml" aria-label="RSS Feed"><svg xmlns="http://www.w3.org/2000/svg" height="1em" viewBox="0 0 8 8" style="top: 2px; position: relative; padding-left: 8px;"> <style type="text/css">.button {stroke: none; fill: #FF4830;} .symbol {stroke: none; fill: white;}</style><rect class="button" width="8" height="8" rx="1.5"></rect><circle class="symbol" cx="2" cy="6" r="1"></circle><path class="symbol" d="m 1,4 a 3,3 0 0 1 3,3 h 1 a 4,4 0 0 0 -4,-4 z"></path><path class="symbol" d="m 1,2 a 5,5 0 0 1 5,5 h 1 a 6,6 0 0 0 -6,-6 z"></path></svg></a></p>
		</div>
	</footer>

	<script src="https://tinylytics.app/embed/ymKy7embDzqpj9NARJqA.js" defer=""></script>



</body></html>