612 comments

[ 4.3 ms ] story [ 433 ms ] thread
Nobody cares about people with older devices. We've shifted to a mode where companies tell their customers what they have to do, and if they don't fit the mold they are dropped. It's more profitable that way - you scale only revenue and don't have to worry about accessibility or customer service or any edge cases. That's what big tech has gotten for us.
You’re getting downvoted but I think despite the tone you are correct. 10 years ago corporate guidance on web dev was backwards compatibility going back several versions. Now it’s hardly any concern for anything more than 6 months old.

More than anything I think it’s because corporate IT has had to modernize due to security. Security now wants you to update constantly instead of running old vetted software. You also cannot demand user use an old version of a browser that still supports some old plugin. And as a vendor it’s not profitable to support people who maintain that mindset.

Also “update to the latest version” is the new “turn it off and back on again,” when it comes to basic IT help.

Part of it was that users were terrible at updating browsers. You needed to support Internet Explorer 6, or cut off a third of your customers. It sucked.

Now every browser gets updates, automatically and aggressively. The only real outlier is Safari, but even that updates way quicker than older browsers used to.

As a result, who needs backward compatibility?

Without all the compatibility shims, it means that you can drop coat bloat sooner when the JS gets replaced with a native browser capability.
Because the people with money who are buying your products are all running the latest version of iOS. The ones on a 6 year old Android version are not spending anything therefor it isn't worth investing money in making sure it works for them.
Who is this mythical end-user with an old browser? Because they don’t show up in browser usage statistics.

https://gs.statcounter.com/browser-version-market-share

Chrome is evergreen, even on Android. Safari, after a bit of a fallow period, is updated fairly aggressively, and though it’s still coupled with OS updates, it’s no longer married to the annual x.0 releases.

Mind you, I still believe, and practice, you should write semantic HTML with progressive enhancement. But at the same time, I absolutely do not think you should go out of your way to test for some ancient version of Safari running on a first-generation iPad Pro—use basic webdev best practices, and don’t spend time worrying that container queries aren’t going to work for that sliver of the market.

Exactly. The landscape has changed because those old browser users have been forced to update.
Most people auto update their software or they don’t at all. What they don’t do is buy a brand new laptop as soon as it’s out. And the one they have is a cheap one from HP or Dell. To know their pain, try to use one of these.
Browsers may be self-updating but hardware is not. You can't just download more RAM or a faster CPU.
I've got an iPad Air 2 running iOS 15.8. My user agent will surely tell you I'm only one or two major versions behind the "latest and greatest" but the hardware itself is a different story. On this device modern GitHub consistently crashes when displaying more than a few hundred lines of code. I've lost the ability to use a perfectly functioning device due to bloatware.
Clues that a market is not competitive...

What most impresses me is that this happen on many markets that should be competitive by any sane rationale. Like group buying or hotel booking. Yet, they also do that kind of shit, and people still have nowhere to go.

The world economy became integrated and incredibly rigid.

I'm normally a fan of Dan Luu's posts but I felt this one missed the mark. The LCP/CPU table is a good one, but from there the article turns into a bit on armchair psychology. From some random comments coming from Discourse's founder, readers are asked to build up an idea of what attitudes software engineers supposedly have. Even Knuth gets dragged into the mud based on comments he made about single vs multi-core performance and comments about the Itanium (which is a long standing point of academic contention.)

This article just felt too soft, too couched in internet fights, to really stand up.

> readers are asked to build up an idea of what attitudes software engineers supposedly have.

But they do, don't they. Discourse's founder's words are just very illustrative. Have you used the web recently? I have. It's bloated beyond any imagination to the point that Google now says that 2.4 seconds to Largest Contentful Paint is fast now: https://blog.chromium.org/2020/05/the-science-behind-web-vit... (this is from 4 years ago, it's probably worse now).

You don't have to go far to see either Youtube loading 2.5 megabytes of CSS on desktop to the founder of Vercel boasting its super fast sites that take 20 seconds to load the moment you throttle it just a tiny bit: https://x.com/dmitriid/status/1735338533303259571

You're making the same mistake the post did. It depends on the reader already having sympathy for the idea that bloat is bad in order to make its case. I can read nerd site comments all day that lament bloat. For an article to stand on its own on this point it has to make the case to people who don't already believe this.

Dan's articles have usually been very good at that. The keyboard latency one for example makes few assumptions and mostly relies on data to tell its story. My point is that this article is different. It's an elevated rant. It relies on an audience that already agrees to land its point, hence my criticism that it's too couched in internet fights.

State your case that bloat is good. I currently have a client who will do literally anything except delete a single javascript library so I'd like to understand them better.
The latest version of Excel loads faster on my laptop than most websites do. I’ve timed this.

I can load the entire MS Office suite and open a Visual Studio 2022 project in less time then it takes to open a blank Jira web form.

What’s your point?

My point is to reply to "State your case that bloat is good" with a famous blog stating a case that bloat is good. Bloat makes the company more money by allowing them to develop and ship faster, bloat makes the company more money by being able to offer more features to more customers (including the advertisers and marketers and etc. side of things), and - well, read the article.

I, too, dislike slow websites and web apps, but I don't think they are some mystery - natural selection isn't selecting for idiot developers, market selection is selecting for tickbox features and with first-mover-advantage they are selecting against "fast but not available for another year and has fewer features and cost more to develop".

Due to prevalence of native apps in the macOS world, the difference are often stark. I use Things and Bear, and it’s fast, then try to load gmail (dump account, so it’s not in Mail) and it’s so slow. Youtube too. Fastmail, in comparison, loads like it’s on localhost.

You block JavaScript and the amount of sites that is broken is ridiculous, some you would not expect (websites, not fullblown interactive apps).

The web doesn't scale like desktops - not even close.

Furthermore - this philosophy has made Windows worse and less responsive in all cases.

I understand that this "pays the bills" but my charge is (currently) to make things faster so I am against slowness.

That was 2001.

Core frequencies aren't going up at 2001 rates anymore. (And although Moore's law has continued, it is only just. Core freqs have all but topped out, it feels like.) Memory prices seem to have stalled, and even non-volatile storage feels like it's stalled.

My computer in 1998, compared to it's predecessor, storage was going up in size at ~43% YoY. It was an amazing time to be alive; the 128 MiB thumbdrive I bought the next decade is laughable now, but it was an upgrade from a 1.44 "MB" diskette. Today, I'm not sure I'd put more storage in a new machine than what I put in a 2011 build. E.g., 1 TiB seems to be ~$50; cheaper, yet. Using the late 90s growth rates, it should be 17 TiB… so even though it's about half the price, we can see we've fallen off the curve.

> "And although Moore's law has continued, it is only just."

https://en.wikipedia.org/wiki/Transistor_count has a table of transistor count over time. 2001 was Intel Pentium III with 45 million transistors and nVidia NV2A GPU with 60 million. 2023 has Apple M2 Ultra with 134 billion transistors and AMD Instinct CPU with 146 billion, and AMD Aqua Vanjaram CDNA3 GPU with 153 billion. That's some ~3,000x more, about a doubling every two years.

Core frequencies aren't going up, but amount of work per clock cycle is - SIMD instructions are up, memory access and peripheral access bandwidth is up, cache sizes are up, branch predictors are better, multi-core is better.

> "E.g., 1 TiB seems to be ~$50"

You can get a 12TB HDD from NewEgg for $99.99, Joel's blog said $0.0071 per megabyte and this is $0.0000083 per megabyte, ten thousand times cheaper in 23 years. Even after switching to more expensive SSDs 1TB for $50 is $0.00005 per megabyte, a hundred times cheaper than Joel mentioned - and that switch to SSDs likely reduced the investment in HDD tech. And as you say "I'm not sure I'd put more storage in a new machine than what I put in a 2011 build" few people need more storage unless they are video or gaming enthusiasts, or companies.

> has a table of transistor count over time

My comment explicitly notes this, and that I am not debating that transistor counts have continued to follow Moore's Law. They have. That's not the point.

> Core frequencies aren't going up, but amount of work per clock cycle is

[Citation needed]; this absolutely doesn't match my experience at all.

> You can get a 12TB HDD from NewEgg for $99.99

I looked at NewEgg specifically before I made that comment. (But for the pricing for 1 TiB, as that was comparable.) 12 TiB runs $250–400, with the absolute lowest priced¹ 12 TiB (internal desktop form factor) HDD being $201. So no, you cannot.

