Hacker News new | ask | show | jobs
by micromacrofoot 1651 days ago
a lot of the web would probably be better off if it were
1 comments

I think so, WordPress that isnt cached to a frozen state on the backend is kind of silly in my eyes, the only exception would be comments, but you could hack around that by using Disqus or something, voila.
> you could hack around that by using Disqus

But that's not actually solving the problem, it's just offloading it. Not to mention that you're selling your community to yet another tracking company, and jacking up user page load time.

>> by Disqus or something

depends on what you want, the low end is incoming comments as emails and putting them semi-manually into an iframe on the unchanged static article page. Doing it myself at https://blog.mro.name/2019/05/wp-to-hugo-making-of/ and sacrificed commenter speed.

Others may easily be more sophisticated than above brutalist solution. But still: comments in iframes align well with static sites IMO.

Edit: even better may be to phase in comments from HN or the fediverse or whatever you care about into an iframe. Be it copied or inline and re-styled.

I’m a technical lead for a SaaS community forum product and we handle billions of page views a month. Many of them don’t put any load on our servers though because guest pages are cached with a short duration and the cached page gets served up.

Today that’s cloudflare but in the past it was varnish.

Otherwise it is very dynamic. Different users have access to different content so we generally can’t cache full pages at the edge for authenticated users.

nice. You're working regularly on the website. Not all do.
I like this approach, is there something specific you're using to automate this at least in part? I feel like it could be made into a simple service with very limited JS to make it less "slow", unless you decide to manually approve of a comment.
> automate

not yet, but I think of a delayed shell script (cron 15min?). JS (clientside) may be not of much use.

Or use a feedback webform via https://github.com/mro/form2xhtml - doesn't have to be email then.

Or monitor IMAP folders for accepted comments and cron them to the webserver a la https://codeberg.org/mro/flohmarkt.monte-ts.de/src/branch/ma... and online.sh

I agree, but comments could also be static. Have a service handle comment submission, regenerate the page a bit later. If displaying to the user is an issue, do it client side. Most websites use a moderation queue anyway.

One could even generate a dedicated HTML page for the comments, and include it in an iframe, although inlining them is probably more performant.

Forcing people to use disqus is a fantastic way to fuck over your userbase
Just POST to a PHP script that regenerates the cached HTML including comments.
Even comments come quite rarely in most cases, so that the complete page with comments can be cached.
You don’t need disqus, you just invalidate the cache and regenerate it for only the next request, serving stale copies until the regen is complete. nginx or varnish can both do that out of the box.
Comments are far from the only exception to static page caches! There are often dynamic changes via plugins or functions.php. There are shortcodes and a number of other examples too.
we had semi-static comments you are talking about. they were called guestbooks. but we gave up on them.