HN Hall of Fame Weekly email

How can C Programs be so Reliable?

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

The originally submitted URL now redirects to the address above. Updating the destination does not change the item’s HN history, Hall membership, or rank.

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

submissions
3
submitters
3
observed span
2008–2011
peak thread · 152 comments
249 pts
latest 20+ return · 2011-09-22
249 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

"C is unreliable" is the wrong way to conceptualize the problem. The argument against C is that it is inefficient. It's not that C programs are broken; it's that if you spend six hours writing C code your code will either do less, or be more broken, than what you would have produced had you spent those six hours writing, e.g., Perl or Javascript or Lisp instead. There's no reason why you can't write correct C code, or correct assembly…

People often write in higher level languages because they want lots of bad code fast. Almost all business applications are CRUD apps (create/retrieve/update/destroy) with some business logic, and they're generally written in C#. The app may crash when you click the wrong button, but the app is cheap to develop and the programmers are easily replaceable. Of course I'm generalizing, and a lot of C# programmers write great and reliable code. The point is that they often don't -need- to…

jd·103-point thread·

First: Pointers do have a simple real-world analogy. They're post office box numbers. A given post office box is a container with a fixed size and a fixed number. You can refer to a post office box using that number. You can also do things like say "Get me everything from the four post office boxes beginning with post office box 20." or "Go to post office box 3, go down two boxes, and get me what's in the post…

derleth·15-point thread·

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
367

reference only — not used in Hall rules or ranking

Total comments
258

reference only — not used in Hall rules or ranking

Every submission

DateTitle as submittedByPointsComments
2008-11-11How can C Programs be so Reliable?First breakoutltratt103104
2011-09-22Laurence Tratt: How can C Programs be so Reliable?swah152
2011-09-22How can C Programs be so Reliable?Best thread · Latest 20+ point returnColinWright249152