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

G

Gavin Ray

Personal blog · gavinray97.github.io/blogprogrammingai

Gavin Ray's personal blog at gavinray97.github.io covers programming and ai. Since 2022, 4 different Hacker News readers have linked it 33 times, most often “Design by Contract and Effects for LLMs”. It is still writing: the last post was on 2026-10-21, and you can follow it by feed.

Visit the blog
33mentions?
4HN people?
2022–2026first – last linked?
Links on Hacker News per year · peak 15 in 2026

Most-linked posts?

  1. Design by Contract and Effects for LLMs
    2 people · 5 mentions · first linked 2026-08-02
  2. Building a PostgreSQL Wire Protocol Server Using Vanilla, Modern Java 21
    2 people · 3 mentions · first linked 2023-01-16
  3. JDK 19 Record Patterns: Applying Patterns from Spark's Scala Optimizer in Java
    2 people · 3 mentions · first linked 2023-02-04

What Hacker News says?

  1. I lost my ability to fully explain the systems I work on around the time I transitioned from next-edit-prediction AI running in my IDE (early Copilot) and working primarily via Codex/Claude CLI's. The further away I got from the implementation details, the fuzzier the semantics became. To the point that now I could not in good faith say I understand the system I have built from the ground-up and worked on the last ~…

    Comment linking /blog/design-by-contract-and-effects-for-llms

    on “Ask HN: How to deal with shipping AI-written code you don't understand?”
  2. Submitted Building a database buffer pool in Zig using io_uring's new fixed-buffer mode as a story · 158 points

    HN discussion
  3. Random tidbit: I wrote a GCC compiler plugin years ago to add Contracts to C/C++ while waiting for this to make it into the standard https://gavinray97.github.io/blog/adding-invariant-to-cpp-de... The post turned out to be more useful for an intro to writing GCC plugins than anything, but at least I had fun

    Comment linking /blog/adding-invariant-to-cpp-design-by-contract

    on “C++26 Contracts: Introduction to Preconditions and Postconditions”
  4. Submitted Adding “invariant” clauses to C++ via GCC plugin to enable Design-by-Contract as a story · 7 points

    HN discussion
  5. If you enjoy this style of programming, I wrote a bit on why contracts and capabilities (ie "allocates memory", "performs i/o") are going to become essential for LLM generated code: https://gavinray97.github.io/blog/design-by-contract-and-eff...

    Comment linking /blog/design-by-contract-and-effects-for-llms

    on “C++26 Contracts: Introduction to Preconditions and Postconditions”
  6. Submitted Psychedelics as Tools: Reflections After 20 Compounds and Decade of Experiments as a story · 3 points

    HN discussion
  7. I really think that verification aware languages are going to become a necessity Wrote a bit about this recently https://gavinray97.github.io/blog/design-by-contract-and-eff...

    Comment linking /blog/design-by-contract-and-effects-for-llms

    on “C*: Unifying Programming and Verification in C (2025)”
  8. Submitted AI SQL Generation: Overcoming Dialect-Specific Syntax as a story · 3 points

    HN discussion
  9. Good point, have written about this in the past https://gavinray97.github.io/blog/panama-not-so-foreign-memo...

    Comment linking /blog/panama-not-so-foreign-memory

    on “Show HN: Samchika – A Java Library for Fast, Multithreaded File Processing”
  10. Submitted New discoveries, old knowledge: AI finds connections humans missed as a story · 2 points

    HN discussion
  11. They're suggesting you write the output of the codegen shown in the image here: https://gavinray97.github.io/static/images/ghidra-check-inva... Yeah you totally could, and before writing this plugin it's what I was doing, haha. As there is a human involved, it is very error prone though, and boy is it tedious!

    Comment linking /static/images/ghidra-check-invariants.png

    on “Adding “invariant” clauses to C++ via GCC plugin to enable Design-by-Contract”
  12. Submitted Design by Contract and Effects for LLMs as a story · 2 points

    HN discussion
  13. To offer a counter opinion: while I can live without ChatGPT and cancelled my OpenAI plus membership, I cannot live without Copilot and would be willing to pay a lot to keep it. There are a lot of tricks to optimizing output from Copilot ("Copilot-Driven Development"), I wrote a little about what I've discovered here: https://gavinray97.github.io/blog/a-day-without-a-copilot#co...

    Comment linking /blog/a-day-without-a-copilot

    on “Gitlab AI is going head to head with GitHub Copilot”
  14. Submitted Building from Zero After Addiction, Prison, and a Felony as a story · 2 points

    HN discussion
  15. I wrote an entire blogpost about this ridiculous phenomenon: https://gavinray97.github.io/blog/absurdity-of-ai-engineer-t...

    Comment linking /blog/absurdity-of-ai-engineer-title

    on “Ask HN: What Is an "AI Engineer"?”
  16. Submitted Bypassing Noexec with Memfd_create(2) as a story · 2 points

    HN discussion
  17. I wrote about how Record Patterns along with Pattern Matching for Switch can be used to write things like Tree-Rewrite rules in AST analyzers/program optimizers efficiently if anyone is curious: This is how Spark's optimizer Catalyst works in Scala https://gavinray97.github.io/blog/what-good-are-record-patte... Kind of wild to believe this is valid modern Java: return switch (expr) { // x + 0 = x case Add(Var(var na…

    Comment linking /blog/what-good-are-record-patterns

    on “The compact overview of JDK 21’s “frozen” feature list”
  18. Submitted Experimenting with SQL:2023 Property-Graph Queries in Postgres 18 as a story · 2 points

    HN discussion
  19. The only thing that changes is that instead of your time being distributed like this when you build something: > [PLANNING] [SPECS] [IMPLEMENTATION] [TESTS] The "implementation" and "tests" sections become much less time-consuming/tedious, and you focus more on the design, architecture, and specification of the code. When you think about, the implementation is a detail and a means to an end. For instance, I hop arou…

    Comment linking /blog/a-day-without-a-copilot

    on “Ask HN: How do you cope with existential threat regarding career?”
  20. Submitted The USA Public School System Failed Me: A Maths Misadventure as a story · 2 points

    HN discussion
  21. This is happening so frequently I just wrote a blog about it to vent my frustration: https://gavinray97.github.io/blog/llm-build-cheaper-than-sea... My comment is not meant as a shallow dismissal of the authors work but rather what seems to be a growing, systemic issue

    Comment linking /blog/llm-build-cheaper-than-searching

    on “Show HN: Unfucked (unf) – a filesystem flight recorder that snapshots every save”
  22. Submitted Building a PostgreSQL Wire Protocol Server Using Vanilla, Modern Java 21 as a story · 2 points

    HN discussion
  23. Submitted Quasi-Riemann, Biologic Discovery, and Swanson's "Undiscovered Public Knowledge" as a story · 1 points

    HN discussion
  24. Submitted Design by Contract and effects are essential for LLM-generated code as a story · 1 points

    HN discussion
  25. Submitted The Race to Become the Context Layer for Agents as a story · 1 points

    HN discussion
  26. Submitted Disposable Software: When generating code costs less than finding it as a story · 1 points

    HN discussion
  27. Submitted Absurdity of the Term "AI Engineer" as a story · 1 points

    HN discussion
  28. Submitted SQL: 2023 Property-Graph Queries in Postgres 18 Beta as a story · 1 points

    HN discussion
  29. Submitted What good are record patterns as a story · 1 points

    HN discussion
  30. Submitted JDK 19 Record Patterns: Applying Patterns from Spark's Scala Optimizer in Java as a story · 1 points

    HN discussion

Search all of HN for gavinray97.github.io