¹and the "features" of this "12 TB" HDD include "14TB per drive for 40% more petabytes per rack" (wat) "Highest 14TB hard drive performance" (wat)

The reason we have bloat is it's easier to satisfy stakeholders if you don't give a damn. There's really no reason to discuss this at all once you realize this.

But of course, ranting and reading rants is satisfying in its own right. What's the problem?

The article you diss has actual benchmarks in it. The article I linked has actual numbers in it.

At this point you're willingly ignoring it because you dislike that this is additionally illustrated by quotes from specific people.

I think the article makes a pretty good case for bloat being bad for low-end users actually. His analysis demonstrates how many websites become genuinely unusable on cheaper devices, not just to techie standards, but for anyone trying to actually interact with the page at all.
Usually the directive "don't worry about bloat" comes from above, or outside, the software engineering team. I'm a software engineer and I would love to fix performance problems so that everything runs Amiga smooth. But that takes time and effort to find, analyze, and fix performance issues... and once The Business sees something in more or less working order, implementing the next feature takes priority over removing bloat. "Premature optimization is the root of all evil" and that. I know that's not what Knuth meant, he meant don't be penny-wise and pound-foolish when you do optimize. But much like "GO TO considered harmful", something approaching the stupidest possible interpretation of the maxim has become the canonical interpretation.

And that's before getting into when The Business wants that sweet, sweet analytics data, or those sweet, sweet ad dollars.

> what attitudes software engineers supposedly have

I don’t think I’ve ever seen a company take performance seriously. No one scoffs when a simple API service for frontend has 500ms response time! How many engineers even know or care how much their cloud bill is?

I'm sure Google invests a lot of resources in making Google Search load fast. AFAIK they serve a specialized version for each user agent out there.
One the best counter examples to the rule. I tried running Lighthouse on a few Google services that are less prominent and had a few good laughs.
> ...which is a long standing point of academic contention.

What contention? If anything, Luu is being rather generous–Knuth was just whining that the decades-long free lunch program was being cancelled.

VLIW (Itanium is a VLIW arch) is what's contentious, not multiprocessing.
(comment deleted)
OK I missed that. Thanks. But it looks like Itanium was only tangential to this discussion, in that Knuth thinks multicore programming may be an even worse mistake than Itanium.
I thought he summarised it pretty well. Jeff Atwood was only picked as example. But there are LOTS of high profile, huge followers web developments thought leaders constantly pump out similar views. And a lot of their followers just blindly accept what they were told.
Knuth is kinda right imo - parallelism as we have it now is unused by 90% of software outside of specialist use cases and running the same single-threaded program on multiple data items.

Programming languages and hardware both offer poor support for fine-grained parallelism and it's very hard to speed up classical software using parallel approaches.

This felt more true a decade ago but there’s been a lot of improvement in both languages (e.g. Rust) and libraries - I routinely see most of the cores on my Macs fully loaded for things like working with media files which used to be single-threaded.
Languages are getting there but based on how much heartburn Rust's async causes, I still find it to be a very hard problem to give programmers a real multicore abstraction. And it starts from the ground up with operating systems designed around single core ideas.

When I first read about the multi core vs single core debate in college, I thought it was silly and that multi core would be just fine. But over the years I've developed a more nuanced view. The average user is mostly doing things that involve IO, so that makes multi core useful in that you can use multiple cores to wait for IO, but for actual computation single core performance continues to be the bottleneck.

async isn’t the only option: threading scales well and is often much easier to write and make production-ready (e.g. reasoning about peak memory usage can be hard in an async model).
I only recently moved from a 6-year old LG flagship phone to a shiny new Galaxy, and the performance difference is staggering. It shouldn't be - that was a very high-end phone at release, it's not that old, and it still works like new. I know it's not just my phone, because the Galaxy S9s I use to test code have the same struggles.

I would like to have seen Amazon in the tests. IME Amazon's website is among the absolute worst of the worst on mobile devices more than ~4 years old. Amazon was the only site I accessed regularly that bordered on unusable, even with relatively recent high-end mobile hardware.

I have noticed with two 7 year old Snapdragon 835 devices that RAM and running a recent Android version makes a huge difference.

I daily drive a OnePlus 5 running Android 14 through LineageOS and the user experience for non-gaming tasks is perfectly adequate. This phone has 6GB of ram, so it's still on par with most mid-range phones nowadays. My only gripe is that I had to replace the battery and disassembling phones is a pain.

Meanwhile a Galaxy S8 with the same SoC, 4GB of memory and stock Android 9 with Samsung's modifications chugs like there's no tomorrow.

I can understand that having two more gigabytes of memory can make a difference but there is a night and day difference between the phones. Perhaps Android 14 has way better memory management than Android 9? Or Samsung's slow and bloated software is hampering this device?

Either way it's irritating to see that many companies don't test on old/low-end devices. Most people in the world aren't running modern flagships, especially if they target a world-wide audience.

This is what I miss from the removal of serviceable components on MacBooks. Was a time I would buy the fastest processor and just okay memory and disk, then the first time I got a twinge of jealousy about the new machines, buy the most Corsair memory that they would guarantee would work, and a bigger faster drive. Boom, another 18 months of useful lifetime.
Is the total useful lifetime more than MacBooks with non serviceable components? I see people around me easily using Airs for 5+ years.
My MacBook Air (11-inch, Early 2014) is my only computer. I still don't feel like changing it so far...
i have an Air from 2011 or 2012 that is out of storage with just the OS installed. I can't update or install any other software because the most recent update installed on it capped out the storage. Low-end windows laptops (the $150-$300 at walmart type) have this same issue. 32GB of storage and windows takes 80% of the space, and you can no longer fit a windows update on it.

I still have the air with whatever the macos is, but as soon as i have a minute i'm going to try and get linux or BSD on it. I'm still sore at how little use i got out of that machine - and i got it "open box" "scratch and dent", so it was around $500 with tax. I got triple the usage out of a 2009ish eeePC (netbook)

You could try ChromeOS Flex on it?
Amateur… I am using a 2009 15’ MacBook Pro Unibody, with a swapped SuperDrive to SSD, another main SSD and RAM boosted to 8Gb. OpenCore Legacy to update to a relatively recent version of MacOS. The only thing that is so annoying is the webcam that doesn’t work anymore, and a USB port is dead also.

So sad this kind of shenanigans are not possible anymore.

Pfah, showoff. My 2005 Thinkpad T42p crawls circles around that thing - slowly. Maxed out to 2GB, Intel 120GB SSD with a PATA->SATA adapter (just fits if you remove some useless bits from the lid) and - what keeps this machine around - a glorious keyboard and 1600x1200 display. It even gets several hours on the battery so what more could you want?
Mmh… I see that we definitely have people of good taste around here.
I have one of these with a MacBook Pro 6,2 that I did the same upgrades to. However I finally decided to retire it when 2nd replacement battery swelled and Chrome stopped supporting OSX 13.

It didn't look like a good candidate for OpenCore Legacy because of the dual video cards, but it feels so gross recycling a perfectly working computer.

I run the one from 2011 (16 Gb of ram though) and it runs highly minimalistic Arch Linux. So far so good.
My air isnt that old, and I'm eyeing a new one...

I find that a lot of my work is "remote" at this point. Im doing most things on Servers, VM's, and containers on other boxes. The few apps that I do run locally are suffering (browser being the big offender).

Is most of what you're doing remote? Do you have a decent amount of ram in that air?

no, most of the work i do is local, but it's fairly easy stuff, some statistical software, excel, word, browser. And my browser is not suffering that much, perhaps because i have 8GB of ram, and i visit simple websites. Using an adblocker is fundamental tho.
The main thing that convinced me to get on the ARM macs is the heat and battery life(which kind of go together). It's never uncomfortable on the lap.
I’ve been a Mac user since 2003 or so and I can confidently say my machines last 6-7 years as daily drivers then sunset over 2-3 years when I get a new computer. I always go tower, laptop, tower, laptop. They have a nice overlap for a few years that serves me well.
Yes, but that's the slow-boiled frog syndrome. I use my computers for years as well, and whenever I get a new one I think "wow, why didn't I switch sooner, this is so much snappier".
As a counterpoint, I have a 2015 MacBook, a 2015 iMac, and a recent Apple Silicon MacBook. Of course I do Photoshop, Lightroom, Generative AI, etc. on the Apple Silicon system. But I basically don't care which system I browse the web with and, in fact, the iMac is my usual for video calls and a great deal of my web document creation and the like.

