[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)