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

Top all-time · #4032

S

sunshowers

Personal blog · sunshowers.ioprogrammingsystems

sunshowers is a personal blog at sunshowers.io about programming and systems. Since 2020, 18 different Hacker News readers have linked it 40 times, most often “Demystifying monads in Rust through property-based testing”. It is still writing: the last post was on 2026-10-15, and you can follow it by feed.

Visit the blog
40mentions?
18HN people?
2020–2026first – last linked?
Links on Hacker News per year · peak 22 in 2025

thoughts and ideas

Most-linked posts?

  1. Demystifying monads in Rust through property-based testing
    4 people · 6 mentions · first linked 2025-02-20
  2. /posts/nextest-and-tokio/
    2 people · 4 mentions · first linked 2024-01-19
  3. The social consequences of type systems
    2 people · 3 mentions · first linked 2020-09-28
  4. ECC RAM on AMD Ryzen 7000 Desktop CPUs
    2 people · 3 mentions · first linked 2023-10-09
  5. Open and closed universes (2021)
    2 people · 2 mentions · first linked 2024-06-01
  6. Why Rust nextest is process-per-test
    2 people · 2 mentions · first linked 2025-01-07
  7. Cancellations in async Rust
    2 people · 2 mentions · first linked 2025-10-03
  8. Debugging a rustc segfault on Illumos
    2 people · 2 mentions · first linked 2024-08-04
  9. (and why) nextest uses Tokio, part 1
    2 people · 2 mentions · first linked 2022-10-03
  10. /posts/cancelling-async-rust/
    2 people · 2 mentions · first linked 2025-10-03

