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

Top all-time · #672

R

Reginald Braithwaite

Personal blog · raganwald.comprogrammingphilosophy

Reginald Braithwaite's personal blog at raganwald.com covers programming and philosophy. Since 2008, 94 different Hacker News readers have linked it 186 times, most often “Trampolines in JavaScript”. The last post was in 2023, but the archive is still widely read.

Visit the blog
186mentions?
5recommend?
94HN people?
2008–2026first – last linked?
Links on Hacker News per year · peak 32 in 2015

Rarely recommended · 5 of 40 sampled comments recommend it?

Why HN links it

HN readers link his posts on trampolines, mixins, state machines and JavaScript to explain a concept, and one commenter says his blog hits the sweet spot of theory and application.

Recommended for · 5 comments
'a nice story'; 'really great' responses; a 'favourite' solution; 'sweet spot' of theory and application; read in order

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

Most-linked posts?

  1. Trampolines in JavaScript
    5 people · 5 mentions · first linked 2013-03-28
  2. /
    4 people · 5 mentions · first linked 2013-02-22
  3. Remembering John Conway's FRACTRAN, a ridiculous, yet surprisingly deep language
    3 people · 3 mentions · first linked 2024-07-22
  4. Deriving the Y Combinator and Sage Bird from the Mockingbird
    3 people · 3 mentions · first linked 2018-09-04
  5. To Grok a Mockingbird
    3 people · 3 mentions · first linked 2018-08-31
  6. What's a Transducer?
    3 people · 3 mentions · first linked 2017-07-02
  7. Yes, JavaScript is a Lisp
    3 people · 3 mentions · first linked 2013-07-20
  8. Carnac the Magnificent
    3 people · 3 mentions · first linked 2015-05-08
  9. Closing Iterables Is a Leaky Abstraction
    3 people · 3 mentions · first linked 2017-08-09
  10. How I Learned to Stop Worrying and Love the State Machine
    3 people · 3 mentions · first linked 2018-02-26