I suspect that people who have somewhat older Macs (obviously there's some limit) who find their web browsing intolerably slow probably have something else going on with either their install or their network.

>I do Generative AI,

This makes me call into question literally everything else in your post.

You might be able to do CPU based for a few trials for fun, but you arent running LLMs on CPU on a daily basis.

I do some local image generation now and then (mostly using Photoshop). Are you happy now? My only point was that any CPU/GPU-intensive applications I run (and really most local applications) I do on my newish computer. But most stuff I run is in a browser.

The relatively little LLM use I do is in a browser and it doesn't matter which computer I'm doing it on.

Controversial counterpoint: Having standardised hardware causes optimisation.

What do I mean?

In game development, people often argue that game consoles hold back PC games. This is true to a point, because more time is spent optimising at the cost of features, but also optimising for consoles means PC players are reaping the benefits of a baseline decent performance even on low end hardware.

Right now I am developing a game for PC and my dev team are happy to set system requirements at an 11th generation i7 and a 40-series (4070 or higher) graphics card. Obviously that makes our target demographic very narrow but from their perspective the game runs: so why would I be upset?

For over a decade memory was so cheap that most people ended up maxing out their systems, the result is that every program is electron.

For the last 10 years memory started to be constrained and suddenly a lot of electron became less shitty (its still shitty) and memory requirements were something that you could tell at least some companies started working to reduce (or at least not increase).

Now we get faster CPUs, the constraint is gone, and since the M-series chips came out I am certain that software that used to be useful on intel macs is becoming slower and slower. Especially the electron stuff which seems to especially perform well on M-chips

I don't think the RAM is the difference-maker. The old LG phone in question is a V35, which has 6GB and a Snapdragon 845.
I want to research this route more but the camera is an important component to me. I suspect their is a model of phone from 5-10 years ago that has a an under-the-radar stellar camera and I would find "perfectly adequate". ("perfectly adequate" is my favored state for most tech solutions.)
Yeah the camera is the only feature that would really make me want to switch phones. In my case it's more about being a broke CS student without a job lol.

But the low-end device thing still stands. At least here in Argentina where I live most people can't buy a $1000+ phone without going into debt or saving money for a stupid amount of time to get it. Some people that really can't afford to do so still buy them though. Maybe it is reasonable for some but I never saw any appeal in spending so much money (comparatively to a monthly salary) on a non necessity. I happily spent that kind of money on a PC to use for work/study, but a phone? Nah.

Same! The camera is the only part of the phone I want to spend real money on.

Beyond personal preferences, I live and work in an area of California where people could greatly benefit from easily accessible phones so I'm interested in what's possible.

Interesting that you have such problems with Amazon. I‘m using an iPhone XR (5,5 years old) and don’t have any problems using Amazon in the browser (Safari). And I’m on the latest iOS (17.4).
OS version may have an impact. The Galaxy S9s both run Android 9. That LG phone is stuck on Android 8 because AT&T sucks and never got around to updating their shitware-riddled Android fork. If they had, I wouldn't have needed to spend spend $800 on a new phone. I'm not bitter about it at all, though.
iPhone browser performance has run circles around android browser performance on equivalent hardware for like the last 10 years or so. It’s really the secret sauce of iOS.
Yeah, by the way browsing on iPhone 6S Plus is quite okay, compared to even MacBook Pro (2011, but that’s a laptop!), I would say.
iPhone has exceptional long lasting performance. I have a 5 year old iPhone and it still runs smooth like silk.
I have no issues with Amazon on my iPhone 8 running latest iOS 16
Did you try disabling JavaScript on Amazon? It actually doesn't function too badly. I know, I know, you shouldn't need to do it and I agree.
I fiddled with NoScript but I must have done something wrong because I broke the site entirely.
I recently visited Brazil and had my shiny new phone snatched from my hand ... now with my spare 4 years old phone, frankly dont see any difference. But I use Firefox with all the ad blockers, maybe that helps.
I run Firefox with uBO and NoScript. Based on the other replies, OS version may play a role.
I have a Palm Phone. I generally consider web browsing to be almost impossible no it at this point lol
Are you able to change the DNS on it to NextDNS or LibreDNS: https://libredns.gr/

Blocking ads and trackers might help you to browse the web.

I block ads with uBlock Origin in mobile Firefox. I can use simple sites like hacker news, and I can actually use old.reddit.com if I'm willing to zoom in and out a bunch.

The Palm Phone lags with just about everything honestly, but I like the form factor of having a phone the size of a credit card. But since software only gets slower, most of the web is just beyond it at this point.

As someone with recent experience using a relatively slow Android phone, it can be absolutely brutal to load some web pages, even ones that only appear to be serving text and images (and a load of trackers/ads presumably). The network is never the bottleneck here.

This problem is compounded by several factors. One is that older/slower phones cannot always use fully-featured browsers such as Firefox for mobile. The app is takes too many resources on its own before even opening up a website. That means turning to a pared-down browser like Firefox Focus, which is ok except for not being able to have extensions. That means no ublock origin, which of course makes the web an even worse experience.

Another issue is that some sites will complain if you are not using a "standard" browser and the site will become unusable for that reason alone.

In these situations, companies frequently try to force an app down your throat instead. And who knows how much space that will take up on a space-limited device or how poorly it will run.

Many companies/sites used to have simplified versions to account for slower devices/connections, but in my experience these are becoming phased out and harder to find. I imagine it's much harder to serve ads and operate a full tracking network to/from every social media company without all the javascript bloat.

> That means no ublock origin

Talk about a catch-22 situation. The modern web is useless without adblocking. Especially when you get forever scrolling pages with random ads stuffed in there.

As a web developing illiterate, I wonder how hard would be writing a browser extension that loads a page, does infinite scroll in memory and in background, then while it is still loading the infinite stuff, splits the content in pages and shows them instead, so that the user can go back and forth to page numbers. This wouldn't reduce the network and system load, however navigating the results would be much more friendly.
It'll give a nicer experience and will eliminate situation where an element changes location just as you try to tap on it.

The extension just needs to handle GDPR notice and Email subscription overlays.

Problem is, "infinite scroll" often is infinite, meaning it will load an ass load of data in the background and take up a ton of memory, and the user may never even end up looking at that data.

I really hate the load on scroll (especially Google Drive's implementation which is absolute trash, and half the time I'll scroll too fast and it will just miss a bunch of files and I'll have to refresh the page and try again), but a better hack might be an extension that scrolls a page or two ahead for you and stores that in memory. If it was smart enough to infinitely scroll websites that are actually finite (like google drive) that would be amazing though.

In these situations what’s eating up your resources usually isn’t the data being represented but instead the representation.

This is why native apps use recycler views for not just infinite scroll, but anything that can display more rows/columns/items/etc than can fit on screen at once. Recycler views only create just enough cells to fill the screen even if you have tens of thousands of items to represent, and when you scroll they reuse these cells to display the currently relevant segment of data. When used correctly by developers, these are very lightweight and allow 60FPS scrolling of very large lists even on very weak devices.

These are possible to implement in JavaScript in browsers, but implementation quality varies a lot and many web devs just never bother. This is why I think HTML should gain a native recycler widget of its own, because the engineers working on Blink, Gecko, and WebKit are in much better positions to write high quality optimized implementations, plus even if web devs don’t use it directly, many frameworks will.

I find this idea interesting ‘These are possible in JavaScript in browsers, but implementation quality varies a lot and many web devs just never bother.’

Do you have any examples that you consider good implementations? I ask because tables seem to be the biggest offenders of slow components in say Angular / PrimeNG. I am going to a legacy app soon that is being updated (Angular but not PrimeNG). Would like to see if we can build a feature rich table that is more performant than the PrimeNG one that I know looks amazing but is the cause of many headaches.

NOTE: its not Angular or PrimeNG specifically that make the tables slow/hogs, but the amount of DOM elements inside and some of the implementation details that I disagree with (functions that are called withing the HTML being evaluated every tick). Would be great to see if this idea of a ‘recycler widget’ can help us. Cheers.

> its not Angular or PrimeNG specifically that make the tables slow/hogs, but the amount of DOM elements inside

Yep, this happens even with nothing but a 10-line vanilla JS file that adds N more items every time the user scrolls to the bottom of the page. Performance degradation increases with every load due to the growing number of DOM elements which eventually exceeds whatever margin is afforded by the machine the browser is running on, causing chug.

Web is not my specialty so I don’t have specific recommendations, but plenty of results turn up when searching for e.g. “angular recycler” or “react recycler”.

We do this at Fastmail and, if I say so myself, our implementation is pretty damn good. We’ve had this for over a decade, so it was originally built for much lower powered devices.
These suck donkey balls because they break searching for keywords on the page.
Which is another reason why an HTML-native recycler is desirable. The browser could be easily avoid this is issue if it were the one to implement the recycler, rather than it being a third-party bolt-on.
> Problem is, "infinite scroll" often is infinite, meaning it will load an ass load of data in the background and take up a ton of memory, and the user may never even end up looking at that data.

It's also an infinitely worse user experience and prevents you from holding your place in whatever is being scrolled. Are there advantages? Why is infinite scroll used in any context?

1 batch of content = 1 batch of add space = more money.

Each next page click is a moment for you to reflect and notice the waste of time. Simple as that.

Personally I prefer infinite scroll, versus the alternative of finding the "next page" button at the bottom, waiting for the content to load (preloading could help here) and sometimes navigating to the beginning of actual beginning of the content I was viewing. I even used a browser extension that matched "next" buttons from pages and loaded the next page content automatically, but the extension (can't recall its name) is not available anymore.

Granted there are some downsides, such as having the browser keep extra-long pages in its memory, but overall I prefer working infinite scroll mechanisms over paged ones. As far as I see, the ability to remember the current location in the page could be easily implemented by modifying page anchor and parameters accordingly, though personally I've rarely needed it.

Perhaps if there was a standard way (so in the HTML spec) to implement infinite scrolling, it would work correctly in all cases and possibly even allow user to select a paged variant according to their preference.

Not all the paged views work correctly either. In particular systems that show threaded discussions can behave strangely when you select the next page. Worst offender is Slashdot.

Infinite scrolling, at least in most implementations, makes it almost impossible to find historic content. This could be useful e.g. to journalists and researchers, but even as a private individual I would sometimes love to be able to see what person XY posted in, say, 2019.

In other words, infinite scrolling works in "pure consumption" contexts. You'd never want to add infinite scrolling to some backoffice admin interface.

You don’t actually need to load everything, just the previous, current, and next pages.
I just choose not to use it. if I follow a link and there is an ad per paragraph and video starts playing I close the tab. it's rare the page I was about to look at was actually important
I use ublock origin, and on literally more than one occasion (insert doofenshmirtz nickel quote) I've found a site that I quite like, think it's awesome to the point I actually write to the people who create it with suggestions, and then for whatever reason happen to load it without blockers and discover it's halfway useless with all the ads on it.

I fully support people being able to make some money off the useful things they build on the internet, whether it's some random person who built a thing, or the New York Times or even FB or Google, but there has to be a better local maximum than online advertising.

    > (insert doofenshmirtz nickel quote)
I had to Google for it: IMDB.com has the quote:

    > Dr. Heinz Doofenshmirtz : Wow, if I had a nickel for every time I was doomed by a puppet, I'd have two nickels - which isn't a lot, but it's weird that it happened twice.
<hat tip>
I thought about including the whole thing, but then I decided that doofenshmirtz being as google-able as it is, anyone who was curious could easily find it.
lowering the barrier to entry as to no overtax curiosity seems sensible in this crowd
Can you run all your traffic through a self-hosted pihole to avoid such things?
Having a decent internet experience shouldn't require going through your own self-hosted server.
Absolutely not but then I never thought I’d need a 20,000 entry hosts file either.
Certainly an option for me. But not a scalable solution for the large number of non-tech people with older devices.
I’d love something like it for all my older devices where I can set it and forget it.
NextDNS is pretty good for this - just change the DNS in your network settings.
You'll also need to add bundles to block dns names ( free fyi)
Wasn’t there an old browser that would render the page on the server and just send down the result or something like that?
The old Opera for mobile did that. I think Chrome had something similar at one point.
You're already too rich and too tech aware to qualify as the low end described in the article if you ask that question :)
Maybe so but I also test things in a variety of browsers and devices frequently to try and avoid the problems described in the article.
That's great.

But you just assumed that someone who uses these low end devices has heard of a raspberry pi, can afford one and even has wired internet to plug it into.

I was responding to someone with a recent example of a slower Android phone. I know many Linux and Android users who already have Raspberry Pi’s and similar devices they could use to set up a pihole. People who go down the “fully free” Linux path or even are using more experimental hardware have the same issues.

Pihole can (I assume) also work on WiFi too.

I've got an old MacBook Pro from 2013 that I still keep around because the keyboard is the best Apple ever made. It's not fast by any means, but I haven't encountered any difficulty with websites whatsoever. They're not as snappy as I'd expect on new hardware, but perfectly usable. I do use uBlock Origin, however.

Are these Androids actually less powerful than an 11 year-old, base-spec MacBook?

> Are these Androids actually less powerful than an 11 year-old, base-spec MacBook?

Yes. Definitely. a Macbook Pro from 2013 has between 4-16GB of memory for one thing. The lowest spec phone in the article (Itel P32) has 1GB. A 2013 Macbook Pro has a 4th gen i5 processor. This phone has a MediaTek MT6580. It's not even in the same ballpark.

This is a bit of an extreme example, but the fact is that a very large number of people in many areas of the world use phones like these.

Additionally, weak Android devices are not necessarily old Android devices. New underpowered Android stuff is sold every day. Cheap tablets are particularly bad about this — I have a Lenovo tablet that I bought maybe a year ago which uses a SoC that benches a bit above a 2015 Apple A9.
$50 android phones are still sold in developing countries and they usually have an MT6580 or UMS312 with 720p screen.
I was forced to use an old 2011 (IIRC) MacBook Air in 2020 (my replacement BTO MacBook Pro was stuck in China due to the pandemic), and the OS and local apps were fine and reasonably snappy, but oh boy, the web sucked so bad. Slow slow slow. Couldn't open more than 3 or 4 tabs of "modern" websites (HN was fine, yay). Virtually unusable. I was shocked.
I wrote code to main nokia.com site 10 years ago where it used few ways to detect slow loading of resources and set a flag to disable extra features from the site. This was done because the site had to work in every country and many of the slowest phones sold were from said company.
I also worked for Nokia 13 or so years ago, though not on Nokia.com

Thanks for your work, one of the things that I really liked about Nokia was the passion for performance.

On the flip side: I was on the Meego project and we joked that we had the most expensive clock application ever created, because it kept being completely recreated.

I liked Meego and Maemo, I always felt that they were an expression of the idea that general purpose computing can work in the mobile form factor, which is something that tremendously appeals to me (I wish I still had my N900).
> In these situations, companies frequently try to force an app down your throat instead. And who knows how much space that will take up on a space-limited device or how poorly it will run.

And honestly, that app is going to be a browser shell with a (partially) offline copy of the website in it, 9 times out of 10...

> that app is going to be a browser shell with a (partially) offline copy of the website in it, 9 times out of 10

If you're lucky. The main UI may just be a website, but as a native app is has a greater ability to spam you, track you, accidentally introduce security vulnerabilities, etc.

Even if you do use a standard browser, companies will force you to use an app by making there website broken (on purpose?).

Random recent example: Nike. Popping useless errors upon checkout in the webshop. Support: "oh, we're so sorry, just try the app, k bye".

Another example of major companies with broken websites more often than not: (European) airline booking websites.

And major companies think this is totally fine and doesn't damage their brand? I mean not being able to create a functioning website with unlimited funds in 2024 is not a bad look?!

Reddit is another example where they've broken the mobile browser experience, to send you to another app. Arguably broken, but in different ways.
LinkedIn, leaders in deceptive design (though given recent HN on internal situation, a more favorable interpretation may be that they can't handle their own bloat and it shows).
> LinkedIn, leaders in deceptive design

Oh, absolutely. One example: You want to connect with someone, and it'll throw up a dialog box on whether you want to add a note, with two buttons "Add Note", "Send". If you now decide that you don't want to connect after all, or want to look up something before composing the note, and close the dialog instead - it still sends the connection request.

[flagged]
But then you get the desktop version of the site. Never mind that Reddit has a mobile-friendly version (whose design Reddit has kept on bungling too).
The i.reddit mobile site sadly seems to have stopped working. At least for me.
try adding .i to the end of the url.
The desktop version is still much more usable on mobile than the "mobile-friendly" version.
I can show some forgiveness to airlines, because they simply outsource it to some agency somewhere.

But I have zero sympathy for giants, like Slack. If I do a "Request the Desktop Site", then it suddenly works(albeit with lot of scrolling) on my Firefox(iOS), but if I disable the "Request the Desktop Site", then it blocks everything and forces me to download the app from AppStore.

Sadly, the downloaded app looks like an optimized mobile version of the site.

That seems backwards to me. Airlines are far more important than Slack, which is why they are regulated and Slack is not. They deserve no forgiveness for denying you service if you use an ad blocker, making you jump through ridiculous hoops to get a good recaptcha score, rejecting transactions so you have to re-buy a at higher price, or any other kind of easily fixable accessibility offence.
My response, "why should I trust you with greater access to my phone when you can't make your website work? How do I know you aren't bundling malware? Considering you are obviously using unqualified developers."
"Another issue is that some sites will complain if you are not using a "standard" browser and the site will become unusable for that reason alone."

This is where the blog post falls short. It assumes the software someone uses to access these websites is a constant, chosen from a small selection of browsers controlled by companies that seek to profit from proliferation of online advertising. The software used is not a variable in this "study".

Most of the sites on the list presented, namely the ones where we are just reading, listening or watching (cf. performing some commercial transaction), can be accessed using software not controlled by so-called "tech" companies on older hardware even with today's bloat and the experience will be faster than if trying to use the bloated software from so-called "tech" companies. (That software comprises both the browser and the gratuitous Javascript software that these browsers will run automatically without any input or choice from the user.)

(comment deleted)
Since 2000, I've observed the internet shift from free sharing of information to aggressive monetization of every piece of knowledge. So I suspect that is the culprit. If you use the mobile web on the latest iPhone you'll find its unusable without an ad-blocker.
Hm, not entirely true, depending on what you mean with "the internet shifting".

The internet has grown, and the free sharing is still going strong. Have a look at Wikipedia, Hacker News, Arxiv.org.

To be honest, the stuff that was shared freely in 2000 was not all that great, and most of that which was, is still available. Remember that you had to buy a subscription to Encyclopaedia Britannica back then, and to all the academic journals.

Granted, there are some non-free information silos, but generally I'm pretty happy with the procrastination advice on Reddit being surrounded by annoying ads that drive me away.

Google "Roche Ff7 rebirth". I was curious who this character is. In 2000-2012 all the top links would be amazing fan sites and forums describing, discussing, and detailing the character with rich info.

Now it's all AI seo spam LADEN with data mining and ad boat on monolithic sites like Fandom they barely work on the newest iphone.

And Britannica wasn’t filled with highly moderated propaganda.

Wikipedia is a failed experiment.

Wikipedia is great, it's just not as good as it could be
the tragedy of the commons
(comment deleted)
Perhaps these people are better off by running a web browser on a remote machine and interfacing with it over VNC.
Who's going to pay for that server? We're talking about $50-100 phones here.
This is trolling, right?

Lemme just give my grandma a list of instructions for doing this so she can get to Facebook. I'll let you know how it works out.

Obviously you'd want to productize it (see WebTV, Mighty browser).
webdevs and their managers should use these web "apps" on bad machine over VNC on a slow connection for a few months. these javascript hellpages are basically crime against humanity and do contribute a lot to e-waste, pollution and carbon dioxide emissions
It’s not just slow devices, it’s also any time you have any kind of weak connectivity.

I think every OS now has tools to let you simulate shitty network performance these days so it’s inexcusable that so many sites and even native apps fail so badly anytime you have anything less than a mbit connection or greater than 50ms latency :-/

It’s not just weak connectivity. I know people in rural areas who still have less than 1 Mbps internet speed over their DSL landline. Using the internet there isn’t a lot of fun.
Which is absurd when you think that the internet used to be usable on 14.4k modems.

I remember having to plan to take up hours of time on our phone line to download giant files that were smaller than many basic webpages these days (ignoring things like photos where there's obviously a basic size/quality tradeoff + more pixels)

Yes, 1 Mbps was actually high-speed internet 25 years ago.
When i first moved to where i live now DSL had a waitlist, so i tried both a verizon hotspot (myfi!) and dialup. Dialup with HTML gmail (for slow connections!) took minutes to load. IRC was completely usable, but hangouts was not. danluu's website would have loaded just fine, as an example. I just remembered that after getting DSL if more than one person decided to watch a youtube video the pings went up in the 1000ms range.
How web bloat impacts users: negatively. Better do your best to fix it.

This stuff is simpler than we let it be sometimes, folks.

> This stuff is simpler than we let it be sometimes, folks.

Meanwhile watches a team build a cathedral when all they needed was a shack.

Why not to build a cathedral if someone else is paying?

I've never seen companies where developers are rewarded for performance improvement or any kind of improvement. Did an improvement? Nice! Good job! And that's it.

The point is, you build a shack so you can build a cathedral where it’s warranted. If you are stuck maintaining a cathedral you can’t move on to bigger better things.
Yep, you build a shack and charge the users the price of a starbucks latte per month because "it's just a starbucks latte".

Then you wonder why the solo founder saas has no customers.

I'm not sure what you're talking about; but what I was trying to say is I tend to see teams get charged with building X (which should be a cathedral), but then build a cathedral of configuration parsing, and a cathedral of CRUD; instead of focusing on X.
I like my job security large, ornate and full of stained glass.
Here is how you do web: https://forum.dlang.org/ Observe the speed
Or HN. All that talk about "brutalist web design" yet most websites are more bloated than ever...
'Brutalist web design' is a pretty small niche though, no? It's the kind of thing Hacker News readers will have heard of, but I don't think it was ever close to mainstream.
Ironically the modern web, built by programmers, is scorned by programmers. You all collectively, persistently, shamelessly decided AngularReactNodeWebpackViteBloat 200mb asynchronous hellspawn websites needed to be made this way.

When all this time, lightweight CSS and anchor links and some PHP was all we needed.

This loads faster than native apps serving local content on my device.
For me, it took an estimated 3-5s to load on first visit. Fast, but not "faster than native apps"

The second time round it loaded almost instantly.

I'm guessing there's some caching going on.

(comment deleted)
How crude. I can’t even post gifs. This is basically a glorified e-mail client, but with extra steps. No social media integration? What is this 2004? It’s not even decentralized like matrix.

Can’t even post inline videos, bro.

\s

Jokes aside, I do miss this type of interaction. Especially for open source projects. It made finding solutions to common issues much easier when documentation was lacking or has not been updated in a long time.

Now all or most projects have adopted some form of: discord channel, slack group, subreddit, twitter. I remember searching for my similar issue in a slack channel only to realize the chat history has been limited because the owners did not pay the extra amount to archive messages beyond what was given for free.

IIRC, the D forum also offers direct NNTP access. Would be interesting to compare web access with e.g. tin on a variety of devices…
These sites can and should be much better. Yes. Definitely.

At the same time, while a 10s load time is a long time & unpleasant, it doesn't seem catastrophic yet.

The more vital question to me is what the experience is like after the page is loaded. I'm sure a number of these sites have similarly terrible architecture & ads bogging down the experience. But I also expect that some of those which took a while to load are pretty snappy & fast after loading.

Native apps probably have plenty of truly user-insulting payloads they too chug through as they load, and no shortage of poor architectural decisions. On the web it's much much easier to see all the bad; a view source away. And there is seemingly less discipline on the web, more terrible and terribly inefficient cases of companies with too many people throwing whatever the heck into Google Tag Manager or other similar offenses.

The latest server-side react stuff seems like it has a lot of help to offer, but there's still a lot of questions about rehydration of the page. I'm also lament see us shift away from the thick-client world; so much power has been embued to the users from the web 9.9 times out of 10 just being some restful services we can hack with. In all, I think there's a deficiency in broad architectural patterns for how the thick client should manage it's data, and a really issue with ahead-of-time bundles versus just-in-time & load behind code loading that we have failed to make much headway on in the past decade, and this lack is where the real wins are.

Yeah this is exactly the kind of nuance I'd love to see explored but as you say, auditing native apps is difficult, and it's really hard to compare apples to apples unless you can really compare equivalent web and mobile apps.
re: Wordpress - with which theme? benchmarked on default theme they give away free like "2024" or whatever ?

obvs a good coder optimizes their own theme to get 100% score on lighthouse.

Every company stopped caring, especially the companies who were at the forefront of standards and good web design practices, like Google and Apple.

Google recently retired their HTML Gmail version, mind you, it still worked on a 2008 256MO RAM Android phone with an old Firefox version and it was simply fast... of course the new JS bloated version doesn't, it just kills the browser. That's an extreme example, yet low budget Phones have 2GB of RAM, you simply cannot browser the web with these and expect reasonable performances anymore.

Mobile web sucks, an it's done on purpose, to push people to use "native" apps which makes things easier when it comes to data collection and ad display for companies such as Apple and Google.

"Mobile web sucks, an it's done on purpose, to push people to use "native" apps which makes things easier when it comes to data collection and ad display for companies such as Apple and Google."

Partly for sure, but Amazon for example? Or Decathlon? (a big sports/outdoor chain in europe)

Their sites are just horrible on a mobile (or in Decathlons case also on a Desktop, that is not high end), but they also don't offer me their app in plain view, so I have to assume it is just incompetence. The devs only testing everything on their high end devices connected to a backbone.

> but Amazon for example? Or Decathlon? (a big sports/outdoor chain in europe)

Pretty much every company out there employs oxygen wasters who need "engagement" to justify their promotions/salaries. They don't care whether said "engagement" translates to actual profit.

If bloating the page or adding some annoying cookie banner allows them to come up with some random number that goes up (no matter whether the measurement is even correct) they'll happily take that opportunity even if would cause actual profits to go down.

Yes, on Thursday Google ended their only viable "product".

RIP Google.

The new Reddit is unusable, and the old is well too old.

Twitch is borderline usable, with chat and video stream problems...

The list is long...

All changes are bad when you have the final formula because they are job security.

Eventually the monkeys on this ball of dirt will realize that jobs and money don't exist, but then it will be to late... oh that is now!

RIP Humans.

> the old is well too old

What's wrong with the old Reddit UI?

It has usability problems with f.ex. collapsing a comment tree.

I returned to it last major reskin too but then they fixed the new to become usable.

Now they removed the middle version... they should have made recent.reddit.com for those that want to wait until new.reddit.com doesn't suck as much.

68k.news loads fine, it's probably that the people writing your applications are not great at their jobs?
google web engines (blink/geeko) and apple web engines with their SDK are sickening. They are an insult to sanity. They well deserve their hate.
The engines are perfectly fine.

It's the websites/web developers that are the problem.

I don't agree, the web devs are making it worse.
Nobody, nobody, nobody cares about old hardware, performance, users, etc. if anyone cared, React wouldn't be a success. The last time I tried to use the react website on an old phone, it was slow as hell.

LetsEncrypt is stopping serving Android 7 this year. Android 7 will be blocked from 19% of the web: https://letsencrypt.org/2023/07/10/cross-sign-expiration The option is to install Firefox.

Users with old hardware are poor people. Nobody wants poor people around, not even using their website.

“Fuck the user”, that's what we heard from a PO when we tried to defend users, imagine if we tried to defend poor users.

I think Let's Encrypt made a heroic effort. They deployed a hack to support Androids long abandoned by the operating system maintainer and manufacturer. If you want to blame LE for the breakage then also blame: GOOG for using the IBM PC clone business model without a device tree standard, QCOM for selling chips but very quickly cutting support, the manufacturer, and cellular carriers who prefer to lock you into another 24 month installment plan than approve an update for your existing handset.
> If you want to blame LE for the breakage then also blame ...

Of course they are also guilty. LE isn't the most to blame in reality, it's just an example that old hardware isn't important to decision makers.

> PO

What's the acronym?

Unfortunately acronyms are context sensitive and many users here are not in your context... Maybe try to avoid using acronyms!

The problem is that this attitude infects even government departments, which ought to serve all citizens, not just the rich ones.
React is successful because of the tech/VC bubble, not because it's some miracle technology.

The actual websites where React is useful can be measured in single-digit percentages (effectively a full-blown application requiring a desktop-like experience, think a trading terminal). It is overkill for everything else.

I often use a Thinkpad X220 (which still works for a lot of my usage and I'm not too concerned about it being stolen or damaged) and the JS web is terrible to use on it. Mostly resulted in my preference of using native software (non-electron), which generally works perfectly fine and about as well as on my "more modern" computer.
Whenever I pull out old machines I’m a little shocked at how responsive they are running a modern OS (Win10 or Linux), so long as the modern web is avoided. Anything with a Core 2 Duo or better is adequate for a wide range of tasks if you can find non-bloated software to do them with.

Even going back so far that modern OS support is absent, snappiness can be found. My circa 2000 500Mhz PowerBook G3 running Mac OS 9.1 doesn’t feel appreciably slower than its modern day counterpart for more than one might expect, and some things like typing latency are actually better.

A Core Duo it's perfectly fine with an ad blocker:

git://bitreich.org/privacy-haters

I have a mac mini 2011 and it works great with Linux Mint. But load youtube and you’re in a world of pain.
“True UNIX way” solution to this would be getting the data from the Web non-interactively and redirecting it into some regular expressions to produce the only thing you want. Random example:

https://github.com/l29ah/w3crapcli

My 12" Macbook was my main computer for 2022 and part of 2023. It ran smoothly for my workflow, even with a 4k monitor.

However YouTube and Gmail brought it to a crawl. I had to sell it because Youtube Music slowed down my work.

I remember going trough a similar situation when using a netbook. At first they were ok for doing light work and even accessing websites, but as time went on websites and browsers became more and more heavy. Youtube was a struggle, even Google felt laggy. Want to browse a map? You are better off getting a physical one! But, no worry, it was still fine for other low intensity things and some programming projects I worked on. About two years later and both KDE and GNOME would struggle to run on it, it was painful. Maybe I should have switched to an all CLI/terminal workflow but eventually I bought a used thinkpad X220 which was like taking a breath of fresh air after holding it for years. But now I do see the same pattern emerging, much slower mind you, but it is surely happening. Some websites feel sluggish, some gnome apps also feel sluggish and I have to avoid electron apps like the plague. But at least it has enough brawn (16GB of RAM and an SSD) to cut trough the bullshit and work ok on most things. Maybe I should have embraced that terminal lifestyle after all...
I'm sure there's an odd parable with netbooks, around the time they first started appearing as a hacky project and early commercial products they were lean and mean. Lightweight local software to do things online, compact flash IDE converters versus HDDs (which seems like a precursor to SSDs by proving a market), bare bones linux and there was a new wave of web standards and performance which non-IE browsers were leading in.

Then after going mass market OEMs put full windows and client software on there, and the web became heavier so webmail or simple office/collaboration slowed down. After that mobile/tablets were in competition for the market, and has practically devoured non-professional usage for PCs outside of gaming.

What I keep coming back to is bundling versus unbundling - having one tool to do everything with likely inevitable compromises, versus splitting into a number of precise specialized ones. It's difficult to convince any decent number of people to take something that does less.

(comment deleted)
Okta has a speed test?
Presumably Ookla.
Not only the user is affected by this.

The difference between a 2MB and a 150KB CSS file can be a lot of bandwidth.

The difference between a bad and good framework can be a lot of CPU power and RAM.

Companies pay for this. But I guess most have no clue that these costs can be reduced.

And some companies just don't care as long as money is coming in.

A lot of companies don't care about end user performance experience. Companies will burden issued PCs with bloated anti-virus, endpoint monitoring, TLS interception, Microsoft Teams, etc. If there's no explicit responsiveness goal, then performance dies by a thousand cuts.
>Companies will burden issued PCs with bloated anti-virus,

Ugh, bane of my day job. I work with two companies in particular that have high security requirements in their environments and very similar total workloads with our software. One spends around $250k (ish) a year in self hosting costs, the other over a million to get the same throughput. The less costly one worked with us as a vendor to get anti-virus/endpoint exclusions on the file io intensive part of our application and put anti-virus scanning before that point, then harden those machines in other ways. The other customer is "policy demands we scan everything everywhere and the policy is iron law".

Worst is, nowadays such bloated "security" software is being forced onto Linux servers too... every time I check why something feels slow, Microsoft Defender is hogging resources.
Eh. Cloudfront pricing starts at 8.5c per GB and goes down to 2c. I think you’d struggle to use that pricing as a justification when compared to the software engineer hours required to shrink down a CSS bundle. (don’t get me wrong, 2MB is insane and ought to be a professional embarrassment. But I think you’re going to struggle using bandwidth bills as the reason)

I agree with you about frameworks, though. So much waste in creating everything as (e.g.) a React app when there’s no need. Sadly the industry heavily prioritises developer experience over user experience.

This, although I often feel near modern web frameworks (React, similar) do not provide better developer experience.
It's a numbers game. Mostly the difference doesn't matter at all to the vast majority of users. Optimizing for the bottom 1 or 2 percent that don't have any disposable income to update their phones, or pay for your wonderful products or services is not a big priority. And not all companies have rockstar developers working for them. That's why things like wordpress are so popular.

I actually pulled the plug on a wordpress site for my company last week. We now have a static website. It's a big performance improvement. But the old site was adequate even though it was a bit slow to load. So, nobody really noticed the improvement. Making it faster was never a requirement.

What is worth optimizing for is good SEO. There's of course a correlation between responsiveness and people giving up and abandoning web sites. That's why big e-commerce sites tend to be relatively fast. Because there's a money impact when people leave early.

What I find ironic is that the people complaining about this stuff are mostly relatively well off developers with disposable incomes and decent hardware. If they use crappy/obsolete hardware it's mostly by choice; not necessity. Some people are a bit OCD about performance issues as well. They notice minor stutters that nobody cares about and it ticks them off.

2MB is nothing. I'm saying this as somebody who used cassettes, and later floppy disks with way less capacity. But that's 35 years ago. The only time when this matters to me is when I'm on a train in Germany and my phone is on a really flaky mobile network that barely works. Germany is a bit of a third world country when it comes to mobile connectivity. So, that's annoying. But not really a problem web developers should concern themselves with.

If you don't have a good phone and a high speed connection, you don't have any money to spend on either the sites products or the products of their advertisers.

When looked at from that angle, bloat is a feature.

It's not reasonable to have an expectation of quality when it comes to the web.

Huh? I have a 5 year old, mid range android, and I still buy things online.

Not everyone cares about phones.

Also, there are some websites targeting users with little money as well.
Well that take sure goes from 0 to 60 real fast. Can you really be sure that only people with good phones and connections have money to spend? Just to poke some obvious holes: what about old rich people who have a distaste for modern phones but spend lavishly on vacations every year? Or outdoorsy rich people who are frequently in areas with poor cell coverage but are constantly purchasing expensive camping/climbing equipment? How about people who aren’t rich, but work for companies where their input is part of a purchasing process with millions of dollars of budget? Those people are all super-lucrative advertising targets, I don’t think advertisers are intentionally weeding them out.
I think you are close to the truth there.

But I doubt companies purposely increase their hosting costs as some kind of firewall to only include the rich. More like they just don’t care. Same reason for technical debt, everyone wants to grow and move needles.

If a company could magically make their site more available and efficient for free I am sure they would jump at the chance. But spending a million on that vs. a million on ads wont seem worth it.

Ah, the modern AAA games take on MTX. Who cares about gamers, fish for whales.
This is addressed in TFA and is not true. The bloat is a symptom of what I've seen referred to as the "laptop class" and is unrelated to any feature adjacent.
Virtually all pharmaceutical advertising is targeted at prescribers, yet we all have to watch/view them.
That's mostly an American thing.
As an american by accident, i apologize, you're right. More civilized countries have outlawed that sort of advertising.
Dan's point about being aware of the different levels of inequality in the world is something I strongly agree with, but that should also include the middle-income countries, especially in Latin America and Southeast Asia. For example, a user with a data plan with a monthly limit in the single-digit GBs, and a RAM/CPU profile resembling a decade-old US flagship. That's good enough to use Discourse at all, but the experience will probably be on the unpleasantly slow side. I believe it's primarily this category of user that accounts for Dan's observation that incremental improvements in CPU/RAM/disk measurably improve engagement.

As for users with the lowest-end devices like the Itel P32, Dan's chart seems to prove that no amount of incremental optimization would benefit them. The only thing that might is a wholesale different client architecture that sacrifices features and polish to provide the slimmest code possible. That is, an alternate "lite/basic" mode. Unfortunately, this style of approach has rarely proved successful: the empathy problem returns in a different guise, as US-based developers often make the wrong decisions on which features/polish are essential to keep versus discarded for performance reasons.

If all the sites tot more efficient it may also increase longevity of laptops and PCs where unsavvy people might just “need a new computer it is getting slow”.

Also applies to bloatware shipped with computers. To the point where I was offered a $50 “tune up” to a new laptop I purchased recently. Imagine a new car dealer offered you that!

I worked at a now-defunct electronics store (not fry's in this instance) in the early 2000s that offered this "tune-up" - it was to remove the stuff that HP and Dell got paid to pre-install, and to fully update windows and whatever else.

Remove the mcafee nuisance popups and any browser "addons" that were badged/branded. and IIRC we charged more than $50 for that service back then.

For the performance boost it could offer the unsavy user stuck on a HDD, it was probably worth it to many. Gross to be the middleman, but it is what it is.
Another computer shop i worked in charged $90 for virus removal, but we also eventually made it policy to just reformat/reimage the drive and remove all the crap and fully update the OS. Prior to that the policy was "remove viruses, remove crapware, update OS", but we had a few customers that had machines with 30,000 viruses. I forget what the record was, but it was way up there in count. Trying to clean those machines had a marginal failure rate, enough that it was costing the owner money to have us repeatedly clean them without payment.

No one wants to tell a customer that they need to find better adult content sites, and that we won't be cleaning their machines without payment anymore!

"just reformat/reimage the drive and remove all the crap"

And that is not more work?

It was usually the way I did it, too. But this requires checking with the owner what apps are important, saved preferences, where are the important files stored (they never know) etc.

What’s the financial incentive in that? Manufacturers ideally want you to buy a whole new device every year, they don’t want you repairing or extending the life.
Some of these sites are un-fucking-bearable on my gen old iPhone.

And the if I’m in a place with a shitty signal, forget about it, this problem is 10 times worse.

I’m not even talking about the cluttered UI where only a third of the page is visible because of frozen headers and ads, I’m talking about the size of the websites themselves that are built by people who throw shit against the wall until it looks like whatever design document they were given. A website that would have already been bloated had it been built correctly that then becomes unusable on a slow internet connection, forget slow hardware.

All that is to say, I can’t imagine what it must be like to use the internet under the circumstances in which you described.

I can only hope these people use localized sites built for their bandwidth and devices and don’t have to interact with the bloated crap we deal with.

I really wish all software developers had to have 10 year old phones and computers and a slow 3G connection as their daily drivers. It might at the very least give them some empathy about how hard it is to use their software on an underspec machine.
> For example, a user with a data plan with a monthly limit in the single-digit GBs, and a RAM/CPU profile resembling a decade-old US flagship

I’m in Canada and have a single digit plan and I just upgraded from an almost decade old flagship. Most websites are torture.

in mid 00's, I had ADSL with iirc ≈300 MB included in the monthly payment, with an extremely predatory rate over the limit. I used to stretch it for 3 weeks out of a month browsing with images disabled (and bulk of my bandwidth spent on Warcraft 3).

that would last for a few hours of lightweight (not youtube/images/etc) browsing now.

I'm in Canada and have a triple-digit plan, in MBs. It's for emergency use only. It would be nice if something as simple as checking on power outages didn't chew up a good portion of the data plan.
I had a 200MB plan for $35/month until early 2022. It was an old Koodo plan.

I never used it. I don't do a lot. WiFi at home, drive to work, WiFi at work, drive to home.

Travelling with the kids I've found the new plan makes life easier.

Yeah, different people need different things out of their phones. Yet the point remains that stingy data plans still exist in developed countries. Even though people may have better devices than those mentioned in the article (it is easier to justify a one-time expense than a recurring one), there are people who are stuck with them for various reasons. Affordability is definitely one of the reasons.

Even so, we should avoid pigeonholing those who have limited access to data as poor people. There are other reasons.

> an alternate "lite/basic" mode.

In another world this mode dominated UI/UX design and development and the result was beautiful and efficient. Where design more resembles a haiku than an unedited novel.

We don't get to live in that world, but it's not hard to imagine.

I think it is sort of hard to imagine; a world populated mostly by humans that appreciate that sort of simplicity is pretty different!

If we had modern computers in 200X, we wouldn’t just have music on our myspaces, we’d put whole games there I bet.

People did, in fact, embed games on MySpace, mostly using Flash if I recall correctly.
> That's good enough to use Discourse at all, but the experience will probably be on the unpleasantly slow side. ... an alternate "lite/basic" mode

Why does this need to be the "alternate" choice though? What does current Discourse provide that e.g. PhpBB or the DLang forum do not? (Other than mobile friendly design, which in a sane world shouldn't involve more than a few tweaks to a "responsive" CSS stylesheet).

Voice, video, realtime interaction, a devoted user base, an incredible amount of money…
What do you mean by voice and video? Why would I want to have voice in a forum? I think that would be akin to receiving voice messages in messengers. Or do you mean, that for these kinds of things a widget can be displayed? That certainly is possible in old style forums. It is just HTML, an embed code away.
(comment deleted)
(comment deleted)
I like the scroll view in discourse. Makes it super easy to follow a thread. The subthreads and replies are also easier to use. The search is better, the ability to upvote makes it better for some use cases, and in general phpbb is a mess in terms of actually being able to see what's useful and what threads are relevant.

I think flipping the question makes more sense, why do you think some forums switched to or started using discourse instead of just using phpbb? I can guarantee you that it's not just to follow a fad or whatever, most niche or support forums don't care about that.

I do think trendiness and modern feeling uis are requirements for most forums these days from most perspectives.

I say this as someone that frequently uses and enjoys both rue brutalist design of a text web browser and the emacs mastodon client.

Discourse still offers a worse experience than phpBB though, even if you use a fast device.
I was thinking about this when I saw this post earlier today.

Why shouldn't the default be: does this website work in Lynx? I think that's a damn good baseline.

And in response to the other parent post, on a (almost) new iPhone, both news sites & Twitter continuously crash and reload for me. I'm not sure what the state of these other popular sites are because I don't use them.

> The only thing that might is a wholesale different client architecture that sacrifices features and polish to provide the slimmest code possible. That is, an alternate "lite/basic" mode. Unfortunately, this style of approach has rarely proved successful

But it is gaining popularity with the unexpected rise of htmx and its 'simpler is better even if it's slightly worse' philosophy.

Isn't that 'worse is better' philosophy?
I think it's rather a "performance is more important than functionality" philosophy.
In the case of the devices we're talking about, performance is effectively functionality.
My point exactly. By making your website fast and light, you make it easier and more pleasant to use. HTMX has a limited set of actions that it supports, so it can't do everything that people typically want. It can do more than enough though. (remember websites that actually used the `<form>` element?)
The most performant site is a blank page.
Astute observation.

It should be easy to use this as a "north star" and your only job is to not screw it up hardly at all.

Some people are just worse screw-ups than others.

Good news for bloated JS SPAs, since that is often what they look like :)
It's not even just the middle-income countries—I have an iPhone 13, so only three years old, on a US wifi connection with high speed broadband, and it can't handle the glitzy bloat of the prospectus for one of my ETFs. I don't understand why a prospectus shouldn't just be a PDF anyway, but it baffles me that someone would put so much bloated design into a prospectus that a recent phone can't handle it.
It shouldn't be a PDF because they don't reflow text, especially important for phones
Most of those users have the advantage of not using English - and so there are often sites in their native language that cater to lower power devices.

But if you’re in that middle world country AND your official language is English, you’re gonna have a hell of a slow time.

> For example, a user with a data plan with a monthly limit in the single-digit GBs

I live in a poor Southeast Asian country.

People with small data plans don't use data from efficient websites, they use wifi which is omnipresent.

30GB of data on a monthly plan is $3.64. Which is about 4-6 hours of minimum wage (minimum wage is lower in agricultural areas).

But more to the point, people don't use data profligately like in the West. Every single cafe, restaurant, supermarket, and mall has free wifi. Most people ask for the wifi password before they ask for the menu.

I've never seen or heard anyone talk about a website using up their data too fast.

It honestly sounds like a made up concern from people who've never actually lived in a developing country.

People here run out of data from watching videos on TikTok, Instagram, and Facebook. Not from website bloat.

I mean not using Data Plan here in Northern Europe was me 11 years ago… and me using it sparingly because video or songs would blow through the Data Plan instantly was me eight years ago.
Yeah, I still remember when I started massively using the cellular Web : at the time it cost 1024€/Go, which I found to be cheap !
Thank you for the first hand experience anecdote!

I think one way for first world country citizens to empathise with this is how people behave when on roaming data plans during overseas trips. One does keep to public WiFi as much as possible and keep mobile data usage to a minimum or for emergency purposes.

"It honestly sounds like a made up concern from people who've never actually lived in a developing country."

You mean, the one developing country you live in.

You are also missing the full spectrum of users. People don't just browse the web for fun. They look for important information like health or finance information, they might not want to do that in a public place or they might not be able to put it off for when they next have wifi.

If you are building an e commerce website it might not matter, but you could be building a news site, or any number of other things.

eh, idk. This is your anecdotal experience, there are others (like me) who have different ones

>It honestly sounds like a made up concern from people who've never actually lived in a developing country.

I once loaded a site that loaded approx 324mb "Super resolution" image (I knew it was high res, but I thought it was like 30-40 mb at best). Took care of 1/3rd of my monthly data in a single page load.

A useful feature of uBlockOrigin is being able to block all media elements larger than a given amount such as 50KB. Wish I could set it to only do this on mobile networks and let wifi stay unlimited.
> I've never seen or heard anyone talk about a website using up their data too fast.

Is this because the website usage doesn't add up or because they don't have the tools to track which sites are using how much data?

> Every single cafe, restaurant, supermarket, and mall has free wifi.

I live in a major city in the Philippines, and free WiFi is becoming more of a rarity nowadays. Not even Starbucks and other big chain restaurants, malls, and cafes offer WiFi anymore because of how widely available data is. They expect you to bring your own data and tether if you want to browse or do some work.

In more rural areas, WiFi is definitely not widely available. On the rare chance it’s even offered, it’s usually “piso WiFi” paid by the minute.

I live in one. You're talking nonsense.

That 30GB plan is more than some people with phones earn here

Could you elaborate on features and polish, i.e. give some specific examples?
What I meant was, I'm pretty sure most of what is considered features and polish today would greatly improve my experience if it were removed...
These phones aren't just in the Developing World, though. This is a USA problem too.

I work with parolees and they get the free "Lifeline" phones the federal govt pays for. You can get one for free on any street corner in the poor 'hoods of the USA. They are the cheapest lowest spec Android phones with 15GB data/month. That data is burned up by day 3 due to huge Web payloads and then the user can't fill out forms he needs for jobs/welfare and can't navigate anywhere as he can't load Maps.

I’m curious how quickly the data would be used up if only using it for the intended forms/jobs/welfare. I wouldn’t be surprised if the data lasted barely any longuer due to bloat.
When I had one of these the data only lasted me 4 days. I didn't even purposely watch any videos, but I did read a lot of news articles and many "magazine" style sites have huge video payloads that load (and sometimes play) in the background if you're not running something like uBlock. I found some sites with 250MB home pages :(
Is this new or old reddit being benched?

That would be an interesting direct comparison.

New Reddit, per the appendix. I think that Old Reddit is likely to be fairly competitive (I would guess placing near Wordpress), and yeah I agree it would be interesting to have in the table to see how far it's fallen.
Next try out the search engines.

Anecdotally, Google Search loads ~500ms faster than DuckDuckGo on the OG Pinephone.

That is one performance metric. What about energy use and loading search results not just the home page. I find DDG faster from a perception point of view. I imagine on sone metrics it is faster.
I'm glad people remember what WW in WWW means. :)

It makes me very sad to see that reddit's new design is so heavy it can't even be accessed by part of the world. It's like parts of the internet are closing theirs doors just so they can have more sliding effects that nobody wants.

Or maybe I'm just a weird one who prefers my browser to do a full load when I click a link.

Btw there was a time everyone kept talking about "responsive" web design and, having used only low-end smartphones and tablets, I kept finding it weird that there was such focus on the design being responsive for mobile devices when those mobile devices were so extremely slow to respond to touch to begin with. Of course I know that's not what they meant, but it still felt weird.

> I'm glad people remember what WW in WWW means. :)

Welcome to the Wide Web, where bloat is the norm.