Surely the rendering is client side in all these - there are some servers that did some kind of server side rendering for low-power devices (AvantGo used to do this for palm, I think silk does something similar for Amazon fire) - but usually the serdar just sends instructions (html/css) which the client renders?
Web Development
Welcome to the web development community! This is a place to post, discuss, get help about, etc. anything related to web development
What is web development?
Web development is the process of creating websites or web applications
Rules/Guidelines
- Follow the programming.dev site rules
- Keep content related to web development
- If what you're posting relates to one of the related communities, crosspost it into there to help them grow
- If youre posting an article older than two years put the year it was made in brackets after the title
Related Communities
- !html@programming.dev
- !css@programming.dev
- !uiux@programming.dev
- !a11y@programming.dev
- !react@programming.dev
- !vuejs@programming.dev
- !webassembly@programming.dev
- !javascript@programming.dev
- !typescript@programming.dev
- !nodejs@programming.dev
- !astro@programming.dev
- !angular@programming.dev
- !tauri@programming.dev
- !sveltejs@programming.dev
- !pwa@programming.dev
Wormhole
Some webdev blogs
Not sure what to post in here? Want some web development related things to read?
Heres a couple blogs that have web development related content
- https://frontendfoc.us/ - [RSS]
- https://wesbos.com/blog
- https://davidwalsh.name/ - [RSS]
- https://www.nngroup.com/articles/
- https://sia.codes/posts/ - [RSS]
- https://www.smashingmagazine.com/ - [RSS]
- https://www.bennadel.com/ - [RSS]
- https://web.dev/ - [RSS]
It depends what you mean by "rendering". Of course, the visuals are only shown to users, and that happens on the browser.
But the browser uses HTML/CSS/JS to create the visuals (I'll call this a "bundle"). There are different strategies for how this bundle is created. The classic way is to just create it on the server on a per-request basis, and send it to the client. These ways I've listed are other ways.
In order of performance, usually: (SSG = ISG = ESR) > CSR > SSR
This is vague and misleading. Your 256 core server can probably create an HTML table with 1,000,000 lines faster than my 8 core laptop but DataTables (a client side tool for rendering large tables) can paint faster than a plain html file.
So what did you measure?
If you measure data transferred then SSR usually loses because it has to hydrate the data and then send it, resulting in larger bundles. In a CSR situation your entire app should be cached in a CDN meaning you'll get the best transfer speeds.
If you measure TTFI or time to first paint you're still incorrect. See the example I gave above with DataTables. Rendering a plain 1,000,000 row HTML table takes longer than a DataTables table of the equivalent size because the browser is not designed to display 1,000,000 DOM elements.
There are plenty of exceptions to this as well. Like if you included DataTables just to display a 10 row table. Then the time spent downloading and interpreting DataTables would not be offset by the bad table implementation.
But if we can run Doom on a Ti-83 powered by potatoes you can probably generate HTML on your clients device.