# orderedItems[].object.content
@dpp @AnarchoNinaWrites@oliphant.social Thanks for the link. I really hope they can "stick it to them", though.

# orderedItems[].object.contentMap.en
@dpp @AnarchoNinaWrites@oliphant.social Thanks for the link. I really hope they can "stick it to them", though.

# orderedItems[].object.content
SF Mission folks- Duc Loi on Mission St is changing hands soon, and gone with the current owners are the bah mi sandwiches, which are the best value in town. Grab one before Amanda retires from the store on Aug 13th!

# orderedItems[].object.contentMap.en
SF Mission folks- Duc Loi on Mission St is changing hands soon, and gone with the current owners are the bah mi sandwiches, which are the best value in town. Grab one before Amanda retires from the store on Aug 13th!

# orderedItems[].object.content
@evacide The recommendation isn't always accurate though. Just make sure to verify the association.

# orderedItems[].object.contentMap.en
@evacide The recommendation isn't always accurate though. Just make sure to verify the association.

# orderedItems[].object.content
@marcbrooker What I’m trying to figure out is if queueing theory is most what we need in terms of math framework, but we just need a lot more computing power to simulate the real spells.

# orderedItems[].object.contentMap.en
@marcbrooker What I’m trying to figure out is if queueing theory is most what we need in terms of math framework, but we just need a lot more computing power to simulate the real spells.

# orderedItems[].object.content
Dino alert for Dolores Park.

# orderedItems[].object.contentMap.en
Dino alert for Dolores Park.

# orderedItems[].object.content
Did anybody see today's clouds in SF? They are cone shaped, with a somewhat pointy bottom and flat top, like a martini glass but without the stem. I wonder if they have a name?

# orderedItems[].object.contentMap.en
Did anybody see today's clouds in SF? They are cone shaped, with a somewhat pointy bottom and flat top, like a martini glass but without the stem. I wonder if they have a name?

# orderedItems[].object.content
@danluu For a twitter alternative to be truly valuable to me I need search, chrono, and list. In that order.

# orderedItems[].object.contentMap.en
@danluu For a twitter alternative to be truly valuable to me I need search, chrono, and list. In that order.

# orderedItems[].object.content
@dschonbe @bidetofevil agreed, hopefully hubris will get him soon enough.

# orderedItems[].object.contentMap.en
@dschonbe @bidetofevil agreed, hopefully hubris will get him soon enough.

