[HN Gopher] Show HN: I made a tool to port tweets to Bluesky man...
       ___________________________________________________________________
        
       Show HN: I made a tool to port tweets to Bluesky mantaining their
       original date
        
       Bluesky allows to backdate their posts with their API, so I made
       this tool to copy your twitter (X) profile to Bluesky keeping the
       backdated dates of your tweets, showing as if they were posted back
       then
        
       Author : nols05
       Score  : 499 points
       Date   : 2025-03-18 17:07 UTC (1 days ago)
        
 (HTM) web link (bluemigrate.com)
 (TXT) w3m dump (bluemigrate.com)
        
       | CharlesW wrote:
       | As an eX-user who deleted their footprint long ago, I imagine
       | some people would be interested in doing this from an archive.
        
         | avtar wrote:
         | Seems like this is already doable:
         | 
         | https://typefully.com/blog/import-twitter-to-bluesky#:~:text...
        
       | qoez wrote:
       | Found this related to this https://jymfox.com/bleetinthepast/ Fun
       | to post from 0 BC
        
         | rsynnott wrote:
         | But... there isn't a 0 BC! The Gregorian calendar goes straight
         | from 1 BCE to 1 CE.
         | 
         | (That said, most datetime libraries, in practice, tend to
         | behave very weirdly if you go back a few thousand years, if
         | they'll put up with it at all...)
        
           | Am4TIfIsER0ppos wrote:
           | When they were removing the Christ from dates they should
           | have just made it an integer.
        
           | garaetjjte wrote:
           | If you extend Gregorian calendar before 1582, I think it's
           | reasonable to interpret numerical year number as 1 => AD 1, 0
           | => 1 BC, -1 => 2 BC (that would be proleptic Gregorian
           | calendar with astronomical year numbering?)
        
       | jer0me wrote:
       | This is very cool. These features would be useful:
       | - If it isn't possible to transfer the video, I'd rather skip
       | them than just posting a thumbnail       - A way to mass-delete
       | posts after a migration if I regret it       - The option to add
       | text (e.g. [Migrated from X]) to each post if it fits
       | 
       | As far as competitors, go https://blueark.app/ seems like the
       | most complete. I remember seeing another one, a desktop app, but
       | I can't remember what it was called.
        
       | Aurornis wrote:
       | Interesting tool, but I'm very surprised that they allow
       | backdating posts.
       | 
       | Backdating posts opens up a world of social engineering scams.
       | You can create an account that appears to have predicted a lot of
       | past events, sports scores, or stock prices with timestamps prior
       | to those events occurring. The scam is to create an account that
       | appears to have great stock advice or sports betting predictions
       | and then charge people for it.
        
         | jer0me wrote:
         | I believe this is possible because of how the AT Protocol
         | works. Bluesky shows a warning[1] on these posts and displays
         | both times, but sorts them by the backdated time.
         | 
         | [1]:
         | https://bsky.app/profile/bluemigrate.com/post/3lc3r4fqen62l
        
           | dietr1ch wrote:
           | It'd be cool if they also verified the dates to get rid of
           | the warning of honest backdated posts.
        
             | pimlottc wrote:
             | What constitutes an honest backdated post? How would they
             | be able to verify it?
        
               | tough wrote:
               | they could fetch the post reference on x.com with the
               | real date, and store a zkProof of its existance, relying
               | the verfiability-trust then to x not messing with them
        
               | krainboltgreene wrote:
               | You going to donate your CPU for that? Only about a
               | billion or ten tweets.
        
               | dietr1ch wrote:
               | You don't need to migrate everything, just getting the
               | ones from users that migrated from twitter would help a
               | lot seeding Bluesky profiles.
               | 
               | You can also link Twitter to Bluesky with either OAuth,
               | or a Twitter post with a Bluesky challenge to prove you
               | have control of the account.
        
               | pimlottc wrote:
               | That sounds like a lot of manual work, as I don't expect
               | Twitter to offer an API for departing users...
        
               | rad_gruchalski wrote:
               | Not an API but if you're a departing user:
               | https://www.theverge.com/23453703/twitter-archive-
               | download-h.... Bottom line: it's possible to download all
               | account history with tweets in JSON format with dates,
               | and more.
        
               | celticninja wrote:
               | Open a PR
        
               | toomuchtodo wrote:
               | Or use the Wayback Machine? You can trust its captures,
               | courts do. Queue archiving jobs per handle, backfill from
               | the archives after the initial archiving request has
               | completed.
               | 
               | https://katharinabrunner.de/2024/02/archiving-websites-
               | the-i...
               | 
               | https://x.com/paulmcgorrery/status/1178561480385421312
               | (Dyno Nobel Inc v Orica Explosives Technology Pty Ltd (no
               | 2) [2019] FCA 1552)
               | 
               | https://www.michbar.org/journal/Details/Old-websites-
               | seldom-...
               | 
               | https://www.lexisnexis.com/community/insights/legal/b/tho
               | ugh...
        
               | arcticbull wrote:
               | Wouldn't that require a very expensive API contract that
               | X would be quite uninterested in signing?
        
               | pjc50 wrote:
               | > they could fetch the post reference on x.com with the
               | real date
               | 
               | Twitter posts are only available to authenticated users,
               | and the API is really quite expensive now - that was one
               | of the many reasons people have wanted to move off it!
        
           | kurisufag wrote:
           | nope. post here from 9/11 2001, no warning [0]. it's fine if
           | they added a check recently to flag backdated posts, but
           | there's no telling how many incorrectly-timed things went up
           | before they added that ([0] is from about a year ago, fwiw).
           | the whole early history of the platform is questionable, and
           | it's just shoddy protocol design.
           | 
           | [0]
           | https://bsky.app/profile/lul4.bsky.social/post/3kgaesbxs7f25
           | 
           | (if you work for bsky please don't add a flag to that, it's
           | my favorite party trick)
        
             | jer0me wrote:
             | Looking at the JSON data in dev tools, it looks like there
             | are separate `createdAt` and `indexedAt` fields, the latter
             | of which was probably a later addition. For your--likely
             | pre-migration--post, both are set to 9/11. On more recent
             | posts, they're separate dates.
        
               | extraduder_ire wrote:
               | That post does indeed predate bluesky tracking index
               | times, I remember seeing it before they announced that
               | change. I believe it was motivated by other migration
               | services becoming popular. Forward-dating was fixed even
               | earlier, I think, since it might allow people to "pin"
               | their posts to the top of reverse-chronological feeds.
               | 
               | Some of my favourite backdated posts are from the years
               | 1776 and 1.
        
               | pfraze wrote:
               | More specifically the reason we didn't have an index time
               | for that post was an architectural migration which lost
               | our prior witness times. That was pretty early on. At
               | this point we'd take pains to preserve those timestamps,
               | and I'm fairly sure we will need to publish them for
               | other folks to use at some point
        
           | mayneack wrote:
           | I think the reason it works that way is because they want
           | strong guarantees for the future portability of your skeets.
           | It's sort of a correction for Mastodon's reliance on server
           | admins' goodwill.
        
             | BolexNOLA wrote:
             | >skeets
             | 
             | I'm cackling over here. How have I never heard this when
             | people talk about blue sky?
        
               | OrsonSmelles wrote:
               | To the windoooooooooooooooooooow....
        
               | __MatrixMan__ wrote:
               | Surely this is what he was talking about. Lil John was
               | decades ahead of his time.
        
               | cookiemonsieur wrote:
               | A Lil Jon reference on a HN thread about Bluesky was most
               | definitely not on my 2025 bingo card. But I'll take it.
        
               | nextts wrote:
               | Talking of "Jon" and "Skeet", there is a fairly well
               | known programmer called Jon Skeet. If you are a C#
               | developer good chance he has answered you stack overflow
               | question!
        
               | miroljub wrote:
               | If you are a bit older, you'd remember the same guy
               | fighting for Java in bloody flame wars against C and C++
               | on Usenet. When I first saw him as a C# devotee on Stack
               | Overflow, I was surprised it's the same guy.
        
               | Kye wrote:
               | Some people got the idea it has something to do with some
               | song because (not an actual dictionary) Urban Dictionary
               | said so when the actual meaning is "sky tweet."
        
               | Retr0id wrote:
               | hah, good one
        
               | justinpombrio wrote:
               | > (not an actual dictionary) Urban Dictionary
               | 
               | <troll> The definition of dictionary is just "Words about
               | words" (source: Urban Dictionary), so I'd say that Urban
               | Dictionary qualifies. </troll>
        
               | bobsmooth wrote:
               | UD has been quoted in court cases, it's absolutely a
               | dictionary.
        
               | account42 wrote:
               | UD documents existing connotations of words and
               | expressions. That you don't think it's an actual
               | dictionary doesn't change the fact that those
               | connotations exist.
               | 
               | "sky tweet" is also a stupid name since a tweet is
               | already the name for a post on a very specific platform.
        
               | delecti wrote:
               | I'm not sure I get why "sky tweet" is a stupid name.
               | "Tweet" was a pretty arbitrarily chosen name for a post
               | on Twitter, but now that "tweet" is a pretty established
               | word, it seems reasonable to use a portmanteau based on
               | that word for a platform based on that platform.
               | 
               | Though in practice I think "skeet" was a bit of a fad to
               | be provocative, and most people just call them tweets,
               | even on bluesky.
        
               | cortesoft wrote:
               | The song didn't create the word, it just popularized a
               | word that was already in use when the song came out.
        
               | Larrikin wrote:
               | They need to come up with their own term or confirm they
               | are OK that the name skeet is a sex act. You don't get to
               | just pretend the term doesn't exist because you didn't
               | listen to one of the most popular songs of that decade
               | using an already well established term. It's also heavily
               | used in one of the most popular comedy shows of that
               | decade as well The meaning is well established
        
               | albedoa wrote:
               | > not an actual dictionary
               | 
               | Go on, tell us what you think an "actual dictionary" is.
        
               | mayneack wrote:
               | People certainly talk about this _on_ bluesky. No idea
               | how much it's escaped outside.
        
               | wojciii wrote:
               | I use bluesky all the time and have yet to use the term
               | "skeet".
               | 
               | I don't think it's important. What is important is using
               | a sane environment. X is completely crazy.
        
               | platz wrote:
               | can we just come up with one common term to to refer to
               | all of my these between sites
        
               | verdverm wrote:
               | "post"
        
               | miroljub wrote:
               | "tweet"
        
               | AtomBalm wrote:
               | To the window, to the wall! To my social media feed I
               | crawl!
        
           | nidnogg wrote:
           | Very nice.
        
         | ezfe wrote:
         | If you look at the imported posts, they have a badge that says
         | the date they were imported and says the date on the post is
         | unverified.
        
           | evbogue wrote:
           | Yes, but this badge is generated at their Appview index layer
           | and not at your PDS.
        
             | chc4 wrote:
             | If you are syncing data from another PDS, there is no way
             | to verify that posts have an accurate date, unless you have
             | some central ledger which is antithetical to allowing self-
             | hosting and being distributed.
        
               | evbogue wrote:
               | Correct. The trade-off here is on Bluesky you can delete
               | or re-order your posts which you cannot do on a network
               | with strict message ordering. Your PDS webmaster can also
               | rewrite your messages for you if they become unhappy with
               | your messaging.
        
               | toomuchtodo wrote:
               | Take snapshots with the Internet Archive and have that be
               | canonical/source of truth?
        
               | chc4 wrote:
               | Your PDS webmaster has a signing key for your repo,
               | because they for all intents and purposes _are_ you. That
               | 's the trust structure of how PDS' are setup. If you
               | don't trust someone else to modify your repo don't give
               | them your private (sub)key.
               | 
               | The fact it's a subkey means that you are also able to
               | rotate the key that the PDS has access to and modify your
               | repo back to pre-defaced state if need be.
        
               | evbogue wrote:
               | Exactly, this is the benefit of having a Bluesky!
               | 
               | Imagine if Github worked this way, then I wouldn't have
               | to worry about storing my ssh keys on my local machine.
               | Imagine the possibilities if Github could pull my repo
               | instead of me having to go through all that darned
               | trouble of pushing it.
        
               | lukev wrote:
               | This isn't quite true. Your PDS can't rewrite your
               | messages: all messages are signed with a key unique to
               | your account.
               | 
               | That said, the PDS is effectively also your private key
               | custodian. Most people who aren't nerds are happy to let
               | Bluesky PBC manage their keys. But if that's your threat
               | model, you should absolutely move to a self-managed PDS.
               | 
               | The protocol also actually allows you to manage your keys
               | differently. You could in theory have a "read-only" PDS,
               | and generate all your posts locally using a local key
               | (conceptually much closer to a crypto wallet.)
               | 
               | In that scenario, the validity of posts as originating
               | from a known identity is extremely strong.
        
               | evbogue wrote:
               | Yes, and what if they had a tab in the Bluesky app where
               | you generated a keypair, registered the pubkey at your
               | PDS and then began signing messages in the app? You could
               | rotate keys on demand and update the PDS every time you
               | make a new one.
        
               | lukev wrote:
               | Yeah but if you lost your phone you'd be screwed.
               | 
               | There's ways around it... the identity mechanism supports
               | multiple keys so you could have a backup in escrow.
               | 
               | But most people don't want to worry about key management
               | at that level. Hell, I know exactly how everything works,
               | and key management still scares me. The consequences of a
               | mistake are huge.
        
               | evbogue wrote:
               | Yes, that key is screwed because it's lost, stolen, at
               | the bottom of the river, etc. But this is when you
               | generate a new key and store that pubkey at your PDS so
               | the Appview can find and index your new posts from your
               | new phone. It's the same thing that happens when I
               | reinstall Debian on my Thinkpad and upload a new ed25519
               | pubkey to Github so I can push again.
               | 
               | Edit: or we could backup the key.
        
               | pfraze wrote:
               | Originally that was the design. We just felt it wasn't
               | feasible as the primary operation.
               | 
               | The PLC registry supports an override key for adversarial
               | migrations, which was our chosen alternative
        
               | evbogue wrote:
               | I don't think it should be the primary operation, not
               | with the scale that Bluesky has achieved. We need this in
               | the Bluesky App so a handful of p2p weirdos can feel they
               | are authentically using a distributed social platform
               | without caesars and all of that.
               | 
               | I'll look into the registry override too, maybe I can
               | hack something together around that.
        
         | evbogue wrote:
         | Bluesky was developed with backdated posts as a stated goal,
         | see Jay's original prototype:
         | https://github.com/arcalinea/smor-serve
        
         | jampa wrote:
         | You can still do that even without changing the timestamp. Back
         | in the old days of the internet, people used to get famous by
         | claiming they predicted all the results of the FIFA World Cup
         | by posting every possible outcome and then deleting those where
         | they were wrong. Then, they would publicize their account just
         | before the final match, and people would go wild.
        
           | spullara wrote:
           | before this people used to send out stock predictions by mail
           | to power of 2 people with each prediction and its opposite,
           | eventually you get down to a person who you have always sent
           | the correct prediction.
        
             | acomjean wrote:
             | That was a scam used for betting. Call this phone number
             | for your free "lock". Half got team a, half team b. They
             | did it twice then asked those who were winning and kept
             | calling to pay for the next prediction.
        
               | spullara wrote:
               | oh that scales nicely
        
           | BiteCode_dev wrote:
           | Just realized the French lottery is only 19 068 840
           | combinations. You could send spam to 19 millions people, each
           | with a number saying you can predict the lottery, and if they
           | send you 10 000 euros in BTC, you could give them the next
           | one.
        
         | rglullis wrote:
         | I am more surprised by how we got to this world where people
         | think in terms of what software developers "allows" us to do,
         | or not do.
        
           | Aurornis wrote:
           | > in terms of what software developers "allows" us to do, or
           | not do.
           | 
           | You can do whatever you want with the _the software_. It 's
           | right here: https://github.com/bluesky-social
           | 
           | You cannot do whatever you want on someone else's hosted
           | website. They don't allow you to delete other users and edit
           | other people's posts because everyone agrees that would make
           | it useless.
        
             | rglullis wrote:
             | > You cannot do whatever you want on someone else's hosted
             | website
             | 
             | The whole thing with Bluesky and decentralized protocols is
             | no server can enforce special rules.
             | 
             | Sure, they could come up with something that says "our PDS
             | will not accept backdated events", but they will not be
             | able to stop someone else to set up a server that does that
             | without any issue.
        
               | pfraze wrote:
               | Network authority models are more nuanced than "nobody
               | can tell me what to do" vs "one person controls
               | everything."
        
               | rglullis wrote:
               | Indeed, but you are not answering the question: how can
               | you reconcile the idea that ATProto is meant to be
               | decentralized (i.e, no single authority) and at the same
               | time have rules that are enforced (purely by software,
               | I'm not arguing that rules could be enforced socially) by
               | any particular server?
               | 
               | You would need some form of distributed consensus
               | mechanism, but then you either end up with some exclusive
               | club to implement Paxos or you will need some
               | blockchain-y solution, no?
        
               | pfraze wrote:
               | Atproto and ActivityPub are both multi-polar governance,
               | though AP more aggressively so (though we hope not for
               | long as we pursue some lower-cost execution models for
               | the appview). Consequently the realpolitik is, what's the
               | business logic of the applications with the most users.
        
               | odo1242 wrote:
               | Bluesky consists of PDSs and a central indexing server.
               | Bluesky themselves can say that their indexing server
               | won't accept backdated posts, thus making all posts on
               | the Bluesky app itself have valid dates, but others would
               | then be able to make another version of Bluesky with the
               | same posts that also does accept backdated posts.
        
               | rglullis wrote:
               | > a central indexing server.
               | 
               | Then can we drop the pretense that ATProto is actually
               | usable without Bluesky's AppView? [0]
               | 
               | > posts on the Bluesky app itself have valid dates
               | 
               | Who's to say what is a "valid date" in a decentralized
               | system that (in theory) does not have a central authority
               | nor depends on a consensus mechanism?
               | 
               | [0]: https://news.ycombinator.com/item?id=42634786
        
               | odo1242 wrote:
               | ATProto is usable without Bluesky's AppView. You just
               | need to create another centralized indexing server of
               | your own and have it index all PDSs. This is certainly
               | less decentralized than other systems since there's a
               | barrier to entry (getting the compute power to index all
               | PDSs), but that's the tradeoff you make by not having
               | server-specific namespaces like Mastodon does. They seem
               | to also make their AppView implementation open-source,
               | which seems to show their goodwill.
               | 
               | You do still get the benefits of being able to
               | interoperate between different apps that may not know
               | each other exist without the disadvantages of having
               | server-specific namespaces, which is of course the point.
               | 
               | "A valid date" would be determined by said server
               | (BlueSky's or yours). You could choose to write a server
               | that enforces consistent dates or one that does not, and
               | the definition of a valid date would be different per
               | AppView.
               | 
               | I acknowledge the other way of doing it which ActivityPub
               | uses has some benefits as well.
        
               | rglullis wrote:
               | ActivityPods implements ActivityPub vocabulary while
               | using SOLID data stores. You get your identity and data,
               | you can interact with other ActivityPub software and you
               | _do not need to rely or set up any centralized indexer_.
               | 
               | There is no "goodwill". Bluesky's plan (from day one!)
               | has been to create something that could have been used by
               | Twitter to keep them as the gatekeeper of the data while
               | removing them from any liability for custody. They know
               | that their moat is on their expensive indexer and they
               | will not take any measure that gives this power to end
               | users.
        
               | pfraze wrote:
               | One of our current projects is to create a partial sync
               | model so that self hosted appviews can be run more
               | cheaply. After that, it's really just the cost of physics
        
           | toyg wrote:
           | Surprised why? A culture based around systems with privileged
           | "root" and "admins" was always going to be fundamentally
           | hierarchical. It was an accident of history that the network
           | layer ended up getting developed in locations with a more
           | horizontal culture (which partly explains why our network
           | protocols are so loose and insecure). It took a big,
           | conscious effort (Free Software) to force open at least some
           | elements of it.
           | 
           | Without strong and deliberate efforts to maintain a culture
           | of openness and freedom, IT is a heartless cager of men.
        
           | blitzar wrote:
           | I fight for the Users!
        
         | lazzlazzlazz wrote:
         | One of the many flaws of AT Protocol.
        
         | latexr wrote:
         | As demonstrated by the Waddle Dee Knows case.
         | 
         | https://arstechnica.com/gaming/2022/02/how-to-become-a-fake-...
        
       | neilv wrote:
       | Is there some authoritative source for knowing when Bluesky posts
       | were made, approximately?
       | 
       | (For example, does Bluesky themselves record the timestamp of
       | when they first see a given message, and make this info
       | available, either publicly or with subpoena/warrant?)
        
         | dharmab wrote:
         | I think the import date is available in the API and client,
         | separate from the posted date.
        
       | jaimehrubiks wrote:
       | The protocol should show a flag that states if the date was sent
       | by the client. That way you allow this feature while at the same
       | time you can warn users.
        
       | mentalgear wrote:
       | Much appreciated, but wouldn't this allow anyone to "migrate"
       | somebody else's tweets over to bluesky, basically impersonate
       | them with 1-click ? What's missing is some sort of verification.
        
         | amyames wrote:
         | this can be done, and it's suspect when someone's done it to
         | build a following and it's not clear if they own the tweets.
         | 
         | I tail the firehose sometimes , filtering for post dates that
         | don't contain 2025. Bottom line this has been happening since
         | day one and backdated/imported posts were about 1/16th or so of
         | the overall post volume in any random sampling I've taken. It's
         | a lot.
         | 
         | But the few I spot checked , all checked out. The people
         | importing their posts were all mentioning their new bluesky on
         | LinkedIn or Twitter . I haven't caught a spammer yet. It's
         | something I look at when I am extremely bored.
        
         | Karrot_Kream wrote:
         | Unreliable datetimes is just part of AT and something you need
         | to deal with. The moment you start ingesting the firehose
         | you'll see plenty of backdated or forward dated traffic. If you
         | build feeds you need to be careful when using posted timestamps
         | to sort feeds because of backdating and because there's no real
         | centralized way to verify your timestamps. For my feeds I just
         | reject posts that are beyond a certain delta from now and sort
         | my feed by ingestion time rather than post time.
         | 
         | There's probably some sort of blockchain-based time-attestation
         | like [1] that could help but this is beyond the scope of AT and
         | something that probably needs a lot more thought before a
         | serious proposal comes forth.
         | 
         | [1]: https://opentimestamps.org/
        
           | robertlagrant wrote:
           | > something you need to deal with
           | 
           | Who is the "you" here?
        
             | ncallaway wrote:
             | > The moment you start ingesting the firehose
             | 
             | Probably someone who started ingesting the firehose
        
               | chipsrafferty wrote:
               | What is a firehose?
        
               | odo1242 wrote:
               | All posts being made on Bluesky, as they get indexed.
               | 
               | See https://firesky.tv
        
         | darkwater wrote:
         | Well, if the source is publicly available, anyone can copy it
         | anyway. So, you need anyway to announce on the original account
         | where it has been migrated to.
        
         | mentalgear wrote:
         | PS: I had a similar migration idea when bsky came out, but
         | never thought they would allow backdating.
         | 
         | I came to the conclusion that it would make sense to confirm a
         | user's identity on the platform to migrate from (egress) by
         | giving them a random word or sentence for them to post over
         | there, so you can verify that their original profile is really
         | theirs.
        
       | nashashmi wrote:
       | Can I upload my archive of tweets that I exported from Twitter
       | immediately after it changed ownership and subsequently deleted
       | my Twitter profile?
        
       | tekno45 wrote:
       | the worst part of bluesky is all the people asking for it to be
       | twitter.
       | 
       | That and people posting screenshots of their own tweets...
        
         | LaPingvino wrote:
         | It literally comes from the original Twitter, it's meant to be
         | what X killed in Twitter.
        
           | pessimizer wrote:
           | Didn't come from Twitter, it came from Dorsey. He also said
           | that it went badly astray early on, and abandoned it
           | completely.
           | 
           | https://www.piratewires.com/p/interview-with-jack-dorsey-
           | mik...
        
             | extraduder_ire wrote:
             | It was initially created as a group inside of twitter. They
             | spun it off into a separate company pretty early though.
        
               | pfraze wrote:
               | Heh, this is kind of complicated. It was Dorsey's
               | initiative. The project's goal was to produce a
               | technology that Twitter could move to. However, nobody on
               | the team was from Twitter.
        
         | MikePlacid wrote:
         | I see around 80% of videos on X (Twitter) to be from TikTok
         | originally. Probably because TikTok allows you to save - and so
         | to spread - videos you like but X doesn't.
        
       | artursapek wrote:
       | lol they let you spoof timestamps on this site?
        
         | sMarsIntruder wrote:
         | It seems so, and it's funny lol.
        
       | MattSayar wrote:
       | Good stuff! I didn't mind the fresh start with BlueSky but it'll
       | be nice to import my last hundred posts with the free trial.
        
       | oellegaard wrote:
       | What is the appeal of Bluesky? I'm surprised to see how much
       | traction it has, when Mastodon already exists and works quite
       | well technically - it seems that Bluesky is simply better at
       | marketing?
        
         | adamredwoods wrote:
         | Convenience factor. Bluesky is single site. Mastodon is
         | multiple sites.
        
           | unshavedyak wrote:
           | I also find Bluesky's underlying tech interesting. The more i
           | looked into Mastodon the less interesting it felt. I
           | especially didn't like that as a small Mastodon instance i'd
           | struggle to get my updates fed into the larger instances and
           | struggle to get updates as quickly. Instances prioritized
           | updates to/from larger instances.
           | 
           | This was all quite early though and i'm sure i misunderstood
           | things. Just answering the question as i personally perceived
           | Mastodon.
           | 
           | On the non-tech side, i find Bluesky's model for moderation
           | to be really neat. I hope it continues to expand in
           | features/implementations.
        
             | verdverm wrote:
             | Check out the User Intent proposal, it's kind of like
             | robots.txt, not enforceable, but also richer in semantics
             | 
             | https://github.com/bluesky-
             | social/proposals/tree/main/0008-u...
        
         | curious_cat_163 wrote:
         | I find the AT protocol interesting.
         | 
         | But, now they have network effects; > 30 million users --
         | that's a big market to build for.
        
         | advisedwang wrote:
         | For me, it's pure network effect. The people I want to hear
         | from and be heard by are on Bluesky but not Mastodon.
        
         | lxgr wrote:
         | It's a much better protocol in practice, in my view.
         | 
         | Mastodon is server/instance centric and permanently anchors
         | your identity to a given server. On Bluesky, you can use any
         | domain you control DNS for as your handle, since content
         | hosting and identity management are decoupled at the protocol
         | layer.
         | 
         | On top of that, hosting is also decoupled from
         | aggregation/discovery, which allows for things like global
         | search that are intrinsically hard on Mastodon.
        
           | genewitch wrote:
           | > Mastodon is server/instance centric and permanently anchors
           | your identity to a given server. On Bluesky, you can use any
           | domain you control DNS for as your handle, since content
           | hosting and identity management are decoupled at the protocol
           | layer.
           | 
           | What does this mean? I can host my own fediverse instance,
           | and have, three times.
        
             | rglullis wrote:
             | It means that your identity is tied to the server. If you
             | ever got tired of running your server and decided to just
             | use someone else's server, you can not just bring your keys
             | and make a DNS change to point to the new place.
        
               | mariusor wrote:
               | Just because there isn't such a mechanism in use
               | currently, doesn't mean that there's something preventing
               | ActivityPub actors using the same type of DNS pointing to
               | DID, or IRI mechanism ATProtocol is using.
        
               | rglullis wrote:
               | There are some extensions proposed, but to this day all
               | AP actors are controlled by the server. _No_ ActivityPub
               | software today is built in a way where the client can
               | provide their own keys. They are _all_ generated in the
               | server.
               | 
               | Even the "Client-to-Server" AP spec is written in a way
               | where the "client" does not interact with the outside
               | web, but always initiates every interaction through the
               | outbox hosted by the server.
               | 
               | I'm not saying this just for pedantry. I'm saying this
               | because I actually wrote a server that implements
               | ActivityPub according to the spec [0], and realized that
               | identity portability is _not_ possible unless you
               | deliberately break away from the AP spec.
               | 
               | [0]: https://activitypub.mushroomlabs.com
        
               | lxgr wrote:
               | I'd consider the effort of migrating the entire ecosystem
               | to a fundamentally different identity resolution
               | mechanism somewhat of a barrier.
        
               | genewitch wrote:
               | how many bluesky "servers" are there?
        
               | rglullis wrote:
               | Look who is moving the goal posts!
               | 
               | We are talking about ActivityPub tying identity to the
               | server. ATProto is designed from the ground to separate
               | user data from your identity (through its Personal Data
               | Servers), so the answer to your question is "many. There
               | are many servers out there."
               | 
               | Bluesky has many issues (and I for one still think it has
               | fundamental flaws that still make me prefer AP), but
               | identity coupling _is not one of them_.
        
             | lxgr wrote:
             | Yes, and in fact you have to, and from the very beginning,
             | if you want to self-custody your identity.
             | 
             | That's a high bar compared to just registering a domain and
             | updating a DNS record.
        
             | wikihasbsky wrote:
             | Can and Must are two different things. Wikipedia has a
             | website, and owns the domain to that website. Their domain
             | is the way they verifiy themselves on Bluesky. But they
             | don't have a reason to run an instance, so they don't run
             | one, and never will.
        
         | RicoElectrico wrote:
         | Mastodon is fragmented by design, federation is mostly
         | theoretical even if mastodon.social displays many other
         | instances' content and lets you interact with it.
         | 
         | You can't search across instances nor can you (afaik) maintain
         | identity across them.
        
         | shawabawa3 wrote:
         | Had enough of shitty self hosted mastodon servers getting
         | linked, makes me wary to click any mastodon link because they
         | are so likely to be dead
         | 
         | Imo that's a complete killer to adoption. The vibe people get
         | from it is that it's always down, they don't care that "oh just
         | switch to another shard" that's too much effort
        
           | imhoguy wrote:
           | Yeah, it should be content addressable and replicated by
           | Favourite (Like) similarly how IPFS pining works, then your
           | post would die when the last hoarder forgets about it.
        
         | yborg wrote:
         | Bluesky implements algorithmic feeds so content is easier to
         | find. Mastodon mostly is original Twitter model - you have to
         | follow accounts yourself. It's significant friction and filters
         | 90% of normal people.
        
           | genewitch wrote:
           | Algorithmic feeds, chicken soup for the soul.
        
         | nailer wrote:
         | Bluesky appeals to people that don't wish to meet or interact
         | with anyone from the other side of the aisle - like a left wing
         | version of Truth Social.
        
         | sergiotapia wrote:
         | it's a turbo left version of truth social. so people into that
         | flock to use bluesky.
        
         | globular-toast wrote:
         | Centralised so easy to use. Why don't more people use PGP and
         | web of trust? Convenience and security rarely align, and people
         | will choose convenience every time.
        
         | KoftaBob wrote:
         | Bluesky/AT Protocol hits a much better balance of _mostly_
         | decentralized while having an intuitive user experience.
         | 
         | On the other hand, ask the average social media user to try to
         | do the below tasks on Mastodon/ActivityPub, and you'll quickly
         | see how half-baked and disjointed of a user experience it is.
         | 
         | - Search for posts or a user.
         | 
         | - Interact with a Mastodon post that's on a different instance
         | than the one they're registered to.
         | 
         | - Figure out what to do if one day, they wake up and their
         | instance has shut down.
        
         | gls2ro wrote:
         | Here is one nice appeal:
         | 
         | Has a great and free API.
         | 
         | Now, Bluesky has this great API that allows you to do cool
         | automated things on top of it. Twitter had it too, but they
         | decided in the last 2, maybe 3 years, to play with the API so
         | many times that there are no new coding tutorials that use
         | Twitter API as an example. So except social media platforms,
         | there are probably no more tools built on top of Twitter API as
         | they damaged their reputation among developers. And they
         | deserve it being so unfriendly towards developers.
        
       | cooper_ganglia wrote:
       | Now give me the tool that lets me import my Bluesky history to X!
       | ;)
        
       | lloydjones wrote:
       | I made a similar tool a while back, https://pleasenox.com - Mine
       | relies on a "poster" account doing the work rather than the
       | current user's account.
        
       | weinzierl wrote:
       | I imported all my Tweets into Bluesky a long time ago and all my
       | Tweets kept their original date which _has_ confused people.
       | 
       | For example:
       | 
       | https://bsky.app/profile/abu.guru/post/3la7w6bxkip2j
        
       | rglullis wrote:
       | This is only for your own tweets? What about replies / RTs?
        
       | sMarsIntruder wrote:
       | So the plan is moving from a centralised platform to another
       | centralised platform? As a loop? :)
        
         | throwaway150 wrote:
         | This is something I don't understand either. Why is everyone so
         | eager to move from one centralized platform to another? Sounds
         | counterproductive to me.
         | 
         | Btw do you have any good suggestions for distributed platforms?
         | Would Mastodon be considered a distributed platform?
        
           | matijao wrote:
           | https://nostr.com
        
           | skybrian wrote:
           | Maybe they don't care as much as you do about whether a
           | service is decentralized?
        
           | diggan wrote:
           | > Why is everyone so eager to move from one centralized
           | platform to another?
           | 
           | Personally, I'm eager because it's not just another
           | centralized platform but a _sufficiently_ distributed one.
           | Most of the infrastructure you need for ATProto, you can run
           | yourself today.
           | 
           | Mastodon/ActivityPub is neat too, but personally I don't find
           | it as easy to find interesting stuff there, especially if you
           | try to run your own solo instance and need to make sure you
           | connect to interesting parts of the ActivityPub-net.
        
             | rglullis wrote:
             | > Most of the infrastructure you need for ATProto, you can
             | run yourself today.
             | 
             | Citation needed. Without the AppView and their relays you
             | are left only with your identity and your data, which by
             | itself is _not_ a social media /messaging platform.
        
               | pfraze wrote:
               | ...both of which you can run yourself
        
               | what wrote:
               | And how much would it cost me to run the app view?
        
               | verdverm wrote:
               | An AppView is a bit more than just the code. In example,
               | you have to do moderation, which involves paying people
               | for a thankless, awful task. (unless you are just a thin
               | client to Bluesky records and rely on their moderation)
        
               | riffraff wrote:
               | As I understand it, there's an argument that while in
               | theory you can, in practice you cannot so easily, e.g.
               | you needed 5 terabyte of storage for a relay already some
               | months ago.
               | 
               | I think this[0] was on HN some time ago with good
               | reasoning about bluesky offering a "potentially
               | decentralized enough" while not actually being so.
               | 
               | 0: https://dustycloud.org/blog/how-decentralized-is-
               | bluesky/
        
               | pjc50 wrote:
               | > you needed 5 terabyte of storage for a relay
               | 
               | I have sixteen terabytes mirrored sitting next to my
               | television. It's 2025. Sixteen terabytes is not that much
               | any more.
               | 
               | But rather than the only options being "global megacorp"
               | or "individual", I think people should consider the
               | possibility of medium-sized collective organizations for
               | doing this kind of thing. You could club together to run
               | a PDS. There are more options for organizational scale
               | than "huge" or "atomized".
        
               | DrammBA wrote:
               | > I have sixteen terabytes mirrored sitting next to my
               | television. It's 2025. Sixteen terabytes is not that much
               | any more.
               | 
               | I have a 512GB laptop and a 64GB phone, that's all the
               | local storage I own.
        
               | Jaxan wrote:
               | A 5TB drive would cost more than 100EUR. Definitely more
               | than I would like to spend on joining a social network.
        
           | wlonkly wrote:
           | > Why is everyone so eager to move from one centralized
           | platform to another?
           | 
           | There's good content there. Distributed is better than
           | centralized, but it doesn't matter if the people I'm
           | interested in talking to and hearing from aren't there.
        
           | bravoetch wrote:
           | The reasons I have heard are not related to it being a
           | centralized platform. More that people like the features of
           | bluesky over x.
        
           | mayneack wrote:
           | Platforms age/enshittify. Twitter wasn't the first, bluesky
           | won't be the last.
        
           | ibejoeb wrote:
           | There are couple of things going on in that question.
           | 
           | 1. There's a contingent that does not like the management of
           | X, so they want to move elsewhere.
           | 
           | 2. The technology aspect of it is irrelevant in the decision
           | making, because most people don't understand it.
           | 
           | 3. Moreover, a truly free, federated system doesn't alleviate
           | any of their complaints about the platform, because, in that
           | case, they would be unable to effectively quarantine the
           | others.
        
           | ActorNightly wrote:
           | In terms of centralization, if you are in the tech sphere,
           | you should have learned by now from the crypto fiasco that
           | decentralization leads to abuse by people with money to game
           | the system.
           | 
           | But in general, if you don't understand why people are moving
           | to Bluesky, you probably need to be more in tune with US
           | politics and realize we have a nazi in the white house who
           | also happens to own Twitter.
        
             | odo1242 wrote:
             | You're conflating decentralization with financialization.
             | Just because something is decentralized (e.g. BitTorrent,
             | Mastodon) doesn't mean it'll be abused by people with
             | money. Decentralization just means "not keeping everything
             | in one server / something controlled by a single person"
        
               | ActorNightly wrote:
               | >Decentralization just means "not keeping everything in
               | one server / something controlled by a single person"
               | 
               | Except that servers cost money, and internet is not free.
               | 
               | Im all for setting up mesh networks with appropriate
               | protocols that are truly decentralized, but people have
               | to be willing to accept lots of pain points and slowness
               | along the way, which quickly makes people not care.
        
             | 1234letshaveatw wrote:
             | creeps want an echo chamber, got it thanks
        
               | bee_rider wrote:
               | I don't think they want one, they are just ending up with
               | one naturally as the normal people leave Twitter.
        
               | spankalee wrote:
               | Yes, the creeps who are own and stay on Twitter obviously
               | want an echo chamber, as evidenced by their content
               | promotion algorithms.
        
               | ActorNightly wrote:
               | Come back to this comment when its 2028 and US doesn't
               | have a federal election because Trump declares fraud and
               | gives himself emergency powers.
        
           | user3939382 wrote:
           | AFAIK it's SaaPS - software as a political statement
        
           | sMarsIntruder wrote:
           | Mastodon and nostr are two good alternatives with pro and
           | cons of course. nostr is probably and imho the best
           | implementation, but at the moment it's a bitcoiner echo
           | chamber.
        
           | pjc50 wrote:
           | People want something that feels as much like Twitter as
           | possible, without the enshittification. Both in terms of
           | stupid UX features and stupid _political_ features.
           | 
           | Having been interested in how people use social communication
           | systems since the BBS era, I'm pretty confident that most
           | people don't really want fully distributed systems, they want
           | a single system with good governance. Because governance is
           | hard work and anarcholibertarianism makes it everyone's
           | problem. However, "Exit, Voice, And Loyalty" applies here: by
           | providing a theoretical Exit option in some sort of
           | decentralization, even if someone never takes that option,
           | they feel a benefit from having the option.
           | 
           | https://en.wikipedia.org/wiki/Exit,_Voice,_and_Loyalty
        
           | alkonaut wrote:
           | Because X was (initially) good, while every attempt to make
           | something distributed has been relatively bad.
           | 
           | I don't really care how the platform works so long as the
           | content is the content I want. Nor does 99% of users. And
           | that's the precise reason the centralized platforms are the
           | good ones: that's where people are.
           | 
           | If a truly distributed platform could be created that had the
           | content/people/appearance of the centralized one, then great.
           | I'd want that. But if it would be slightly slower or harder
           | to use, or lack the people/content of a centralized platform
           | then I'm not interested.
           | 
           | Decentralized could be fine for communicating with a
           | _community_ of some kind. But that's not why I'm on
           | X/Bluesky. It's to drink from the firehose of the current
           | times. If something happens in the world I want to see the
           | actual people who drive those events. Read the instant
           | comments of the biggest most famous commenters of the same
           | events.
        
         | est wrote:
         | the ATProto missed a lot by using websocket.
         | 
         | If it allows polling static pages, then everyone can host their
         | timeline on Github Pages or something. That would be much
         | better decentralized.
        
       | donohoe wrote:
       | This is neat but I choose not to do this when it was clear the
       | API allowed it. I was on Twitter for over 17 years and I think
       | 99% of what I posted is useless and not noteworthy.
       | 
       | I welcome the blank slate that Bluesky provides.
        
         | davely wrote:
         | I like the blank slate analogy. I'm in the same boat.
         | 
         | I have tens of thousands of tweets (why, oh why) but personally
         | have no desire to move them over. I realize that's important
         | for some people. For me, it's enough to just download the
         | archive and save it somewhere, in case I ever need to reference
         | it again.
        
         | blitzar wrote:
         | I have been deleting my tweets every year anyway.
        
         | brailsafe wrote:
         | Incidentally, I'm kind of surprised or maybe dissapointed that
         | people want to move onto an alternative after being on what
         | seems like a largely pointless platform from probably their
         | teens well into their 30s or equivalent timespan. It's nice to
         | have a clean break and let the past be the past when it comes
         | to social media. When Facebook died, I was quite happy to just
         | let my account rot, checking in occasionally to see if I got
         | any messages from my Gen X relatives or whatever. When I first
         | deleted my Twitter account, I used the 't' cli and their built-
         | in export to backup my account in case I ever wanted to re-
         | activate it, and the urge has never come up. I'm still on
         | Instagram but barely post, it's just brainrot, I'll let it die
         | when it dies. Proor to deleting the Twitter account nearly 10
         | damn years ago, I'd been convincing myself it was useful, so
         | much so that I'd be a pariah if I weren't on there, but I
         | realized I didn't need any of it, and tossed it away. Much like
         | high school friends, it seems important to let life carry on
         | without dragging all the baggage of past me along for the ride.
        
           | donohoe wrote:
           | I hear you. I certainly post much less and am happier for
           | that. I like the emerging community there but I'm nowhere
           | near as absorbed.
        
           | Rendello wrote:
           | I was on Twitter briefly despite knowing better. It was great
           | to connect with fellow programmers doing creative things, and
           | having blocked the sidebar and all political hashtags, it was
           | a net positive for a while. Ultimately though, it
           | incentivizes people to post every "clever" thought that pops
           | into their brains, and after posting hundreds of your own
           | clever thoughts and reading tens of thousands of other
           | people's, it instills in one the urge to live alone in the
           | mountains under a vow of silence.
           | 
           | Though... it occurs to me that my cursed "cleverness" may
           | have followed me to HN.
        
       | kristiandupont wrote:
       | Is there a way to delete all your tweets from X afterwards?
        
       | MortyWaves wrote:
       | Can you do the same for Mastodon? What about Mastodon to Bluesky?
        
       | gslepak wrote:
       | A tool like this for the Fediverse / ActivityPub would be
       | awesome.
        
         | zimpenfish wrote:
         | > A tool like this for the Fediverse / ActivityPub would be
         | awesome.
         | 
         | Currently not ~~possible~~ that easy, sadly, because the
         | Mastodon spec (which is basically what everyone uses) doesn't
         | have the concept of backdated posts and, more importantly, even
         | if you fudge your server to allow a date in your `Status` when
         | posting[0], it'll still go "oh, this needs sending out to
         | everyone"[1] as if it were a new post and let me tell you, the
         | clients also do not know about backdated posts and things get
         | confused real fast[2].
         | 
         | (I don't think it'd be a huge change to the spec to allow
         | backdated statuses but getting consensus about how that
         | actually works for, e.g., sending out, client handling, etc.
         | would be a lot of work.)
         | 
         | [0] I did this on my Akkoma server to import 15 years of
         | Twitter bot posts.
         | 
         | [1] Sadly my Elixir knowledge didn't extend far enough to be
         | able to figure out how to prevent this for backdated posts.
         | 
         | [2] To the point where I and everyone else had to unsubscribe
         | from the Fedi bot whilst it was doing the backimport.
        
       | taishikato wrote:
       | Ha interesting > Bluesky allows to backdate their posts with
       | their API
        
       | SanjayMehta wrote:
       | Okay, this made me chuckle: " i'm enjoying my japanese lessons so
       | much i might start writing ruby"
       | 
       | https://bsky.app/profile/jdan.me/post/3lkoklkirgs27
        
       | genevra wrote:
       | Awesome, the more people we can convince to switch from Twitter
       | the better.
        
       | veilgen wrote:
       | This is interesting, but it raises concerns about the integrity
       | of timestamps on Bluesky. Allowing backdated posts could lead to
       | misuse, such as manipulating historical context or creating a
       | false impression of long-term presence on the platform.
       | 
       | On the other hand, it could be useful for users who want to
       | maintain a consistent archive of their content across platforms.
       | But the question remains: should platforms allow this kind of
       | timestamp manipulation?
        
       | jokethrowaway wrote:
       | Nice tool and it's great to see BlueSky allows you to backdate
       | posts!
       | 
       | My main problem with BlueSky is that I get barely any
       | interactions compared to my old Twitter (which also wasn't
       | stellar). It's becoming a tool to listen to a few good devs
       | (which I periodically check on), while trying to ignore all the
       | pr0n, but not a social network I can use.
       | 
       | Building an audience seems way harder.
        
       | codeman001 wrote:
       | Interesting tool but the main problem with BlueSky is that I get
       | barely any interactions/reach compared to Twitter/X.
        
         | klausjensen wrote:
         | It is all about which "circles" have migrated. A lot of the
         | people I follow have reported that while having a lot fewer
         | followers, they have a lot more interactions - and a LOT less
         | bot-interference.
        
       | aa-jv wrote:
       | Back in the early days of the Web, there was a company started
       | that would allow anyone to annotate any web site - basically, you
       | could go to any site, and add your own little notes to it, for
       | others to view.
       | 
       | It didn't last long - there was some sort of rebellion against
       | them as a service and it turned out they couldn't find a way to
       | make money with it. (Akin to that push service that pushed news
       | to everyones' screensavers, which seemed like a good idea at the
       | time)
       | 
       | This feels like that.
       | 
       | I wonder how long it will last until the door is closed for folks
       | to re-purpose others content in this way?
        
       | dustedcodes wrote:
       | Am I the only one who finds it weird that people want to migrate
       | their tweets? Is it just sentimental feelings or what is the
       | purpose of that? To me tweets have always just been in-the-moment
       | brain farts. People have tens of thousands of tweets with the
       | vast majority being just completely irrelevant now and really
       | rather uninteresting. This reminds me of people who keep all
       | their school notebooks in shelves from when they were 5 years
       | old, as if you'd ever go back and look at some scribbles from 50
       | years ago.
        
         | hombre_fatal wrote:
         | Many people use Twitter for blogging, whether in the old tweet-
         | storm style or the newly supported long-post style.
         | 
         | They would want to port over the content just like someone
         | migrating from Wordpress to Jekyll.
        
       | dragssine wrote:
       | It's cool idea, congrats
        
       | dhosek wrote:
       | Sadly I've already deleted every single tweet I had under my
       | Twitter account (other than a pinned tweet saying I've moved to
       | BlueSky). It's mostly symbolic, but I felt it was necessary.
        
       ___________________________________________________________________
       (page generated 2025-03-19 23:02 UTC)