
Building the New Twitter.com - spzx
https://blog.twitter.com/engineering/en_us/topics/infrastructure/2019/buildingthenewtwitter.html
======
NelsonMinar
To the posted article, I think it's impressive they are shipping a single
codebase for mobile and desktop. Modular features you can turn off for
different views. It's smart and I'll be curious to see if other sites follow
suit.

Unfortunately they've now ported one of the most offensive feature from mobile
to desktop. The "Home" timeline, with tweets out of order. And the real
kicker; you can still select "latest Tweets first" but then the app literally
undoes your preference every week or two, forcing you back to their "Home"
view. It's offensive.

Also a small thing, but the new desktop Twitter now has obfuscated CSS classes
for everything. The names change frequently too, maybe at every deploy? Anyway
it makes it a lot harder to modify the desktop HTML presentation with an
extension or set of ad blocker rules.

~~~
rasfincher
One of the main things that keeps me using a third-party client (for as long
as I can continue using one) is the Home vs.Latest Tweets feature. I NEVER
want to see the home timeline. I always want a reverse-chronological list of
tweets. It is user-hostile to have to continuously select Latest Tweets. I'm
sure they see more engagement with the Home timeline, but I just want to be
able to flip a switch and never see it.

~~~
hanoz
Search results in reverse chronological order is Twitter's killer feature but,
bafflingly, it seems like they've been going out of thier way to prevent that
for years now, especially on mobile. Why? Also, if there's any Android app
which lets you do that without having a Twitter account, I'd love to know
about it. I used to use a nice little app called SearchBird for this, but it's
disappeared and I can't find a replacement.

~~~
losteric
Either hard to efficiently implement at scale, or they want users to forget
about reverse chronological ordering in hopes of monetizing feed rank

~~~
ssalka
I'm pretty sure it's easier to sort by -timestamp than to run a complex
ranking model across all recent tweets (which would have to be windowed by
timestamp anyway), and then sort by the output of that.

Seems to me like they are going out of their way to force their "top tweets"
algorithm on users.

~~~
losteric
It's a global platform with billions of users, with many users follow hundreds
of people, some users followed by millions, huge volumes of media tweets,
broad distribution of posting frequency... even with those basic scaling
concerns, I don't see how consistent reverse chronology could be implemented
as naively as "yo just sort by -timestamp".

I would bet "top tweets" improves engagement with the passive consumption
audience while saving money by abandoning consistency and improving caching.

------
ericzawo
I just get the impression the PM's at Twitter don't actually use it, and
worse, engage with people who use it, enough. I follow a ton of CMOs, social
media directors, agency heads, people who use Twitter to drive business and
commentate regularly on their industry, and they have expressed disdain for
product direction decisions for years around the "mobile-ification" of the
desktop experience. Now it seems they're pushing total usability-hostile
'features' to their desktop webapp.

Really, who on earth over there made the call that two tweets visible if
there's an embedded image, even on a large 27" 1080p monitor, was a good idea?

~~~
sp332
Twitter isn't going to make money with a bunch of power-user features for non-
paying users. They're going to make onboarding painless and the overall
experience as unintimidating as possible. That means minimizing features that
don't keep people on the site and viewing ads.

~~~
kccqzy
Non-paying users? These are the people and the businesses creating the most
interesting and valuable content on the Twitter platform. They directly make
Twitter as a platform more valuable and enjoyable for end users.

~~~
ben_w
I don’t think Twitter cares about “interesting” or “enjoyable”, only
“attention grabbing” — and even the political troll bots can produce that by
themselves.

------
lanrh1836
I find it all so bizarre. Everything from how big the font size is in the left
nav, to the ordering of the nav items, to how the feed and right nav scroll
together (can’t see the top of the right nav if you scroll down the main feed)
to how huge tweets with images appear (can only see 2 tweets if they contain
images on a massive desktop screen) to the fact that you cant resize the left
or right nav on your own...

~~~
Benjammer
What's bizarre about it? It looks a lot like the reddit redesign to me, and
seems to be focused on emphasizing sponsored content more, if I had to
speculate.

