Top all-time · #425
Raph Levien’s blog
Personal blog · raphlinus.github.ioprogrammingsystemsweb
Raph Levien’s blog is a personal blog at raphlinus.github.io about programming, systems and web. Since 2018, 130 different Hacker News readers have linked it 228 times, most often “Xi-Editor Retrospective”. It is still writing: the last post was on 2025-03-21, and you can follow it by feed.
Sometimes recommended · 14 of 40 sampled comments recommend it?
Why HN links it
HN readers link Raph Levien's blog for in-depth technical writing on GUI architecture, graphics latency, text layout, colour and Rust, drawn from his xi editor and Druid work.
- Recommended for · 14 comments
- Called superb, incredible and interesting technical writing; recommended as good reading on GUI, rendering and text layout.
Summarised by Claude from a sample of 40 HN comments that link here. Each comment is marked recommending, critical or neutral (citing without judging); how this works.
Blog of Raph Levien.
Most-linked posts?
- Xi-Editor Retrospective15 people · 20 mentions · first linked 2020-06-27
- An interactive review of the Oklab perceptual color space9 people · 12 mentions · first linked 2021-01-19
- Towards a unified theory of reactive UI9 people · 9 mentions · first linked 2019-11-22
- With Undefined Behavior, Anything Is Possible7 people · 11 mentions · first linked 2018-08-17
- Xilem: An Architecture for UI in Rust7 people · 7 mentions · first linked 2022-05-07
- /7 people · 7 mentions · first linked 2020-09-21
- Towards Principled Reactive UI7 people · 7 mentions · first linked 2020-09-26
- Rust 2020: GUI and Community6 people · 6 mentions · first linked 2019-11-01
- Advice for the next dozen Rust GUIs6 people · 6 mentions · first linked 2022-07-15
- Rust 2021: GUI5 people · 6 mentions · first linked 2020-09-29
What Hacker News says?
There were a few really interesting blog posts about the architecture choices for the xi editor a few years ago, ending with this https://raphlinus.github.io/xi/2020/06/27/xi-retrospective.h... But I personally never worked on this kind of problem, I just remember reading these over the years
Comment linking /xi/2020/06/27/xi-retrospective.html
on “Google Docs will now use canvas based rendering”Submitted Xi-Editor Retrospective as a story · 538 points
HN discussion- https://matklad.github.io/ - https://danluu.com/ - https://raphlinus.github.io/ - https://rosenzweig.io/ - https://flak.tedunangst.com/ - https://ciechanow.ski/
Comment linking /
on “Ask HN: Favorite Blogs by Individuals?”Submitted Xilem: An Architecture for UI in Rust as a story · 457 points
HN discussionwonder what happened to this https://raphlinus.github.io/rust/2020/01/18/soundness-pledge...
Comment linking /rust/2020/01/18/soundness-pledge.html
on “11 year old unsoundness bugs found in Rust borrow checker”Submitted Thoughts on Rust bloat as a story · 443 points
HN discussionWhat do you think of the "no such thing as native GUI" section of the xi retrospective [1], particularly the surprisingly bad performance? [1]: https://raphlinus.github.io/xi/2020/06/27/xi-retrospective.h...
Comment linking /xi/2020/06/27/xi-retrospective.html
on “Zas Editor”Submitted Rust 2021: GUI as a story · 372 points
HN discussionan interactive comparison also here: https://raphlinus.github.io/color/2021/01/18/oklab-critique....
Comment linking /color/2021/01/18/oklab-critique.html
on “Web color is still broken”Submitted Advice for the next dozen Rust GUIs as a story · 345 points
HN discussion> can we just make it render on time? Oh, time to go down a low-latency rabbit hole. Start here: https://raphlinus.github.io/ui/graphics/2020/09/13/composito... Some key mentions: Windows has a hardware overlay API. A hardware overlay is why the OS mouse cursor renders with low latency even with 'vsync on'. For fullscreen, the ultimate in tear-free low latency is beam racing. Search for 'blur busters beam racing' to…
Comment linking /ui/graphics/2020/09/13/compositor-is-evil.html
on “90s Cursor Effects”Submitted Show HN: A new spline as a story · 341 points
HN discussionTo have a compositor not introduce a frame of latency more or less requires it to race the beam, which has definitely been suggested[1], but you can see how it’d be difficult, and so far no operating systems have tried as far as I know. And as for good frame pacing support in UI toolkits (and not just game engines), well, one can dream. Until both of these are in place, 2.5±0.5 seems to be the hard limit, the questi…
Comment linking /ui/graphics/2020/09/13/compositor-is-evil.html
on “Hard numbers in the Wayland vs. X11 input latency discussion”Submitted Show HN: 2D Graphics on Modern GPU as a story · 306 points
HN discussionevidenced by Raph Levien running out of steam on xi :( https://raphlinus.github.io/xi/2020/06/27/xi-retrospective.h...
Comment linking /xi/2020/06/27/xi-retrospective.html
on “Graphics for JVM”Submitted Fast 2D Rendering on GPU as a story · 286 points
HN discussionI believe the interest is there, it's just not as easy as it seems: https://raphlinus.github.io/rust/druid/2020/09/28/rust-2021....
Comment linking /rust/druid/2020/09/28/rust-2021.html
on “Tauri – Electron alternative written in Rust”Submitted The compositor is evil as a story · 248 points
HN discussionWhat you seem to be describing is "unspecified behaviour" or "implementation defined behaviour". If your program contains undefined behaviour the compiler makes no guarantees about how your program will behave. For more see: https://blog.regehr.org/archives/213 and https://raphlinus.github.io/programming/rust/2018/08/17/unde... .
Comment linking /programming/rust/2018/08/17/undefined-behavior.html
on “An RFC that adds support for Rust to the Linux kernel”Submitted Towards Principled Reactive UI as a story · 234 points
HN discussionYou're right that reactive UI is a poor fit for most languages (especially JavaScript!), but I think the problem is more general than that. Good UI architecture needs some convenient and efficient way to propagate state changes between different parts of the UI framework [0]. This requirement sits in an awkward place, halfway between imperative programming and functional programming. It just isn't in the day-to-day…
Comment linking /ui/druid/2019/11/22/reactive-ui.html
on “Writing GUI apps for Windows is painful”Submitted I want a good parallel computer as a story · 233 points
HN discussionAnother one if you enjoy this sort of thing like me is Raph Levien's work on the stack monoid; this [1] blog post and this [2] ArXiV paper are great places to look. [1]: https://raphlinus.github.io/gpu/2020/09/05/stack-monoid.html [2]: https://arxiv.org/abs/2205.11659
Comment linking /gpu/2020/09/05/stack-monoid.html
on “Vectorized and performance-portable Quicksort”Submitted Parallel Curves of Cubic Béziers as a story · 225 points
HN discussionAuthor Raphlinus has an incredible history of great, superb technical posts here, many which have spawned great discussions[1]. Referenced in this article are: Xi-Editor, discussed in Xi-Editor Retrospective[2] and Druid, discussed in Rust 2021: GUI[3], which follows closely after Principled Reactive UI[4] (describing a prototype for Druid called Crochet). > I have long believed that it is possible to find an archit…
Comment linking /rust/druid/2020/09/25/principled-reactive-ui.html
on “Xilem: An Architecture for UI in Rust”Submitted Rust 2020: GUI and Community as a story · 222 points
HN discussionI wrote a little on this last year, mostly still valid: https://raphlinus.github.io/rust/druid/2020/09/28/rust-2021.... I think there are approximately five viable Rust toolkits: Iced, Makepad, sixtyfps, egui, and Druid (in no particular order). Any of these five could evolve to being a real solution, with enough investment. Of course, it's possible another could arise, or that I've given short shrift to one of the…
Comment linking /rust/druid/2020/09/28/rust-2021.html
on “Iced: A cross-platform GUI library for Rust, inspired by Elm”Submitted Secrets of smooth Béziers as a story · 219 points
HN discussionGood related reading: https://raphlinus.github.io/color/2021/01/18/oklab-critique.... , with some analysis of various colour spaces of different types, focusing especially on their behaviour in gradients, to do with interpolation. My biggest complaint about perceptual colour spaces has been that they make working with colours near gamut boundaries really hard. For example, with #ff0 (yellow) in LCH, you can’t tweak…
Comment linking /color/2021/01/18/oklab-critique.html
on “New alternatives to HSL and HSV that better match color perception”Submitted The stack monoid revisited as a story · 216 points
HN discussion