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 · #3938

R

Raphael

Personal blog · rtpg.co · on HN as rtpgprogramming

Raphael is a personal blog at rtpg.co about programming. Since 2016, 18 different Hacker News readers have linked it 47 times, most often “Trying to Understand Copilot's Type Spaghetti”. It is still writing: the last post was on 2026-02-03, and you can follow it by feed.

Visit the blog
47mentions?
18HN people?
2016–2026first – last linked?
Links on Hacker News per year · peak 17 in 2024

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

Why HN links it

HN readers link Raphael's posts on effect systems and on the type errors in GitHub Copilot's code. One commenter suggests the effect-systems post as a practical introduction to the topic.

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

The author on HN?

rtpg · 21,230 karma · member since 2012

real name: Raphael blog: https://rtpg.co email: raphael at above domain

From their public HN profile, which links to this site.

Most-linked posts?

  1. Trying to Understand Copilot's Type Spaghetti
    4 people · 4 mentions · first linked 2024-03-07
  2. Black Handles Comments When Python's Grammar Ignores Them
    3 people · 3 mentions · first linked 2021-07-05
  3. Writing Your Own Sudo
    3 people · 3 mentions · first linked 2022-02-13
  4. The pedantic checklist for changing your data model in a web application
    2 people · 3 mentions · first linked 2021-06-08
  5. My Fractal of Pain from Trying to Do TCP Sockets the First Time
    2 people · 2 mentions · first linked 2021-09-29
  6. Supercharged Types
    2 people · 2 mentions · first linked 2016-07-24
  7. DB Indexes Do Not Magically Compose
    2 people · 2 mentions · first linked 2024-04-14
  8. Precision in Technical Discussions
    2 people · 2 mentions · first linked 2022-02-04
  9. Type Unions Don't Always Compose Well
    2 people · 2 mentions · first linked 2024-03-11

What Hacker News says?

  1. berdario · 2016-10-14Recommends
    > typing and scope are obviously independent features You might want to read about effect systems http://rtpg.co/2016/07/20/supercharged-types.html (it might not be the best blog post on the subject theory, but I think it's a nice practical example)

    Comment linking /2016/07/20/supercharged-types.html

    on “PHP 7 deployment at Dailymotion”
  2. Submitted The pedantic checklist for changing your data model in a web application as a story · 310 points

    HN discussion
  3. The function trait section reminded me about effect systems and Purescripts row polymorphism[0], which is a great little way to be able to encode properties of your functions. I think Rust might quickly run into the “negative trait” problem trying to get that working, while embracing an effect system like Purescripts might get you the goods in a “principled” way. Though I haven’t thought about this deeply. [0]: http…

    Comment linking /2016/07/20/supercharged-types.html

    on “Rewriting Rust”
  4. Submitted I Tried to Reduce Pylint Memory Usage as a story · 249 points

    HN discussion
  5. There's a little bit more to it. Firstly you can deploy the migration first as long as it's forwards compatible (ie. old code can read from it). That migration needs to be zero downtime; it can't, for example, rewrite whole tables or otherwise lock them, or requests will time out. Doing a whole new schema is one way to do it, but not always necessary. In any case you probably then need a backfill job to fill up the…

    Comment linking /2021/06/07/changes-checklist.html

    on “Kamal Proxy – A minimal HTTP proxy for zero-downtime deployments”
  6. Submitted Implementing Rust's dbg! in Python as a story · 121 points

    HN discussion
  7. https://rtpg.co/2016/07/20/supercharged-types.html I wrote this example a long time ago, I think nowadays I could come up with some more interesting examples though. As to the differences with TS... I think they're playing in similar spaces but the monadic do syntax with Purescript lets you use row polymorphism for effect tracking without having to play weird API tricks. In TS that's going to be more difficult. (sho…

    Comment linking /2016/07/20/supercharged-types.html

    on “Adding row polymorphism to Damas-Hindley-Milner”
  8. Submitted Precision in Technical Discussions as a story · 90 points

    HN discussion
  9. For Kindle users like myself, I've bundled up the plan archive into a nice e-book format (one chapter per entry) to read through all of these: http://rtpg.co/files/carmack-plan.epub For those interested in the script, here's that: https://gist.github.com/rtpg/4eb757c2c71ab20946bbd8156cd0533...

    Comment linking /files/carmack-plan.epub

    on “John Carmack .plan Archive (2014)”
  10. Submitted Checking Out CPython 3.14's remote debugging protocol as a story · 85 points

    HN discussion
  11. Could you help me understand which Copilots are involved in this? Your tweet at https://twitter.com/ataiiam/status/1765089261374914957 mentions "Cursor's copilot". The blog post at https://rtpg.co/2024/03/07/parsing-copilots-type-spaghetti/ talks about GitHub Copilot - did they make a mistake there? And your product is CopilotKit - is that related to the GitHub and Cursor Copilots in some way or is it something diff…

    Comment linking /2024/03/07/parsing-copilots-type-spaghetti/

    on “Trying to Understand Copilot's Type Spaghetti”
  12. Submitted Trying to Understand Copilot's Type Spaghetti as a story · 77 points

    HN discussion
  13. Here's a checklist I wrote way back. https://rtpg.co/2021/06/07/changes-checklist.html I've been meaning to write an interactive version to sort of "prove" that you really can't do much better than this, at least in general cases.

    Comment linking /2021/06/07/changes-checklist.html

    on “Notes on Starting to Use Django”
  14. Submitted Writing Your Own Sudo as a story · 9 points

    HN discussion
  15. Submitted Named Arguments in Rust, If You Want Them as a story · 5 points

    HN discussion
  16. Submitted DB Indexes Do Not Magically Compose as a story · 5 points

    HN discussion
  17. Submitted Type Unions Don't Always Compose Well as a story · 4 points

    HN discussion
  18. Submitted A Couple Lines to Improve Print-Based Debugging in Loops as a story · 3 points

    HN discussion
  19. Submitted A Conjecture About Adversarial Wordle as a story · 3 points

    HN discussion
  20. Submitted My Fractal of Pain from Trying to Do TCP Sockets the First Time as a story · 3 points

    HN discussion
  21. Submitted Designing Code for Forward Progress as a story · 2 points

    HN discussion
  22. Submitted DB Indexes Do Not Magically Compose as a story · 2 points

    HN discussion
  23. Submitted Precision in Technical Discussions (2022) as a story · 2 points

    HN discussion
  24. Submitted Trying to Understand Copilot's Type Spaghetti as a story · 2 points

    HN discussion
  25. Submitted It's All Just Debian as a story · 2 points

    HN discussion
  26. Submitted How to Adopt Mypy on Bigger Projects as a story · 2 points

    HN discussion
  27. Submitted My Fractal of Pain from Trying to Do TCP Sockets the First Time as a story · 2 points

    HN discussion
  28. Submitted Being Careful Around ORMs as a story · 2 points

    HN discussion
  29. Submitted JavaScript Promises and Causality as a story · 2 points

    HN discussion
  30. Submitted Supercharged Types as a story · 2 points

    HN discussion

Search all of HN for rtpg.co

Linked by the same people?