What Hacker News says?

  1. hyperpape · 2014-09-11Recommends
    Whenever you get to extreme cases, there's always going to be something subtle. I'm sure he didn't google " how to copy files", but looked for people who'd worked with many terabytes of data. Reminds me of a nice story by Reginakd Braithwaite: http://raganwald.com/2013/03/26/the-interview.html

    Comment linking /2013/03/26/the-interview.html

    on “My experience with using cp to copy 432 million files (39 TB)”
  2. Submitted How I Learned to Stop Worrying and Love the State Machine as a story · 700 points

    HN discussion
  3. I like and agree with his posts, but the last one does feel like a bit of a bait and switch: The first post talks about the difficulty of getting compile time errors for Wizard wielding a Sword The last post completely abandons the notion of statically checking anything about the Weapon assigned to a Player(beyond the most general case of is Player and is Weapon). I don't actually have enough experience with Erlang/…

    Comment linking /2014/06/23/multiple-dispatch.html

    on “How I Learned to Stop Worrying and Love the State Machine”
  4. Submitted Why recursive data structures? as a story · 404 points

    HN discussion
  5. You can solve the problem Hooks purported to solve in plain, idiomatic JavaScript with classes[0] [0] https://raganwald.com/2016/07/20/prefer-composition-to-inher...

    Comment linking /2016/07/20/prefer-composition-to-inheritance.html

    on “React I love you, but you're bringing me down”
  6. Submitted Class Hierarchies? Don't Do That as a story · 333 points

    HN discussion
  7. > Programs are not designed to be readable, they are designed to solve a problem. No. Code should be readable. When a code is fresh only you and God knows what it does and how it does. 6 month later, only God knows how your code works. You need to re-read and understand it to grasp it again. Unless you marked all magic with big comments blocks or you wrote your code explicitly, it'll take some headache-inducing hour…

    Comment linking /2013/04/02/explicit-versus-clever.html

    on “GitHub Classroom”
  8. Submitted Develop the three great virtues of a programmer: laziness, impatience, and hubris as a story · 319 points

    HN discussion
  9. If you really want to show quadtrees off... http://raganwald.com/hashlife/ But yes, I’d love to read more about things like collision detection and geospatial indexing.

    Comment linking /hashlife/

    on “Why recursive data structures?”
  10. Submitted Why Y? Deriving the Y Combinator in JavaScript as a story · 200 points

    HN discussion
  11. A long time ago, in a dystopic project far, far, away: Depressed and quite pessimistic about the team’s ability to orchestrate Java development in parallel with the rapid changes to the workbook, he came up with the solution: a series of XSLT files that would automatically build Java classes to handle the Struts actions defined by the XML that was built by Visual Basic from the workbook that was written in Excel. ht…

    Comment linking /2008/02/21/mouse-trap.html

    on “XSLT – Native, zero-config build system for the Web”
  12. Submitted Explicit vs. Clever as a story · 196 points

    HN discussion
  13. Mermaid is particularly easy to embed in online web pages. Naturally, the most robust thing to do is generate a .png and embed that. But if you write in Markdown and have a rendering tool that directly supports Mermaid, you can add your Mermaid directly to the Markdown source that you check into git. And even if you don't have direct tooling support for Mermaid, you can render it in the browser using JavaScript. For…

    Comment linking /2019/09/21/regular-expressions.html

    on “Mermaid: Create diagrams and visualizations using text and code”
  14. Submitted The Narcissism of Small Code Differences (2008) as a story · 170 points

    HN discussion
  15. The “no code” and “low code” movements come up over and over again because programming is now like writing: Yes, it is its own profession, but also yes, it permeates all other professions as software eats the world. Languages and tools are user interfaces, and any time you have many different jobs to be done by many different people with many different contexts, it is natural to develop several different interfaces…

    Comment linking /2012/01/08/duck-programming.html

    on “Ask HN: What do you think about the no-code movement?”
  16. Submitted Interviewing for a JavaScript Job as a story · 163 points

    HN discussion
  17. The HashLife algorithm for Conway’s Game of Life: https://en.wikipedia.org/wiki/Hashlife My implementations in Literate CoffeeScript: http://recursiveuniver.se And JavaScript: http://raganwald.com/hashlife

    Comment linking /hashlife

    on “Ask HN: What are some examples of beautiful software?”
  18. Submitted Trampolines in JavaScript as a story · 157 points

    HN discussion
  19. All of those are basically Lisps if you squint hard enough. In particular, they are much closer to Lisp than the two languages people were using for Viaweb competitors at the time, namely C++ and Perl (according to the "Beating the Averages" essay), and specifically the mid-'90s version of C++ and Perl. Perl 5, released 7 months before Viaweb launched, added anonymous functions (lambdas) and the ability to have vari…

    Comment linking /2013/07/19/javascript-is-a-lisp.html

    on “YC Tech Stacks”
  20. Submitted When FP? And When OOP? (2013) as a story · 147 points

    HN discussion
  21. > Edit: The other nice things about hooks is their composability (and this is in fact related to what I said above). With class components, a component can have one state object, so it's hard to compose with other "mixin" type behaviors that need their own dedicated state. You ended up with weird patterns like higher order components (à la Redux withStore) that have basically ceased to exist with hooks (replaced by…

    Comment linking /2016/07/20/prefer-composition-to-inheritance.html

    on “React Docs Beta – rewritten with hooks and interactive examples”
  22. Submitted A Brutal Look at Balanced Parentheses, Computing Machines, and Pushdown Automata as a story · 146 points

    HN discussion
  23. imbnwa · 2021-10-23Recommends
    To better understand the move away from OO interfaces, and mixins for behavior sharing, first read 'Mixins Considered Harmful'[0], then for a counter point read 'Why are Mixins Considered Harmful?'[1], then the follow-up that POCs a mixin implementation that responds to the issues raised about mixins[2] [0] https://reactjs.org/blog/2016/07/13/mixins-considered-harmfu... [1] http://raganwald.com/2016/07/16/why-are-mi…

    Comment linking /2016/07/20/prefer-composition-to-inheritance.html

    on “React Docs Beta – rewritten with hooks and interactive examples”
  24. Submitted The Inner Osborne Effect (2021) as a story · 145 points

    HN discussion
  25. This is Raganwald, ( http://raganwald.com ). I'm glad you mentioned both a blog AND a brand. They can go together (as they have done for me), but I honestly get different things out of them. Blogging helped me work out my thoughts on many subjects, not all of which were useful for "building my brand." The brand, on the other hand, helped me build enough personal security to feel safe taking chances like quitting my…

    Comment linking /

    on “Ask HN: Is having a personal blog/brand worth it for you?”
  26. Submitted More State Machine Love: From Reflection to Statecharts as a story · 131 points

    HN discussion
  27. Someone who has written so much [0] about functional programming, I would suspect has written an interpreter before. [0] http://raganwald.com/

    Comment linking /

    on “Structure and Interpretation of Computer Programs – JavaScript Adaptation”
  28. Submitted Destructuring and Recursion in ES6 as a story · 115 points

    HN discussion
  29. Overly complex algorithm questions (that the interviewer expects an immediate, near-optimal solution to -- even though they were open in the literature for several years before these solutions were found); or reasonably enough questions that just aren't articulated properly (this happens amazingly often); gratuitous brain teasers, or "Carnac the Magnificent"[1] question so any sort; or just the sheer duration of som…

    Comment linking /2015/05/08/carnac-the-magnificent.html

    on “Technical interview performance is kind of arbitrary”
  30. Submitted Mixins, Forwarding, and Delegation in JavaScript as a story · 108 points

    HN discussion

Search all of HN for raganwald.com

Linked by the same people?