# orderedItems[].object.content
@bidetofevil @dschonbe Would aggressive rate limiting of logged out users based on guest/device id (when there isn't a user id present) address the scraping problem? For logged in users, it's strange to achieve anything load-related by declaring a daily limit — should use a much shorter time span. Not to mention accessing older content is far more expensive than current data.

# orderedItems[].object.contentMap.en
@bidetofevil @dschonbe Would aggressive rate limiting of logged out users based on guest/device id (when there isn't a user id present) address the scraping problem? For logged in users, it's strange to achieve anything load-related by declaring a daily limit — should use a much shorter time span. Not to mention accessing older content is far more expensive than current data.

# orderedItems[].object.content
@b3n GCP has very little to do with serving real-time requests. It's Twitter's "ML and Analytics cloud" for the most part.

# orderedItems[].object.contentMap.en
@b3n GCP has very little to do with serving real-time requests. It's Twitter's "ML and Analytics cloud" for the most part.

# orderedItems[].object.content
@dschonbe Is this rate limit applied to requests made in a time window? Curious about your theory of the retry storm from web clients… do you see it as a red herring?

# orderedItems[].object.contentMap.en
@dschonbe Is this rate limit applied to requests made in a time window? Curious about your theory of the retry storm from web clients… do you see it as a red herring?

# orderedItems[].object.content
@rburchell oh this push was probably what triggered it. It’s a very short term tactic though, most certainly harmful in the longer run even executed well (which it is not as of now).

# orderedItems[].object.contentMap.en
@rburchell oh this push was probably what triggered it. It’s a very short term tactic though, most certainly harmful in the longer run even executed well (which it is not as of now).

# orderedItems[].object.content
A sea of fog, or a mountain of fog?

# orderedItems[].object.contentMap.en
A sea of fog, or a mountain of fog?

# orderedItems[].object.attachment[].name
The Marin side tower of Golden Gate Bridge can be seen at a distance while most of the span is covered by fog, with fog also glazing over the top of Marin headlands.

# orderedItems[].object.content
I also think if they are really counting tweets, then they are seriously out of infra engineers especially TFE/T3 expertise. Because in the history of Twitter load was almost always shed at the earliest possible place, which is the reverse proxy returning a 500. But this time load is shed somewhere in the Core Services (TFE doesn't count tweets) which is suboptimal (multiple services doing work for nothing). It implies Twitter is likely quite vulnerable to various types of DDoS attacks.

# orderedItems[].object.contentMap.en
I also think if they are really counting tweets, then they are seriously out of infra engineers especially TFE/T3 expertise. Because in the history of Twitter load was almost always shed at the earliest possible place, which is the reverse proxy returning a 500. But this time load is shed somewhere in the Core Services (TFE doesn't count tweets) which is suboptimal (multiple services doing work for nothing). It implies Twitter is likely quite vulnerable to various types of DDoS attacks.

# orderedItems[].object.content
The retries pushed the backend over the edge, so they had to aggressively shed load by rate limiting everybody to stabilize the backend, while (hopefully) rolling out web client changes to fix the behavior they didn’t anticipate.

I think they will lift the limit altogether once the retry behavior is fixed. But Elon will insist this is about scraping.

# orderedItems[].object.contentMap.en
The retries pushed the backend over the edge, so they had to aggressively shed load by rate limiting everybody to stabilize the backend, while (hopefully) rolling out web client changes to fix the behavior they didn’t anticipate.

I think they will lift the limit altogether once the retry behavior is fixed. But Elon will insist this is about scraping.

# orderedItems[].object.content
This rate limit fiasco- I’m guessing it started as a short-term and somewhat desperate attempt to boost revenue by shutting off tweets to logged out users and forcing more readers to sign up/in. However because they botched the web client and forgot about Tweetdeck altogether, the web client started DDoSing the backend via endless retries without proper backoff, as multiple people had discovered and shown with browser developer tools.

# orderedItems[].object.contentMap.en
This rate limit fiasco- I’m guessing it started as a short-term and somewhat desperate attempt to boost revenue by shutting off tweets to logged out users and forcing more readers to sign up/in. However because they botched the web client and forgot about Tweetdeck altogether, the web client started DDoSing the backend via endless retries without proper backoff, as multiple people had discovered and shown with browser developer tools.

# orderedItems[].object.content
@dan damn

# orderedItems[].object.contentMap.en
@dan damn

# orderedItems[].object.content
@sanae you don’t need to buy more servers to keep the traffic at 2022 level for another couple of years (my team was the software performance team at twitter, btw, my job was to do exactly this). Tweets are mostly served out of on prem hardware which is already paid for.

Twitter’s pre-equity margin (EBITDA) had been positive since 2014. It’s a funny accounting term but common. Biggest different between that and true bottom line is equity based compensation.

# orderedItems[].object.contentMap.en
@sanae you don’t need to buy more servers to keep the traffic at 2022 level for another couple of years (my team was the software performance team at twitter, btw, my job was to do exactly this). Tweets are mostly served out of on prem hardware which is already paid for.

Twitter’s pre-equity margin (EBITDA) had been positive since 2014. It’s a funny accounting term but common. Biggest different between that and true bottom line is equity based compensation.

# orderedItems[].object.content
@sanae this doesn’t make sense for a few reasons: content generators who are driving traffic and attention are being cut off. The size of the debt he takes on demands scale, and shrinking the business, even if it improves relative margins, moves twitter further away from financial stability. Twitter’s raw margin was actually quite healthy before it went on a hiring spree (similar to other tech companies) starting from 2020 to chase the growth that didn’t really materialize.

# orderedItems[].object.contentMap.en
@sanae this doesn’t make sense for a few reasons: content generators who are driving traffic and attention are being cut off. The size of the debt he takes on demands scale, and shrinking the business, even if it improves relative margins, moves twitter further away from financial stability. Twitter’s raw margin was actually quite healthy before it went on a hiring spree (similar to other tech companies) starting from 2020 to chase the growth that didn’t really materialize.

# orderedItems[].object.content
@sanae I think about this often, and as a corollary I don’t believe in most stories about geniuses or self claimed heroes.

# orderedItems[].object.contentMap.en
@sanae I think about this often, and as a corollary I don’t believe in most stories about geniuses or self claimed heroes.