HN Hall of Fame Weekly email

How to stop functional programming

brianmckenna.org Essays & writing Essays & articles Software engineering Candidate
Screenshot of brianmckenna.org captured 2026-07-20
Page preview · captured 2026-07-20

Resurfaced independently across 3 calendar years, with breakout response in 2 of them.

submissions
3
submitters
3
observed span
2016–2025
peak thread · 122 comments
225 pts
latest 20+ return · 2025-09-21
107 pts

Submission timeline

2007–2026

One slot for every year since HN launched. Height is that year's peak points; orange marks a 100+ point or 50+ comment breakout. Select a bar to open its strongest thread.

First comments on top threads

HN comment order

My methodology for avoiding this confusing “functional” programming: 1. Write: function add (a, b) { return a + b; } 2. Refactor to object: class AccumulatingIntegerWidget { constructor (...numbers) { this.accumulation = 0; this.accumulate(...numbers); } accumulate (...numbers) { for (const n of numbers) { this.accumulation = this.accumulation + n; } } getAccumulation () { return this.accumulation; } } Presto! It’s stateful and object-oriented and handles future cases like adding three numbers, even though…

Beyond the satire, one is supposed to write code which is readable, and like often with written works, one has to think about the "audience", the readers. When you write technical documentation, you have to decide ahead of time the expected skill level of the reader - often that decision is written too in the intro as "prerequisite(s)". When writing code you have the motto "don't make me think" in mind, but how to know what's the maximum level of…

The first top-level comment from each of the four biggest threads, in HN’s own order. Excerpts are shortened; open a comment for full context.

Breakout years
2

100+ points or 50+ comments

Total points
339

reference only — not used in Hall rules or ranking

Total comments
242

reference only — not used in Hall rules or ranking

Every submission

DateTitle as submittedByPointsComments
2016-02-23How to stop functional programmingFirst breakout · Best threadzeckalpha225122
2021-09-12How to Stop Functional Programmingl5870uoo9y70
2025-09-21How to stop functional programming (2016)Latest 20+ point returnthunderbong107120