Work in progress: 181,232 of 181,233 sites checked so far, more every week · updated 2 Nov 2026Missing a blog? Tell us

Top all-time · #5337

S

Sabrina Jewson

Personal blog · sabrinajewson.org/blogprogramming

Sabrina Jewson's personal blog at sabrinajewson.org covers programming. Since 2022, 15 different Hacker News readers have linked it 18 times, most often “Modular Errors in Rust”. The last post was in 2024, but the archive is still widely read.

Visit the blog
18mentions?
15HN people?
2022–2025first – last linked?
Links on Hacker News per year · peak 8 in 2023

Too few sampled comments (6) to say how often HN recommends it.?

Why HN links it

HN readers link Sabrina Jewson's blog for its writing on Rust error handling, including her errors post on using one error type per function. Most comments mention it only as a source.

Summarised by Claude from a sample of 6 HN comments that link here. Each comment is marked recommending, critical or neutral (citing without judging); how this works.

Hi! Welcome to my website where I occasionally blog about the Rust programming language.

Most-linked posts?

  1. Modular Errors in Rust
    6 people · 7 mentions · first linked 2023-04-08
  2. Why the “Null” Lifetime Does Not Exist
    4 people · 4 mentions · first linked 2023-07-18
  3. The Better Alternative to Lifetime GATs
    3 people · 3 mentions · first linked 2022-05-01
  4. Async destructors, async genericity and completion futures
    2 people · 2 mentions · first linked 2022-04-02

What Hacker News says?

  1. Also in Rust, you have combinations of existing and upcoming language features that make certain conceptually simple designs either outright impossible to implement, or only possible to implement a subset of due to certain barely documented compiler quirks, or impossible to determine whether it is actually possible to implement them without sinking hours of time into dead-end prototyping attempts. Like, not "Rust do…

    Comment linking /blog/the-better-alternative-to-lifetime-gats

    on “Bugs that the Rust compiler catches for you”
  2. Submitted Async destructors, async genericity and completion futures as a story · 71 points

    HN discussion
  3. We actually went through the same realization when we started writing Rust a few years ago. The `thiserror` crate makes it easy to just wrap and return an error from some third-party library, like: #[derive(Debug, thiserror::Error)] enum MyError { #[error(transparent)] ThirdPartyError(#[from] third_party::Error) } Since it derives a `From` implementation, you can use it as easily as: fn some_function() -> Result<(),…

    Comment linking /blog/errors

    on “How we centralized and structured error handling in Golang”
  4. Submitted The Better Alternative to Lifetime GATs as a story · 42 points

    HN discussion
  5. > I create one error type per function/action. I discovered this here on HN after an article I cannot find right now was posted. It could be this one: https://sabrinajewson.org/blog/errors

    Comment linking /blog/errors

    on “Error handling in Rust”
  6. Submitted "Hygienic" Let Statements in Rust as a story · 25 points

    HN discussion
  7. The following articles may also be of interest to the audience: - The definitive guide to error handling in Rust [0] - Error Handling for Large Rust Projects - Best Practice in GreptimeDB [1] - Designing error types in Rust [2] - Modular Errors in Rust [3] [0]: https://www.howtocodeit.com/articles/the-definitive-guide-to... [1]: https://greptime.com/blogs/2024-05-07-error-rust [2]: https://mmapped.blog/posts/12-rust…

    Comment linking /blog/errors

    on “Trying to get error backtraces in Rust libraries right”
  8. Submitted The Better Alternative to Lifetime GATs as a story · 4 points

    HN discussion
  9. epage · 2023-07-22Recommends
    I appreciated the approach in https://sabrinajewson.org/blog/errors

    Comment linking /blog/errors

    on “More than you've ever wanted to know about errors in Rust”
  10. Submitted Modular Errors in Rust as a story · 2 points

    HN discussion
  11. Jokes aside, I can think of a couple of differences: - For the longest time, languages with typed (“checked”) exceptions lacked any parametric polymorphism worth a damn. That made the typing... less than optimally useful, especially with fallible callbacks. Sum types can borrow all that from the existing language, and you’d feel intensely awkward if you tried to go with untyped errors there (it’s of course still pos…

    Comment linking /blog/errors

    on “Error Handling Patterns”
  12. Submitted Modular Errors in Rust as a story · 2 points

    HN discussion
  13. Submitted A new diagram-based explanation of Rust/C++20 atomic orderings as a story · 2 points

    HN discussion
  14. Submitted Why the “Null” Lifetime Does Not Exist as a story · 1 points

    HN discussion
  15. Submitted Why the “Null” Lifetime Does Not Exist as a story · 1 points

    HN discussion
  16. Submitted Why the “null” lifetime does not exist as a story · 1 points

    HN discussion
  17. Submitted Why the “Null” Lifetime Does Not Exist as a story · 1 points

    HN discussion
  18. Submitted Async destructors, async genericity and completion futures as a story · 1 points

    HN discussion

Search all of HN for sabrinajewson.org

Linked by the same people?