News for hackers. Stuff that matters.
Re:Building the New Twitter.com by NelsonMinar on Thursday July 18, 2019 @12:25PM (#20471418)
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.

Re:Building the New Twitter.com by rasfincher on Thursday July 18, 2019 @03:05PM (#20472961)
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.
Re:Building the New Twitter.com by hanoz on Thursday July 18, 2019 @03:44PM (#20473272)
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.
Re:Building the New Twitter.com by snowwrestler on Thursday July 18, 2019 @06:42PM (#20474669)
> 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?

The engagement metrics have got to be better with Home. It makes sense, since the whole idea of an algorithmic timeline is to take the stuff the company knows is getting a reaction and feed it to more people.

Personally I think this is a great example of how engagement metrics mislead companies. The numbers go up, but it fundamentally changes the nature of the experience.

When you're on a reverse-chron timeline you have a sense of people's lives in real time and can have conversations. You only see people you have chosen to follow, so you recognize people and get a sense of their personality. A lot of the content is fairly banal, which gives an (accurate) sense that life for most people is kind of calm and mildly interesting.

When you're on an algorithmic timeline, you're seeing content that is really likely to get a reaction--that usually means it has a lot of emotion tied up in it: outrage, anger, sadness, humor, etc.

But it's also content that is old and choked with replies. So you can't have a normal conversation around it; there are too many people acting too emotionally. And you're seeing content from more people you don't follow--Twitter's Home timeline brings in a higher percentage of tweets that your follows have liked or replied to.

So if your timeline is filled with this kind of content, it creates the (inaccurate) impression that life is full of really extreme moments and amped-up strangers!

I can almost always tell when Twitter has switched me back to home. Suddenly I realize I'm feeling more angry, and the numbers on most of the tweets are bigger. I also see more tweets from people I don't recognize. It's like opening my kitchen door and suddenly finding a loud restaurant with spicy food in my house.

Re:Building the New Twitter.com by losteric on Thursday July 18, 2019 @05:02PM (#20473895)
Either hard to efficiently implement at scale, or they want users to forget about reverse chronological ordering in hopes of monetizing feed rank
Re:Building the New Twitter.com by ssalka on Thursday July 18, 2019 @09:55PM (#20475626)
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.

Re:Building the New Twitter.com by losteric on Thursday July 18, 2019 @10:36PM (#20475768)
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.

Re:Building the New Twitter.com by radicaldreamer on Thursday July 18, 2019 @06:53PM (#20474741)
Twitter doesn't currently have the stack to scale realtime reverse chron search... there was a spec doc years ago where each timeline would just be a search query on a pool of tweets but that architecture never got built.

I'm sure if Twitter was a product which came out of Google's culture, it would've worked that way.

Re:Building the New Twitter.com by jpindar on Thursday July 18, 2019 @07:16PM (#20474913)
There's tweetdeck.twitter.com, which is in chronological order, and gives you separate Home (posts by people you follow) vs Activity (other things related to people you follow) columns, as well as other configurable columns for notifications, searches etc.
Re:Building the New Twitter.com by rolltiide on Thursday July 18, 2019 @06:54PM (#20474749)
It has more engagement because people can't find what they are looking for.

They should have ignored the A/B test results, but investors give them money not to!

Re:Building the New Twitter.com by wpietri on Thursday July 18, 2019 @02:25PM (#20472614)
> then the app literally undoes your preference every week or two

To my great rage, some Twitter design poobah was energetically explaining how they could "prove" that was better. Actual people saying no, it was actually worse for them were of course ignored.

As much as I love Twitter, the extent to which users are the product, not the customer is obvious. At best, you're a dairy cow, producing valuable content. Maybe you're a beef cow, carved up and sold to the real customers, the advertisers. And maybe you just end up eaten the rats that are always in the shadows and frequently come out in hungry swarms.

Re:Building the New Twitter.com by georgebarnett on Friday July 19, 2019 @02:41AM (#20476616)
I’ve lost count of the number of designers who tell me that the way I use the product is wrong.

OK. Won’t use the product then.

Re:Building the New Twitter.com by ilamont on Thursday July 18, 2019 @01:56PM (#20472322)
Nothing showcases the failure of the Twitter algorithm to deliver relevant, timely information than seeing yesterday's tweets about impending bad weather.
Re:Building the New Twitter.com by dejawu on Thursday July 18, 2019 @01:10PM (#20471862)
I've stopped using the timeline entirely: I follow nobody and create private lists of the people I'd like to keep up with. When you view a list the tweets show up in chronological order and as a bonus, you don't see promoted tweets.
Re:Building the New Twitter.com by heymijo on Thursday July 18, 2019 @01:44PM (#20472212)
List functionality operates annoyingly different from timeline functionality though. In the TL, if I click out, it remembers where I left off.

With lists, if I swipe out, it loses my place.

Small issue but it puts a hamper on me using lists.

Re:Building the New Twitter.com by WillPostForFood on Friday July 19, 2019 @06:01PM (#20482810)
In the TL, if I click out, it remembers where I left off

really? One of my major gripes with twitter is I'll be about 20 (ajax loaded) pages down the timeline, click on some retweet or name, and lose my place. At best it takes me to the bottom of the first page. What browser/os are you using?

Re:Building the New Twitter.com by heymijo on Friday July 19, 2019 @08:45PM (#20483538)
Twitter App for iOS 12.3.1
Re:Building the New Twitter.com by sp332 on Thursday July 18, 2019 @02:23PM (#20472590)
Have you tried Tweetdeck? It has ads but it fixes the chronological timelines and helps keep up with multiple lists.
Re:Building the New Twitter.com by takeout on Thursday July 18, 2019 @02:26PM (#20472625)
As for obfuscated CSS classes, this is likely to use scoped CSS, which allows for components to share class names but not share class attributes.

That's kind of against the point of CSS, but it's also a useful dev tool to make your code more readable. I agree that it can be annoying on the user side, but it makes sense that they made this change.

Also, most likely, these change every deploy (when the depedency manager builds the app).

Re:Building the New Twitter.com by Latty on Thursday July 18, 2019 @04:20PM (#20473569)
It's definitely done to obfuscate as well - I took a look a while back and they were intentionally splitting up things like the "Sponsored" text into tons of tags and gunk to make it harder to find programmatically.
Re:Building the New Twitter.com by HarryN on Thursday July 18, 2019 @06:33PM (#20474592)
That was facebook
Re:Building the New Twitter.com by Latty on Thursday July 18, 2019 @07:27PM (#20474979)
I'm sure it is possible they are doing it as well, but I was talking about what I saw on twitter's new design. I don't use Facebook, so it was definitely Twitter I saw. This was a while back, so potentially it isn't the case any more.
Re:Building the New Twitter.com by guelo on Thursday July 18, 2019 @03:38PM (#20473222)
I think it's more likely that this is a user-hostile feature to prevent scraping or styling scripts that might mess with ad views.
Re:Building the New Twitter.com by takeout on Thursday July 18, 2019 @04:13PM (#20473509)
I really, really doubt that. At worst, it's both. CSS scoping and obfuscated class names are really popular and part of any modern JS framework.
Re:Building the New Twitter.com by TolstoyDotCom on Thursday July 25, 2019 @10:57PM (#20531989)
I wrote an open source application that uses Webdriver to scrape tweets; it used to show how heavily Twitter censors all kinds of users. Twitter used to have a tweet's "quality" (per them) right in the HTML: "HighQuality", "LowQuality", and "AbusiveQuality". They put some tweets in the "tombstone" section. I now need to change the app to deal with them obfuscating the "quality" and all the rest.

I've run a Twitter ad for the app so at least someone there knows about it. I don't know if the app was a factor, but certainly hiding what they think of their users' output is in line with all the other sneaky things they do to their users.

Re:Building the New Twitter.com by dstaley on Thursday July 18, 2019 @04:53PM (#20473833)
It's certainly not the primary driver. Twitter is built using React Native for Web, which uses a pattern called "Atomic CSS".[1] So it's just a result of the framework they're using.

[1] https://github.com/necolas/react-native-web/blob/master/docs...

Re:Building the New Twitter.com by nightfly on Thursday July 18, 2019 @01:24PM (#20472019)
> 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.

Sounds just like Facebook now.

Re:Building the New Twitter.com by ben_w on Thursday July 18, 2019 @03:57PM (#20473370)
Does Twitter show the same posts multiple times right next to each other? Because I’m getting a lot of that on Facebook right now. Not that I actually like either platform [1], but they are the de facto way of keeping up with everyone.

[1] I’m kinda glad Twitter doesn’t force me to have an account, no account makes it so much easier to not get sucked into the reply-rants.

Re:Building the New Twitter.com by JBiserkov on Thursday July 18, 2019 @08:14PM (#20475201)
>Sounds just like Facebook now.

Bookmark this URL: https://facebook.com/?sk=h_chr

Your newsfeed is now in "Most recent" mode.

Re:Building the New Twitter.com by chipperyman573 on Thursday July 18, 2019 @01:44PM (#20472214)
Facebook doesn't switch me back. I've been in chronological mode for ~3 years now. I think it's per-device though so you do have to set it if you login somewhere new.

There may be A/B testing going on though.

Re:Building the New Twitter.com by Fellshard on Thursday July 18, 2019 @02:22PM (#20472583)
I can say Facebook does switch this back every time I visit, and sometimes switching it to 'latest' literally causes the site to cease loading posts after one or two pages.
Re:Building the New Twitter.com by Mindwipe on Thursday July 18, 2019 @06:19PM (#20474483)
Same.
Re:Building the New Twitter.com by rurp on Thursday July 18, 2019 @02:34PM (#20472702)
They might have changed it since I left Facebook but they absolutely did change that setting back frequently in the past. My frustration with that is one of the reasons I stopped using the site.
Re:Building the New Twitter.com by Pxtl on Thursday July 18, 2019 @05:28PM (#20474086)
"A bunch of your friends are hate-following this obnoxious prick, let's show you that guy's tweets to ramp up engagement!"

Yeah I'm not a fan of the "Home" view.

Re:Building the New Twitter.com by bazzargh on Thursday July 18, 2019 @07:23PM (#20474951)
The Aria attributes can be used to block at least some of the junk, eg in ublock origin:

   twitter.com##div[aria-label="Timeline: Trending now"]
   twitter.com##aside[aria-label="Who to follow"]
   twitter.com##a[aria-label="Search and explore"]
   twitter.com##a[aria-label="Bookmarks"]
there's stuff that's no longer easy to block this way, like promoted crap in the replies to a tweet. But if that gets to be an issue, I'll just greasemonkey it. Even with obfuscated classes, the injected content is easy to identify, it's just that css doesn't let you style 'elements containing (some complicated several layers deep selector)'
Re:Building the New Twitter.com by dawnerd on Thursday July 18, 2019 @01:18PM (#20471945)
Sometimes it switched back to "Home" while you're using the app. I don't know why they're so against just letting me make the change constant. I really hate when companies think they know what I want more than I do.

ublock origin also seems to block the ads just fine at least.

Re:Building the New Twitter.com by notamy on Thursday July 18, 2019 @02:10PM (#20472461)
> 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?

I would be a little surprised if this wasn't just caused by using a library like styled-components for managing CSS. I'm sure it could also be partly anti-adblock or anti-scraping, though.

Re:Building the New Twitter.com by goatinaboat on Friday July 19, 2019 @03:32AM (#20476834)
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.

Never forget: you are the product. On whatever is the ad industry equivalent of HN, there is probably someone gloating about how much they love that it does that.

I wonder also if it’s cheaper. Computationally I mean. You don’t need to worry about consistency if you don’t care about ordering. You can also just show the same few popular tweets to everyone without needing to compute an individual timeline for each person.

Re:Building the New Twitter.com by gregknicholson on Friday July 19, 2019 @03:40AM (#20476866)
More generally, always consider: what is the maker's motive?

Is it to make the best tool for conversation, or is it to make money? If it's both, how important is each?

Re:Building the New Twitter.com by vernie on Thursday July 18, 2019 @12:47PM (#20471620)
Is it that impressive? The desktop experience looks like I'm being served the mobile site.
Re:Building the New Twitter.com by empyrical on Thursday July 18, 2019 @03:08PM (#20472991)
One thing I really hope they fix is the timeline is very jumpy when new tweets come in from the top.

The previous design was very good about keeping whatever tweet you were scrolled to in focus when new tweets come in.

I'm not sure how widespread this issue it, but I have seen other people in my personal feed express frustration with this issue.

Re:Building the New Twitter.com by SippinLean on Thursday July 18, 2019 @02:02PM (#20472385)
> Twitter now has obfuscated CSS classes for everything

Non-deterministic class names have been popular for a while, especially in React; open up Chrome inspector on a Gmail tab. Sometimes they are used for minification. This might not be a (strictly) hostile change.

It annoys me too, I write custom CSS for any site I use a lot.

Re:Building the New Twitter.com by lykr0n on Thursday July 18, 2019 @12:39PM (#20471543)
That's a feature, not a bug (the changing CSS)!
Re:Building the New Twitter.com by spaceribs on Thursday July 18, 2019 @01:31PM (#20472096)
This anti-scraping tech is getting a little ridiculous, and will only end in accessibility issues (while still not actually preventing or even slowing down scraping).
Re:Building the New Twitter.com by SippinLean on Thursday July 18, 2019 @02:06PM (#20472424)
But it is a feature, there's a few different (good) reasons to do that. Here its almost surely tied to CSS-in-JS/React.

HTML class names would not affect accessibility.

Re:Building the New Twitter.com by wpietri on Thursday July 18, 2019 @02:31PM (#20472677)
That's still not a feature, in that it's something that serves developers, not users. I'm fine with people making better CSS tools; they should feel free to add dynamically named classes. But when the remove the static ones, they break things for some users. That's definitely not a feature.
Re:Building the New Twitter.com by SippinLean on Thursday July 18, 2019 @02:53PM (#20472880)
It's a feature for developers, because it's in the code, and it doesn't break their product. It won't affect anyone but users like you and I that are developers themselves, it might break their code, but that's not Twitter's responsibility.

Non-deterministic class names are quickly becoming the norm for a lot of good reasons.

Re:Building the New Twitter.com by wpietri on Thursday July 18, 2019 @07:54PM (#20475106)
Something done for the developers is not a feature. Features are things we build for our users.

It's not always wrong to do things that are self serving at the expense of our users. But we should never confuse ourselves into thinking of that as a feature. It's always important to keep in mind who we serve.

Re:Building the New Twitter.com by munk-a on Thursday July 18, 2019 @05:31PM (#20474114)
Sorry, what are these good reasons that aren't in the realm of specifically impeding user's ability to use the site as they please? My understanding is that the sole reason for dynamic class names is to confuse user style sheets that may reformat the page (how dare they not use our beautiful UI!) or to combat tools trying to ad-block based on a CSS selector rule.

Is there some advantage other than removing these two features that dynamic CSS classes provide?

Re:Building the New Twitter.com by cbeley on Thursday July 18, 2019 @06:18PM (#20474473)
Since they are likely using CSS modules or some other type of scopped CSS, it means the classes they write are human readable, but not guaranteed to be globally unique. For example, you have FooComponent and BarComponent. Both may have a button, so as a developer, you decide to make a class called 'button' for both of those components. The tooling will then create a unique CSS class name in each of those cases and replace FooComponent.button and BarComponent.button with a hash of some sort.

The best they could do to make it less obfuscated is to include the name with the hash. So the class name may look like 'fkljdkldjf9303-button'. However, the hash may change if the component changes for example, so still not super reliable from your point of view. Also, most users won't care, so they'd just be including extra page bloat to add the human readable names along-side the hash in production builds.

I'd argue that CSS modules and similar reduce many many bugs I've seen people make over the years and that it's a huge win in terms of developer speed and reduction of bugs. I highly doubt anyone made the decision explicitly to obfuscate the CSS...

Re:Building the New Twitter.com by munk-a on Thursday July 18, 2019 @08:11PM (#20475189)
There was a prior request to actually have a scoped CSS tag in the HTML+CSS standard[1], why aren't we seeing a stronger advocation for it if that's all people are looking for? I'm a small fish but I certainly would love to see this HTML spec be revived.

[1] https://github.com/whatwg/html/issues/552

Re:Building the New Twitter.com by heyoni on Thursday July 18, 2019 @07:28PM (#20474981)
This is a terribly weak argument. Just use post or prefixes and at least you know which scope you’re working in, or combine classes.
Re:Building the New Twitter.com by thiagomgd on Thursday July 18, 2019 @05:09PM (#20473944)
I wonder if using any kind of extension/devtools to make changes to twitter, even if it's only UI, is a break on their ToS
Re:Building the New Twitter.com by ajkjk on Thursday July 18, 2019 @02:43PM (#20472803)
It's most likely not at all intended stop or affect scraping. Although I haven't looked at how obfuscated it is.

https://github.com/css-modules/css-modules or similar does this because the CSS global scope is more and more painful as applications get bigger.

Re:Building the New Twitter.com by SkyMarshal on Friday July 19, 2019 @03:29PM (#20481723)
One other thing I hate about the mobile app is that Lists are unordered (or ordered by creation date which isn't helpful). The website automatically alphabetizes lists, which is great, no idea why the mobile app can't too. For heavy Lists users it's physically painful hunting through the unordered list on the mobile app every time you want to add someone to a list.
Re:Building the New Twitter.com by skybrian on Thursday July 18, 2019 @04:40PM (#20473723)
Fortunately you can still go to realtwitter.com (which is just a redirect) and click latest. Two clicks, but it's easy to make it a habit.
Re:Building the New Twitter.com by NelsonMinar on Friday July 19, 2019 @11:40AM (#20479524)
Bad news: Twitter slammed me back into the "Home" view in less than 24 hours. Guess I'm now at war with their user interface.