Live data from Hacker News

I Made a Self-Quoting Tweet

oisinmoran.com

81–90 of 145 posts

Re: I Made a Self-Quoting Tweet

#81
post #9
post #5

> And for anyone at Twitter who was depending on the network of tweets being a Directed Acyclic Graph, I'm so terribly sorry. I love the idea that there's someone out there with code that resolves retweet chains recursively, who's about to be in for a great head scratcher of a bug.

They will have to reckon with the fifty thousand-long chain at https://twitter.com/every_peano

[deleted]

Re: I Made a Self-Quoting Tweet

#82
post #5

> And for anyone at Twitter who was depending on the network of tweets being a Directed Acyclic Graph, I'm so terribly sorry. I love the idea that there's someone out there with code that resolves retweet chains recursively, who's about to be in for a great head scratcher of a bug.

I laughed out loud at the other twitter reply asking ThreadReaderApp to unroll the thread

Re: I Made a Self-Quoting Tweet

#83
post #79
post #72

Earlier quoted context omitted.

One of the replies is an engineer at Twitter, who confirmed that someone managed to achieve this 7 years ago and it caused issues in the backend.

It’d be a simple check that anything referenced has to have a lower ID (and hence time stamp). I find this bug more interesting: > Also, it seems like Twitter doesn't actually care about the username and just resolves URLs based on the tweet ID. I'm sure lots of people already knew that but it's new to me. They’re not validating the parent directory matches the actual tweet. I wonder if that’s an actual bug or intent…

That seems incredibly brittle due to making assumptions about the ID format that twitter has no obligations to keep. It just so happens that if your logic had been if(newId > olderId) you would have survived their new format (due to the fact that the timestamp leads the integer) but that'd be a win based on pure luck. The example the engineer came up with was seven years old so it had no way of foreseeing the ID format change.

Re: I Made a Self-Quoting Tweet

#84

Earlier quoted context omitted.

The tweet Closi is referring to: https://twitter.com/noradio/status/1333558513314922497

And the content, for anyone too lazy to click: Commenter >what's really amazing is that twitter programmers thought about this edge case and made sure the tweet would not display itself Twitter Engineer >We didn't think of this edge case. Someone did this about 7 years ago and the recursive hydration would make a tweet service crash by simply loading the tweet in a browser. It took a principal engineer an entire day…

Hydration?

Re: I Made a Self-Quoting Tweet

#85
post #28
post #23

Earlier quoted context omitted.

For traversing a DAG you probably still would to avoid exploring an exponential number of paths (consider a chain of diamonds [1]). 1: https://www.researchgate.net/figure/A-diamond-shaped-DAG_fig...

But a diamond cannot occur in a Twitter-reply graph, right? It would require a Tweet to be able to reply to more than one tweet.

You can reply to one tweet while quote-retweeting another. Depending on how links are defined that could result in a diamond.

Re: I Made a Self-Quoting Tweet

#86

Earlier quoted context omitted.

And the content, for anyone too lazy to click: Commenter >what's really amazing is that twitter programmers thought about this edge case and made sure the tweet would not display itself Twitter Engineer >We didn't think of this edge case. Someone did this about 7 years ago and the recursive hydration would make a tweet service crash by simply loading the tweet in a browser. It took a principal engineer an entire day…

Hydration?

As in, https://ssr.vuejs.org/guide/hydration.html

Re: I Made a Self-Quoting Tweet

#87

Earlier quoted context omitted.

And the content, for anyone too lazy to click: Commenter >what's really amazing is that twitter programmers thought about this edge case and made sure the tweet would not display itself Twitter Engineer >We didn't think of this edge case. Someone did this about 7 years ago and the recursive hydration would make a tweet service crash by simply loading the tweet in a browser. It took a principal engineer an entire day…

Hydration?

Hydrate: (verb, jargon) To populate with metadata or subobjects.

i.e. The FriendsList service hydrates each friend object with a list of friends you have in common

Re: I Made a Self-Quoting Tweet

#88
post #82
post #5

> And for anyone at Twitter who was depending on the network of tweets being a Directed Acyclic Graph, I'm so terribly sorry. I love the idea that there's someone out there with code that resolves retweet chains recursively, who's about to be in for a great head scratcher of a bug.

I laughed out loud at the other twitter reply asking ThreadReaderApp to unroll the thread

And it seems that ThreadReaderApp didn't reply. Evil, indeed.

Re: I Made a Self-Quoting Tweet

#89

Earlier quoted context omitted.

Thank you! The reason for experimenting with a sort of blow-by-blow report style here and detailing the full and true journey of the idea was that I feel the whole process from idea to artifact is not written about enough. That said, it can often be hard to fully pinpoint the actual inception of an idea and just thinking about this one yesterday I realised that the idea likely came up while traversing a long chain of…

The write-up was great, actually. The whole point of sharing the article is to read about the process and the technical details, I don't know why people insist on these cheap TL;DRs.

Thank you!

Re: I Made a Self-Quoting Tweet

#90
post #23

Earlier quoted context omitted.

But you wouldn’t do that if your assumption is that the graph doesn’t cycle. Edit: child comments are correct and I regret my oversight

For traversing a DAG you probably still would to avoid exploring an exponential number of paths (consider a chain of diamonds [1]). 1: https://www.researchgate.net/figure/A-diamond-shaped-DAG_fig...

of course, it depends on 'what' you are perceiving the computation of and if you were trying to stabilize the effects other surrounding (this would be like a pfaffian), just create a equivariant gauge relative to whatever your senses, just pretend to be like a "solenoid". knowing about a renormalization procedure to a set of pre-known "cardinals", like the lithium-defn (adiabatic "approximation") of seconds or unicode, knowing how they cross convolve or cross correlate. Almost all of these is pretty easy to directly infer or calculate in the discrete digital logical world (or reduce it to a branch and cut problem or SAT), but there seem to be limits to MOSfet technology.
Post reply on HN