Hacker News new | ask | show | jobs
by nicoburns 1370 days ago
In my experience, it's not even the framework that's the problem. Client-side rendered React is plenty fast for example. Not as fast as server-rendered (or even better, static) HTML, but fast enough (measured in a few hundreds of ms) that you won't notice the difference. It's generally things like loading lots of 3rd party scripts, or not paying to how many network roundtrips are required on the critical loading path which make it slow.
3 comments

> a few hundreds of ms

Gotta be honest, I’m grimacing already. An order of magnitude too much.

HN, which is about as fast as sites get in my experience takes between 600ms and 800ms to fully load with cache disabled. Around 350ms to load just HTML and CSS.

IMO a few hundred milliseconds for something that is actually webapp-like rather than just an information website is quite reasonable.

> HN, which is about as fast as sites get in my experience

We have different experiences. HN is light but it's not fast.

Notably, the examples in the OP article are slower by many thousands of ms, not just hundreds.

Either way, the post isn't saying you have to abandon app-like experiences. It's only about improving initial HTML delivery regardless of what you do after that.

For me, generally sub 100ms is acceptable. a few hundreds .. No thanks html over the socket is faster than that.
I'd put it like this, sometimes the framework culture does a lot more damage than the framework itself.
or loading everithing instead of lazy loding the images or use 3mb image instead of kb webp
You have to be careful with the lazy loading, sometimes it ends up being just more round trips. And then there are those annoying sites that refuse to load anything that is off screen, and you end up having to wait over and over again.
Those are the cursed sites! Not only you have to wait for content you want, but you always get content you DON'T want just when you're about to finish your reading. Then - BAM! - page starts lagging, twitching, spitting out another megabytes worth article you didn't ask for.