System purge of bots & trolls underway.
Please reply to me or
@XEng
if legitimate accounts are suspended.
X Corp will be tracing the people responsible and bringing the full force of the law to bear upon them.
This has been a year full of engineering excellence that sometimes can go unnoticed. Besides all the visible changes you see on our app, here are some of the most important improvements we have made under the hood.
- Consolidated the tech stacks for For you, Following, Search,…
Today marks a new era of transparency for Twitter. 🧵
We’re sharing much of the source code that powers our platform with the world. Visit our blog to learn more about this initiative:
X is redefining video, one pixel at a time.
We’ve upgraded our infrastructure and are shipping new updates to improve video.
80% of users consume video on X every day. And almost 70% of all users who watch videos are also scrolling through conversations.
We identified an issue that caused Spaces hosts to get kicked out of the Space they were hosting on iOS. Unable to rejoin, the Space then ended.
We pushed a fix this morning addressing this issue, and it's now available to all iOS users.
Make sure to update your app to 10.36.2…
You may have heard about this year's Economics Nobel Prize winners - David Card, Josh Angrist (
@metrics52
) & Guido Imbens.
Their publicly available work has helped us solve tough problems
@Twitter
, and we're excited to celebrate by sharing how their findings have inspired us.
Happy 25th birthday to
@java
! Did you know that almost all of Twitter's services run on the Java Virtual Machine? That
@TwitterEng
develops it's own fork of
@OpenJDK
with Twitter-specific optimizations to make Java and Scala faster?
#MovedByJava
The real magic of Twitter is in our recommendations algorithm, which powers the hit Tweets you see in your For You timeline. We broke down how it all works here:
We are making changes to how block works.
If a user who has blocked you replies to one of your posts, you will now be able to see their reply. This change enables you to identify and report any potential bad content that you previously could not view, safeguarding both your…
Proud of all the teams at Twitter who have been working hard to increase our product development velocity. We’ve been busy! Here’s a recap of a bunch of things we’ve shipped or started experimenting with just in the past 2 weeks:
Starting today, we’re accepting applications for our first cohort of engineering apprentices! We know that great talent comes from all kinds of backgrounds, and we need to do a better job of creating and fostering a sustainable pipeline of diverse talent.
Inclusive language plays a critical role in fostering an environment where everyone belongs. At Twitter, the language we have been using in our code does not reflect our values as a company or represent the people we serve. We want to change that.
#WordsMatter
One of our top priorities in these difficult times is to keep Twitter running and the Tweets flowing. Our work has never been more critical and our service has never been in higher demand. 🧵
Update here:
In our latest blog post, we’re sharing the findings from our image cropping algorithm analysis and exploring ways to create a more equitable experience on Twitter.
Pushservice is the main recommendation service we use to surface recommendations to our users via notifications. It fetches candidates from various sources, ranks them in order of relevance, and applies filters to determine the best one to send.
We are aware of an issue that is causing Broadcasts and Spaces to not play. We are actively investigating the issue now. Thank you for your patience as our team works to bring these back.
There are several other suggestions that we’re currently working on - we will post further updates as changes are implemented. Your feedback is much appreciated!
Calling all bounty hunters - it’s officially go time! We’ve just released the full details of our algorithmic bias bounty challenge which is open through August 6. For more details on the challenge, head over to our blog 👇
Many of you pointed out code that boosts likes, retweets and other Tweet attributes (image URL, hashtags, trending topics, etc). This turned out to be old and unused so we’ve deleted it.
We’re excited to be expanding our strategic partnership with
@googlecloud
. This will enable more teams at Twitter to gain richer insights, faster, about how people use our service so we can improve the product & recommend more relevant content.
One pull request found a genuine bug where a threshold was incorrect. We fixed that in this commit . In total, we’ve pushed commits to address 30+ issues or pull requests.
You pointed out a safety label mentioning Ukraine, this was an old label used to help classify information in Twitter Spaces which is not in use so it has been removed.
There is no switch we can flip to make these changes everywhere, at once. We will continue to iterate on this work and want to put in place processes and systems that will allow us to apply these changes at scale. We’re focusing on these areas 👇
Representation Manager serves as a centralized embedding management system, providing SimClusters or other embeddings as facade of the underlying storage or services.
Over the last 10 days, our efforts to reduce spam on Twitter have led to:
📉 85% reduction in reports of spammy group Direct Messages
📉 ~90% reduction in spammy Direct Messages sent by accounts you don’t follow
We'll continue to share updates on our progress here.
Today we’re introducing the Responsible ML initiative, our effort to understand the use and impact of machine learning at Twitter, and take action when needed.
We’ve been working on this for a while. Here’s how we see the path forward:
Our Aggregation Framework is a config-driven Summingbird based framework for generating real-time and batch aggregate features to be consumed by ML models.
We're updating Explore in our Twitter Lite for Android app and globally for !
We want to make it easier for more people to keep up with local trends, Moments, and popular articles in their network.
Representation Scorer serves as a centralized scoring system, offering SimClusters or other embedding-based scoring solutions as machine learning features.
And that's it for this round. Stay tuned for what comes next!
Interview pro-tip: To those interviewing for our engineering roles - checkout some of these key blog posts that can help you understand our architecture and prepare for the System Design rounds. 1/5
👇👇
What is in common between CNNs, GNNs, LSTMs, Transformers, DeepSets, mesh CNNs? In a new post with
@joanbruna
@TacoCohen
@PetarV_93
we show this zoo of neural nets can be seen through the lens of symmetry.
#geometricdeeplearning
is all you need!
Dynamic graphs are a big part of how Twitter does what it does. We use them to model networks that evolve over time. In this post
@emaros96
&
@mmbronstein
discuss a new ML model developed by Twitter to efficiently predict activity in dynamic graphs.
We’ve been thinking a lot about remote work lately and what it means for the future of our teams.🌍🌏🌎
What is some advice for building decentralized teams that you would pass along? Any questions about how we do it at Twitter?
This isn't just about eng terms or code. Words matter in our meetings, our conversations, and the documents we write. We know there’s still a lot of work to do, but we’re committed to doing our part.
#UntilWeAllBelong
We built a causal estimation framework on the idea of statistical 'surrogacy' (Athey et al 2016) - when we can’t wait to observe long-run outcomes, we create a model based on intermediate data.
📣 We're excited to announce
@Fabula_AI
is joining Twitter! They'll bring their machine learning talent to help us grow our research team and graph deep learning technology to improve the health of the conversation on Twitter. Welcome to the flock!
While most Graph Neural Networks assume a full set of features for all nodes, real-world graphs often have missing node features. On the blog,
@emaros96
,
@migorinova
, and
@mmbronstein
discuss how we can learn on graphs like this using Feature Propagation.
1. Migrating source code and changing configuration by going through our existing code, IDing violating terms with new warning tools, and changing to the new inclusive terminology. Automated tools and linters are being developed in order to minimize manual effort for developers.
Exciting news: Today we are launching the ability to Retweet with GIF, photos, and video!
We find solutions to many challenges as we build for a global, vocal audience. Here is a glimpse into our process as we worked on this feature.
Next up in our blog series: Component-based design! Find out how the new uses components to make development an act of composition, rather than constantly reinventing the wheel.
Twitter continues to be powered and
#MovedByJava
and we are excited to see where we, the
@java
community, go as we all evolve Java, Scala, and the JVM together.
2. Updating documentation across internal resources, Google Docs, runbooks, FAQs, readmes, technical design docs, and more. We are also implementing a browser extension that will help our teams identify words in documents and web pages, and suggest alternative inclusive words.
We made a subtle change that has made images on ultra-retina devices load 33% faster and save upwards of 35% on data with no perceptible change in quality. Check out our blog!
We supported record-breaking volume as people tuned in to Twitter to follow the World Cup:
Peak Tweets/sec: 24.5K/sec
Peak Retweets/sec: 7.7K/sec
Live video peak: 50.1K requests/sec
Total tweets during the Final: 2.2B
We appreciate everyone who joined the conversation!
Today we launched the new
#TwitterAPI
v2 - the most significant rebuild of our API since 2012. We’re sharing what went into rebuilding the Twitter API: 🧵 1/6
It’s finally here! 🥁 Say hello to the new
#TwitterAPI
.
We’re rebuilding the Twitter API v2 from the ground up to better serve our developer community. And today’s launch is only the beginning.
Sharing a big congrats to our very own
@KLdivergence
who received the Committee of Presidents of Statistical Societies Leadership Academy award for emerging leaders in statistics at today’s
#JSM2022
conference! 🥳
We use Double Machine Learning to understand the causal impact of engagement actions. Our work leverages research by Chernozhukov et al. (2018), and is influenced by Imbens & Rubin (2015).
Based on feedback, we're working on fixes which will include: changing Tweet presentation density (so you see more Tweets) and staying on latest Tweets after hitting ✨. There are also bugs, like losing your spot in the timeline when writing a new Tweet, and unintended jumpiness.