3 ms·
Alex, It's somewhat ironic that a web page about performant terminal user interfaces uses gratuitously complex CSS mask compositing and cubic gradients which r
by mrandish 8mo ago
Alex,
It's somewhat ironic that a web page about performant terminal user interfaces uses gratuitously complex CSS mask compositing and cubic gradients which reduce smooth scrolling on my 1 year-old, high-end Dell XPS laptop (>$3k) to Commodore 64 level (on default 'Balanced' battery mode). While it's pretty, it's also just a very subtle, non-critical background animation effect. Not being a CSS guru myself, here's what Gemini says:
> "Specifically, this is a Scrim or Easing Gradient. Instead of a simple transition between two colors, it uses 16 color stops to mimic a "cubic-bezier" mathematical curve. This creates a smoother, more natural fade than a standard linear gradient, but it forces the browser to calculate high-precision color math across the entire surface during every scroll repaint."
My Firefox smooth scrolls like butter on thousands of pages, so you might want ask your web designer to test on non-Mac, iGPU laptops with hiDPI and consider the performance cost of web pages with always-running subtle background animations in a world of diverse hardware platforms. In case it helps, here's the animation with the gradient layers disabled so you can see all 6,400,000 pixels which are being recalculated every scroll line (https://i.imgur.com/He3RkEu.jpeg https://i.imgur.com/He3RkEu.jpeg).
- abelanger 8mo agoYou're right - I'll remove that now until we can get it more performant or drop it altogether. This wasn't something we caught during testing. I appreciate the feedback!
- bloqs 8mo ago[flagged]
- huflungdung 8mo ago[dead]
- zelphirkalt 8mo agoWhile you are at it, it would be good, if the post was readable at all, without having to run JS on the page.
- syene 8mo agoIt rendered perfectly, without JavaScript, in Emacs EWW.
- Y-bar 8mo agoI think perhaps Emacs does not support the `hidden` attribute? https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Global_attributes/hidden https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/... If you check the source (not the DOM) the actual content is loaded in `<div hidden="" id="S:0"> ...` which is then moved/copied into the proper main content div in the DOM using a JS event it seems.
- syene 8mo agoIt must have sent it differently if the browser reports it can’t do JavaScript.
- zelphirkalt 8mo agoI used to try EWW sometimes, but it sometimes made whole Emacs crash at unpredictable times, so I stopped trying to use it. But good to know, maybe I will try again in the future, hoping it becomes more stable/safe.
- syene 8mo agoI don’t think EWW has ever made my Emacs crash. I wanna say I’ve been using it regularly since Emacs 27.
- sedatk 8mo ago> to Commodore 64 level That’s unfair to C64 which can smooth scroll very well.
- nine_k 8mo agoNot by repainting the whole screen every frame!
- sedatk 8mo agoModern browsers don’t repaint the whole screen every frame either.
- npsomaratna 8mo agoI owned a C64. Remember how buttery smooth the interfaces of those '80s computers were?
- ekianjo 8mo agofewer layers between software and hardware...
- cryptonector 8mo agoNot Apples. But Amigas, omg those were smooth.
- guenthert 8mo agoI was green with envy, when I saw how fast and smooth a C64 scrolled some text (iirc it was some machine code monitor). My Amstrad CPC464 had no text mode and the Z80A CPU was clearly overwhelmed with shifting the whopping 16KiB RAM of the graphics buffer or even just rendering a line of text.
- sedatk 8mo agoCPC allows some level of smooth scrolling, albeit not as good as C64. Lack of a text mode is a problem too as you said.
- khannn 8mo agoNotice how many times Claude Code was mentioned in this blog post nee advertisement?
- 1vuio0pswjnm7 8mo agoFWIW, this page looks just fine in a text-only browser running in textmode, no X11, no Javascript, no CSS, on an old, underpowered computer
- devmor 8mo agoWhile I agree with your point, I don't understand why you added: > here's what Gemini says Surely, if people care to see LLM generated text, they can do it themselves.
- oblio 8mo agoIt's a clearly marked quote that adds more details. It's perfectly fine.
- nozzlegear 8mo agoIt's not adding more details in this case, it's adding incorrect information. CSS gradients are rasterized once during paint into a bitmap by the browser. Theres no recalculation going on per scroll unless something invalidates the gradient bitmap, and it doesn't matter how many steps the gradient has or how complicated it is. The real issue is something was causing the container with the gradient to repaint on every scroll.
- PantaloonFlames 8mo agoThat’s helpful information but it doesn’t mean the use of Gemini is unwelcome. A human could have rendered the initial analysis too, and then you could have just replied to the human, correcting him or her. Why is the source of the analysis such an issue?
- nozzlegear 8mo agoIMO it's because people have learned not to trust LLMs. It's like using AI code generators – they're a useful tool if you know what you're doing, but you need to review the material it produces and verify that it works (in this case, verify that what it says is correct). When they're used as a source in conversations, we never know if the "dev" has "reviewed the code," so to speak, or just copy and pasted. As for why people don't like LLMs being wrong versus a human being wrong, I think it's twofold: 1. LLMs have a nasty penchant for sounding overly confident and "bullshitting" their way to an answer in a way that most humans don't. Where we'd say "I'm not sure," an LLM will say "It's obviously this." 2. This is speculation, but at least when a human is wrong you can say "hey you're wrong because of [fact]," and they'll usually learn from that. We can't do that with an LLM because they don't learn (in the way humans do), and in this situation they're a degree removed from the conversation anyway.
- NamlchakKhandro 8mo agoimagine paying 3k$ for a laptop that can't even handle cubic gradients?
- 1vuio0pswjnm7 8mo agoTo read using Firefox, or any browser/HTML pager, without Javascript or CSS: ( printf 'GET /blog/tuis-are-easy-now HTTP/1.0\r\n' printf 'Host: hatchet.run\r\n\r\n' )|busybox ssl_client hatchet.run \ |(echo "<meta charset=utf-8>";grep -o "<p.*</p>") > 1.htm firefox ./1.htm
- Aldipower 8mo agoDon't blame my Commodore 64. Once a program is loaded it, runs with 50 or 60hz refresh rate, which is very smooth! Take that! :-)