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

P

Paul Battley

Personal blog · po-ru.com/diaryprogramming

Paul Battley's personal blog at po-ru.com covers programming. Since 2009, 17 different Hacker News readers have linked it 20 times, most often “I no longer care to work on any Ruby gems so I've archived all my repositories”. It is still writing: the last post was on 2026-10-27, and you can follow it by feed.

Visit the blog
20mentions?
17HN people?
2009–2026first – last linked?
Links on Hacker News per year · peak 5 in 2012

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

Why HN links it

HN commenters cite Paul Battley's posts as support on parsers, Ruby, device detection in the BBC iPlayer, and an old clock.js script. No comment judges the writing itself.

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

Paul Battley’s blog, publishing since 2002

Most-linked posts?

  1. /diary/ruby-parsing-ambiguities/
    2 people · 2 mentions · first linked 2012-11-29
  2. I no longer care to work on any Ruby gems so I've archived all my repositories
    2 people · 2 mentions · first linked 2026-10-19
  3. It doesn't matter whether "Matz is nice"
    2 people · 2 mentions · first linked 2026-07-29

What Hacker News says?

  1. writing parsers is the least interesting part of an interpreter/compiler, and your grammar should be boring if you want your syntax to be easy to understand by humans. In my (admittedly limited) experience, most grammars for programming languages that are supposed to be easy on humans end up being harder to parse. (See below) One notable exception is, of course, Smalltalk. One criticism I have of this article, is th…

    Comment linking /diary/ruby-parsing-ambiguities/

    on “Show HN: How to write a recursive descent parser”
  2. Submitted I no longer care to work on any Ruby gems so I've archived all my repositories as a story · 526 points

    HN discussion
  3. Honestly, I'm not sure it does. I've seen plenty of software projects whose documentation consists of an automated compendium of every method in every class, none of which tells me how to actually use it. I'd prioritise a simple getting started guide. It only has to be a page or so, but something that explains how to run the program, and achieve a few simple tasks. It's far easier to go from a simple case to a more…

    Comment linking /diary/getting-started-with-treetop/

    on “WTFM - Write The Freaking Manual”
  4. Submitted Ruby’s magic underscore as a story · 113 points

    HN discussion
  5. I would not personally sign onto (or put money) behind a DHH-run project because of his frankly abhorrent political views: - https://po-ru.com/2026/07/29/it-doesnt-matter-whether-matz-i... - https://blogs.gnome.org/alatiera/2025/11/06/dhh-and-omarchy-...

    Comment linking /2026/07/29/it-doesnt-matter-whether-matz-is-nice

    on “Omacom Foundation Launches with $8M”
  6. Submitted Convert Ruby to JavaScript as a story · 15 points

    HN discussion
  7. The article is not good in some areas. Yes, the initial claim that good software still has value, even if written by humans, is true - high quality is always nice to have. But the author then states this: "The fact that an LLM now writes the code does not mean any abstractions we made before are suddenly less important or less useful." Now - here the author makes a mistake that assumingly LLMs would lend benefit to…

    Comment linking /2026/10/18/why-im-no-longer-updating-this-repository

    on “Does Ruby on Rails still make sense?”
  8. Submitted Destructuring assignment in Ruby as a story · 3 points

    HN discussion
  9. Both Ruby and Perl have the same challenge, and both solve it by treating the expression differently depending on whether f is a variable or a function/method. As it turns out, you can't actually parse Perl 5 [1], but Ruby can be statically parsed [2], and resolves this ambiguity based on context. I don't actually know anything about CoffeeScript's parser, and I imagine that it complicates the grammar significantly,…

    Comment linking /diary/ruby-parsing-ambiguities/

    on “Math Envy and CoffeeScript's Foibles”
  10. Submitted It doesn't matter whether "Matz is nice" as a story · 2 points

    HN discussion
  11. I wrote something similar a while back (in 2005, apparently). It's not quite how I'd write it now, but I'm not too embarrassed by my code from eight years ago! http://po-ru.com/clock.js

    Comment linking /clock.js

    on “Show HN: Keep your page's timestamps up to date (weekend project)”
  12. Submitted 1 error(s) prevented this form from being saved as a story · 2 points

    HN discussion
  13. This is something that the BBC did with iPlayer: http://po-ru.com/diary/device-discrimination-on-the-internet... I've not quite worked out how to implement it though

    Comment linking /diary/device-discrimination-on-the-internet/

    on “Ask HN: How do I ensure that a real iOS client is using an API”
  14. Submitted Writing Rails apps without wanting to kill everybody as a story · 2 points

    HN discussion
  15. Submitted One does not simply … (Turbolinks edition) as a story · 2 points

    HN discussion
  16. Submitted IE6 D-Day, lets give IE6 a definable lifespan as a story · 2 points

    HN discussion
  17. Submitted Skimmer, deuxième partie as a story · 1 points

    HN discussion
  18. Submitted Encrypted application configuration as a story · 1 points

    HN discussion
  19. Submitted Po-ru.com: Ruby propaganda as a story · 1 points

    HN discussion
  20. Submitted Get your filthy hands off my Kernel methods as a story · 1 points

    HN discussion

Search all of HN for po-ru.com

Linked by the same people?