What Hacker News says?

  1. I don't believe in free will, so I don't believe anyone freely chooses to do anything. I think genetic and environmental luck determines everything in life. I'm far more interested in improving our lot by altering the environment (e.g. by promoting memory-safe programming languages, or by pressuring corporations to not be abusive) than in appealing to notions like choice. https://sunshowers.io/posts/there-is-no-free…

    Comment linking /posts/there-is-no-free-will/

    on “MacBook Air M4”
  2. Submitted Anthropic's Scion is heavily inspired by Mononoke as a story · 431 points

    HN discussion
  3. When Rust's sort algorithm changed to detect total order violations, it caused some breakage. See for example: https://github.com/mitsuhiko/insta/pull/586 I recently wrote a blog post which (while not the main focus) includes a discussion on randomized testing of sort algorithms in the face of inconsistent comparators: https://sunshowers.io/posts/monads-through-pbt/ section 2.

    Comment linking /posts/monads-through-pbt/

    on “3,200% CPU Utilization”
  4. Submitted More on Anthropic's Scion ripping off Mononoke as a story · 257 points

    HN discussion
  5. In the spirit of "every non-trivial program will expand until ...", I think preemptively choosing async for anything much more complex than a throwaway script might be justified. In this case, the relevant thing isn't performance or expected number of concurrent users/connections, but whether the program is likely to become or include a non-trivial state machine. My primary influence on this topic is this post from…

    Comment linking /posts/nextest-and-tokio/

    on “Futurelock: A subtle risk in async Rust”
  6. Submitted Cancellations in async Rust as a story · 240 points

    HN discussion
  7. Here's the context for that "scandal" comment: https://lobste.rs/s/plcgps/anthropic_s_scion_is_heavily_insp... We've since got a few more details, it looks like the new information is that there are people on the team who built Scion who had previously worked at Meta and had direct experience with Sapling and Mononoke: https://sunshowers.io/posts/anthropic-mononoke-2/ I stand by my original comment: back when Google…

    Comment linking /posts/anthropic-mononoke-2/

    on “Anthropic's Scion is heavily inspired by Mononoke”
  8. Submitted Debugging a rustc segfault on Illumos as a story · 237 points

    HN discussion
  9. If you're on Linux, dmesg containing EDAC MC0: Giving out device to module amd64_edac is a pretty reliable indication that ECC is working. See my blog post about it (it was top of HN): https://sunshowers.io/posts/am5-ryzen-7000-ecc-ram/

    Comment linking /posts/am5-ryzen-7000-ecc-ram/

    on “I am giving up on Intel and have bought an AMD Ryzen 9950X3D”
  10. Submitted Beyond Ctrl-C: The dark corners of Unix signal handling as a story · 165 points

    HN discussion
  11. I thought the same as you, but the situation's less dire thankfully. Wrote a post about it a while back that was top of HN: https://sunshowers.io/posts/am5-ryzen-7000-ecc-ram/

    Comment linking /posts/am5-ryzen-7000-ecc-ram/

    on “ZenHammer: Rowhammer attacks on AMD Zen-based platforms”
  12. Submitted Why Rust nextest is process-per-test as a story · 114 points

    HN discussion
  13. I use em dashes a bunch in both informal communication and more formal writing. Mobile keyboards have em dashes, and I also have the compose key turned on on Linux. Recent examples on HN, all 100% human-written: https://news.ycombinator.com/item?id=43923622 https://news.ycombinator.com/item?id=43863882 For an example of more formal writing, this blog post of mine has 8 em-dashes across 6000 or so words: https://suns…

    Comment linking /posts/monads-through-pbt/

    on “Highlights from the Claude 4 system prompt”
  14. Submitted In defense of lock poisoning in Rust as a story · 60 points

    HN discussion
  15. Rain showed that not all may be as simple as it seems to do it correctly. In her presentation on async cancellation in Rust, she spoke pretty extensively on cancel safety and correctness, and I would recommend giving it a watch or read. https://sunshowers.io/posts/cancelling-async-rust/

    Comment linking /posts/cancelling-async-rust/

    on “A comparison of Ada and Rust, using solutions to the Advent of Code”
  16. Submitted SocketAddrV6 is not roundtrip serializable as a story · 47 points

    HN discussion
  17. https://sunshowers.io/posts/cancelling-async-rust/#the-pain-... was the most interesting part of this for me, as I can totally see making mistakes like this.

    Comment linking /posts/cancelling-async-rust/

    on “Cancellations in async Rust”
  18. Submitted Open and closed universes (2021) as a story · 27 points

    HN discussion
  19. Agreed that in the narrow case of a timeout it doesn't buy you much (and things like network sockets often let you do timeouts in synchronous code). But often you do want the power to do selects and more complex state machines. I wrote a blog post a couple years ago talking about why a project I'm the author of, cargo-nextest, switched from sync Rust to async. https://sunshowers.io/posts/nextest-and-tokio/ To this d…

    Comment linking /posts/nextest-and-tokio/

    on “Cancellations in async Rust”
  20. Submitted Demystifying monads in Rust through property-based testing as a story · 16 points

    HN discussion
  21. > He writes They go by they/she https://sunshowers.io/about/

    Comment linking /about/

    on “Cancellations in async Rust”
  22. Submitted Beyond Ctrl-C: The dark corners of Unix signal handling as a story · 16 points

    HN discussion
  23. Author here -- I'd recommend reading my blog post about how cargo-nextest uses Tokio + async Rust to handle very complex state machines: https://sunshowers.io/posts/nextest-and-tokio/

    Comment linking /posts/nextest-and-tokio/

    on “Cancellations in async Rust”
  24. Submitted Debugging a Rustc Segfault on Illumos as a story · 10 points

    HN discussion
  25. Shrinking is by far the most important and impressive part of Hypothesis. Compared to how good it is in Hypothesis, it might as well not exist in QuickCheck. Proptest in Rust is mostly there but has many more issues with monadic bind than Hypothesis does (I wrote about this in https://sunshowers.io/posts/monads-through-pbt/ ).

    Comment linking /posts/monads-through-pbt/

    on “Hypothesis: Property-Based Testing for Python”
  26. Submitted Why nextest is process-per-test as a story · 8 points

    HN discussion
  27. To the contrary, the projects I've been part of have had no end of issues related to being cancelled in the middle of a critical section [1]. I consider poisoning to be table stakes for a mutex. [1] https://sunshowers.io/posts/cancelling-async-rust/#the-pain-...

    Comment linking /posts/cancelling-async-rust/

    on “Inside Rust's std and parking_lot mutexes – who wins?”
  28. Submitted Demystifying monads in Rust through property-based testing as a story · 5 points

    HN discussion
  29. You could reasonably consider free will to be an abstraction or a language game, but it is closely linked to moral responsibility, prisons, punishment, etc, which are very much not language games. I don't think free will exists because I don't think supernatural phenomena exist, and there's certainly no natural explanation for free will (Penrose was correct about that). But I have a very non-nihilistic view on thing…

    Comment linking /posts/there-is-no-free-will/

    on “Gödel's theorem debunks the most important AI myth – Roger Penrose [video]”
  30. Submitted Demystifying monads in Rust through property-based testing as a story · 3 points

    HN discussion

Search all of HN for sunshowers.io

Linked by the same people?