Large-picture tweets taking up a lot of space means that large-picture
interstitial ads and promoted tweets also take up lots of space. I would guess
also that scrolling the right-hand column gives a lot more automatic eyeball
space to trending stuff in sections below the fold, and is no longer
constrained to just screen height for what everyone will usually see there.
Who's going to willfully scroll down the trending column of promoted stuff
separately from the main feed?

The left-nav stuff seems much more straightforward for new users, even if it's
a useless change for long time users who already know how to operate the site.

~~~
Existenceblinks
The "display" setting is a good start. Give me options to hide the left-nav,
the trend, and I'll be cool with it.

~~~
Benjammer
Why in the world would they give users the option to hide trending stuff?

~~~
dorfsmay
If I want my content based on others' opinion, I go to Reddit.

What's the point to follow accounts if you're not guaranteed to see their
content, and not in the prefer they intended to?

------
HugThem
Why on earth is the text of Home/Explore/Notifications etc on the left bold
and twice as big as the content aka the tweets?

You see the navigation every day. You know where it is. Its not that you have
to read through it. So if anything, shouldn't it be smaller?

~~~
buboard
I would also like to be able to see my username somewhere. Its confusing when
managing multiple accounts

------
baud147258
I tried the new Twitter interface, it was so bad that if I hadn't been able to
go back to the normal one, I would have stopped using twitter. It had
successfully reduced the density of information by splashing whitespace
everywhere on the page and navigation on it was way inferior.

~~~
markdog12
I don't like it either. How do I use the older version?

~~~
Avery3R
Set your user agent to `Mozilla/5.0 (Windows NT 6.3; Trident/7.0; rv:11.0)
like Gecko`

~~~
steveklabnik
My twitter followers have confirmed that this works!

~~~
trazire
For me, deleting all cookies and logging back in works.

~~~
eps
Neither this nor resetting one of the cookies to "off" (another method) works
at all times. These are client-side overrides.

However, the user-agent spoofing works because it fakes IE11 on Windows 7 and
it triggers a server-side override.

------
ufo
A high percentage of the time when I attempt to view a twitter page on mobile
the spinner times out and just gives a "something went wrong" error. There is
a Try Again button but clicking on it is futile, as it always goes back to
"something went wrong" error after a second. The only thing that seems to work
is to ask the browser to refresh the page, sometimes more than once.

Is this only happening to me? I always wondered what the hell is going on.

~~~
jswny
Happens to me too all the time on mobile and boy is it infuriating. I either
get the "something went wrong" or the "you're being rate-limited," neither of
which make any sense for someone opening tweets every now and then inside
other apps.

I assume it's because when you open tweets with in-app browsers etc. Twitter
wants to make it a poor experience in order to get you to use their app
instead. Same reason they have been gutting their API features and limiting
API tokens for 3rd party apps for years now.

------
AznHisoka
Bring back full historical search back to the UI. Every search I do is limited
to the past week. It used to be you could keep scrolling down and you'd keep
seeing past tweets.

I don't care about this new UI thing. Don't care one bit.

~~~
HugThem
I don't see such a limit. When I search, I still can scroll. Just tried and it
worked all the way down to 2011.

~~~
AznHisoka
Hah, it seemed like they only restricted it for my IP address. When I use a
proxy, it works.

------
bobblywobbles
Another prime example why UI redesigns are a waste of time -
[https://debugandrelease.blogspot.com/2019/03/ui-redesigns-
ar...](https://debugandrelease.blogspot.com/2019/03/ui-redesigns-are-mostly-
waste-of-time.html)

~~~
throwaway66666
But what if you have a total of 3000 engineers. What will all of them do?
Perhaps a handful of them can investigate and try new things?

~~~
btown
Or maybe you have them work on complementary products to your... oh wait
Twitter leadership has no desire for a B2B presence, so it can't build B2B
tools. Oops.

------
s3r3nity
Am I in the minority of folks that enjoy Twitter's algorithmic sorting?

In the classic timeline view, I always felt the urge to check my feed all the
time, in case i missed part of the conversation or the like (a la "FOMO.")

~~~
wpietri
I think the better way to handle this would be a tab that includes all the
stuff they think you'd like. Good things you missed, things your friends have
liked, discussions they're in, people you should check out, tweets that are
probably relevant to you based on your behavior.

I honestly wouldn't mind seeing that stuff if I have a, "Oh, what else on here
is good" feeling. But it makes me crazy that they keep insisting that I really
must want to see it right now, when I am very sure I don't.

~~~
jpindar
That's how [https://tweetdeck.twitter.com/](https://tweetdeck.twitter.com/)
works. You have a Home column, which is strictly things the people you follow
have tweeted and retweeted, in chronological order; and you have a separate
Activity column for those other things (and optionally more columns for
searches, lists etc.)

------
ajmurmann
Wasn't it great when we all had API access and could choose between different
clients that had different emphasis? I'd be happy to pay too.

------
statenjason
This strong sign of the confidence Twitter has in React Native for Web[1]. In
2017, Nicolas Gallagher gave a talk[2] about why it was used for
mobile.twitter.com.

[1]: [https://github.com/necolas/react-native-
web](https://github.com/necolas/react-native-web)

[2]:
[https://www.youtube.com/watch?v=tFFn39lLO-U](https://www.youtube.com/watch?v=tFFn39lLO-U)

~~~
ngrilly
How do you know they use React Native for Web? The article says they unified
their desktop and mobile architectures, but doesn't specify how.

~~~
statenjason
Opening in React devtools shows a number of hints[1]. "React Native Style
Editor" section. "View" components with numeric "style" props. And the
classname prefixes "css-" and "r-" match the generated identifiers from react-
native-web[2].

[1]: [https://imgur.com/lFUvL7P](https://imgur.com/lFUvL7P)

[2]: [https://github.com/necolas/react-native-
web/blob/45f94eb43da...](https://github.com/necolas/react-native-
web/blob/45f94eb43daa3cb3d7fae0295877345a176c04c4/packages/react-native-
web/src/exports/StyleSheet/compile.js#L81)

~~~
ngrilly
That's convincing :-) Thanks!

------
kup0
I have to use Tweetdeck, because not having a reverse-chronological timeline
is such a dealbreaker. If they ever remove this ability from Tweetdeck, I will
probably just leave.

I'm already on Mastodon and more active there anyway, it didn't turn into a
ghost town like the last time I tried it.

------
kpwags
I like it, but I have a weird bug.

It could have something to do with some of my extensions, but every time I
open the new Twitter on Firefox, it has me logged out...but if I refresh the
page, I'm back to being logged in and I can browse my feed.

~~~
jtreminio
I experience this as well, but in Chrome.

I've tried it several times over several weeks, always revert back to old
design.

------
_zachs
Engineering at Twitter must be a constant context switch. Every quarter
there’s a new blog post about some new re-design they’re working on.

------
cracauer
All that work, and still I had to use right-click "open image in new tab" to
see the text of a meme?

Is anybody in there actually using that thing? (those in user-facing changes
authority?)

~~~
Pxtl
Somebody worked very very hard on an algo that figures out which part of the
image is important and they're not going to let some dumb users with silly
opinions like "I want to see the whole thing" ruin it.

------
russdill
My biggest pain as far as missing features is new tweets. In the old interface
if I had someone's timeline open, There'd be a number '(n)' in the tab that
indicated there were new tweets. If I went to the tab I could click on a show
new tweets button and see them. A nice side effect of this was that you could
easily view deleted tweets as they were queued and shown normally.

The new interface has none of this.

~~~
dorfsmay
Yes. Not the biggest, but a huge pain.

------
karussell
I know there are different opinions but I like it. I like the dark theme, the
explore tab, the "data saver" option and also that the navigation experience
got better (backward button points you back to the correct tweet). Well done!

I only hope they do not remove the "see latest tweets" in the home tab.

------
JaimeThompson
I am not sure they could have added more white space to the new Twitter if
they tried. I would not kill them to adapt to the amount of screen real estate
that I have.

------
solarkraft
The mobile-first page is a lot better than the old one. I've been using it for
a while.

... When still using Twitter, that is. The platform decisions like showing me
notifications of things I never subscribed to in any way ("look, some person
you don't follow tweeted this") and can't unsubscribe from is 100% offensive
to me and one of the major reasons I really don't like using the platform
anymore (besides a crippled API and only now slowly improving mobile app).

That said: The website is amazing on mobile. It feels NOTHING like 99% of
webapps out there. How are they doing it? Are they damn wizards?

~~~
Meai
Is the navigation on mobile for you on the left or on top? No matter how small
I make the browser window on desktop it still shows the navigation on the left
side as a vertical bar but on mobile it always shows as a top bar. It's a big
difference in my opinion and I am curious which version you like.

~~~
solarkraft
I like the mobile version.

And shit, I thought they just made the old mobile.twitter.com the default.
Instead they made a new site that also mobile.twitter.com points to, so you
can't get the old style back.

Oh well, a lot of meaningful interaction for me already happens on the
Fediverse and with Twitter's moves I don't think that will decrease.

Check out Pinafore ([https://pinafore.social/](https://pinafore.social/)) for
a light weight client.

------
pier25
On my 13'' MBP there are many tweets I can't see completely unless I scroll
down. This is wrong.

------
PretzelFisch
It's an odd choice to put the tweet button at the top of the dialog rather
then the bottom where your eyes and mouse should be after finishing the tweet
message.

------
RichardHeart
They got 1 code base. I got a UI that I don't like.

1\. There used to be a drop down for "copy link" to a tweet. So I could tweet
then paste the URL across other platforms. Now I need to click the link, and
copy the URL manually, and it's laggy.

2\. The darker dark mode dims the text too. 3\. The font size setting has no
affect on making a new tweet...

As usual, company degrades experience for users on UI upgrade...

~~~
delecti
For 1, the link to the relative time the tweet was posted (1 minute ago, 15
seconds ago, etc) is a direct link to the tweet. Right click, copy link
location (or your browser's equivalent). This has been the case as long as I
can remember.

------
duxup
Nice to see they are still working with Progressive Web Apps.

I'm really interested in seeing if PWAs can reach first class citizen status
everywhere. Still a bit skeptical as installation from web is still wonky in
Chrome. Google was pushing PWAs pretty hard for a while on the developer
side....browser felt like an afterthought... that worries me.

------
wanone
Never used twitter. Just made an account using work email to test twitter
login. Didn't do a single thing yet. And my account gets blocked for
'suspicious activity' and they want my phone as well. What a shady company.

~~~
emikru
This happened to me as well when I recently tried to make an account with an
email address and no phone number. It was frozen almost immediately after
creation, and when I requested it be unfrozen, twitter sent a message to my
main email (NOT the one I signed up with!!) and required me to respond and say
I had access in order to get the account back up. Made me very uncomfortable
and virtually destroyed any desire I had to use their service.

------
cwyers
Twitter has changed the front end like five times in the past five years and
improved exactly zero of those times. They need to lay off 80% of their front
end devs to keep them from just pointlessly churning the website.

------
djhworld
I quite like the redesign except the annoying sidebar on the right hand side,
its way too big and pushes everything too far to the left for my liking

I wrote this Stylus rule to get ride of it and make the main box a bit wider.
It's a blunt, brute force rule but it works for now...

    
    
      .r-1ye8kvj {
          max-width: 700px
      }
    
      .r-1ovo9ad {
        display:none;
      }
    

The downside is it gets rid of the search input.

Also I suspect those class names are auto generated by something so the above
rules will probably break if they ever do a redeploy

~~~
LordAtlas
As someone pointed out earlier, it seems they're changing CSS classes
constantly to deter scraping, so this might not work for long.

------
wetpaws
After the reddit redesign and a twitter redesign I am starting to suspect that
annual bonuses in those companies are tied in to the negative KPI.

------
partiallypro
With the new Twitter in Firefox it logs me out immediately after I close the
window (no, I'm not incognito.) Also if I sign in using a different browser
none of the options are saved. It's pretty annoying. It is a bit snappier, but
it has a lot of annoyances. I can no longer go back to "old Twitter,"
either...so, it's a mess.

------
cyberferret
I wish they would fix the 'Report Tweet' bugs - I keep getting stuck in a
seemingly endless rotation of pop up dialogs once I complete a report.

Or is this a deliberate dark pattern to curb people's enthusiasm for reporting
bad content?

------
buboard
I dont have strong opinion for their new design but i find it a bit goofy with
those very rounded corners. I don’t know if the single codebase is a good
idea, time will tell if they will end up like Windows 8

------
bkorte
Is there some kind of cookie hack I can run to get the new UI? Would be nice
if engineering posts included a way to change your feature flag so I can
experience what is being discussed.

------
martin-adams
One area I wish they would improve is the DMs. Being able to organise them
into folders would be amazing, but just marking one unread again would be a
huge improvement.

------
robocat
> So we enable these shortcuts whenever we detect a keyboard.

How exactly do they they do this? Is it just detect keypress so load the
shortcut code, or more complicated?

------
riffic
Cool, now when is Twitter going to adopt ActivityPub?

------
jacobdpeters
Does anybody know what song is playing in the background? Or think it was
custom recorded for this video.

------
jbverschoor
Is this why they were down a few weeks ago? Dual testing / feeding the feed in
a secondary system

------
dstroot
Does anyone know what’s under the hood? React? Vue? Something I don’t even
know enough to ask about?

~~~
tomduncalf
It’s React (I think they mention this in the article) and I believe they are
actually using React Native for Web, the engineer behind that works for
twitter and the generated markup and classnames match how that works. Perhaps
they are considering moving to React Native for their mobile apps in future...
though there are other valid reasons to use React Native for Web

~~~
jrm2k6
Is using react-native for Web better than having react & react-native for your
UI and nicely separated business logic that is reusable for both? If you use
react native for Web, does it mean your UI will look exactly the same whether
it is on the web or mobile?

------
gridlockd
If they had just stopped developing Twitter years ago, it would be a better
product today.

------
ChrisArchitect
so the new version is the mobile site that's been active for awhile right?
Someone tipped me off about using the mobile version on desktop a few months
back and I never went back. Faster/more streamlined etc

------
beardedman
I like it. Snappy & nice looking UI (with the bigger bolder fonts).

------
bijsv
The new twitter.com which turns out to be the mobile version they released
years ago and that has been working ever since, but with two sidebars.

------
not_a_cop75
There is no new twitter until the corruption involved in twitter is taken to a
head. Any technology will never improve the lousy policy and posturing that
they do as a company.

------
throwanem
Oh weird, I thought the new Twitter was called "Mastodon"...

------
njn
> The techniques and technologies we’ve used on the new Twitter.com mean you
> only download and run code when it’s needed. So a mobile user won’t download
> the sidebar you see on the home page, and may not download the settings
> pages until they go to update their display name. However, it also means
> that the full functionality of the site is still available to them should
> they want to access it.

Can someone explain to Twitter's web developers that there's nothing
groundbreaking about this idea? Like... lmao. That's how web apps should work.
That's how traditional django and rails apps already work. I like JavaScript
and React as much as any web developer but if you're loading unnecessary code
that's actually degrading the usability then that's a problem to be fixed
asap. And it's definitely not something worth mentioning in this press
release.

Oh wait, this was post written by "software engineers", not "web developers".
They're probably too smart for these details.

------
martin_a
Will there be an edit function? No? Still nothing like that in 2019? Well...
twitter will go down. It's just a question of time at this point, imho.

~~~
Qwertystop
Lack of edits is an important anti-abuse feature. If you can edit a tweet, you
can make a tweet saying one thing, and then edit it to say something entirely
different after someone else retweets, links, or embeds it elsewhere..

(Though frankly, given how poorly they've handled other abuse-related issues,
I doubt this is their reasoning)

~~~
davidw
So give people 1 minute or something and maybe don't show it until that time
period is up.

~~~
sneakernets
That would break the spontaneous nature of "live-tweeting".

