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

Top all-time · #144

N

null program

Personal blog · nullprogram.comprogrammingsystems

null program is a personal blog at nullprogram.com about programming and systems. Since 2007, 297 different Hacker News readers have linked it 654 times, most often “Prospecting for Hash Functions”. It is still writing: the last post was on 2026-10-31, and you can follow it by feed.

Visit the blog
654mentions?
14recommend?
297HN people?
2007–2026first – last linked?
Links on Hacker News per year · peak 66 in 2019

Sometimes recommended · 14 of 40 sampled comments recommend it?

Why HN links it

HN readers link Chris Wellons's programming blog for C, Unix and low-level topics such as ELF files, SSH tarpits, Makefiles and hash tables. Commenters value it as fascinating and often challenging.

Recommended for · 14 comments
Called fascinating, "interesting explorations in code", "very good" tutorials, and "makes C look fun".

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. Prospecting for Hash Functions
    14 people · 18 mentions · first linked 2018-08-01
  2. Endlessh: An SSH Tarpit
    11 people · 12 mentions · first linked 2019-03-22
  3. /
    9 people · 9 mentions · first linked 2019-08-27
  4. Render Multimedia in Pure C
    7 people · 8 mentions · first linked 2020-07-01
  5. A Tutorial on Portable Makefiles (2017)
    7 people · 7 mentions · first linked 2019-02-01
  6. My personal C coding style as of late 2023
    6 people · 7 mentions · first linked 2023-10-09
  7. My review of the C standard library in practice
    6 people · 6 mentions · first linked 2023-02-11
  8. Atom vs. RSS
    5 people · 6 mentions · first linked 2019-04-13
  9. Freestyle Linked Lists Tricks
    5 people · 6 mentions · first linked 2026-01-01
  10. Emacs: Gap Buffers Are Not Optimized for Multiple Cursors (2017)
    5 people · 6 mentions · first linked 2021-12-15

What Hacker News says?

  1. sedachv · 2018-03-31Recommends
    Very much agreed. Chris Wellons has a good description of why Atom supersedes RSS: http://nullprogram.com/blog/2013/09/23/ Adding Atom support to anything is trivial even without using a library, and there is a good schema for validating feeds: http://cweiske.de/tagebuch/atom-validation.htm

    Comment linking /blog/2013/09/23/

    on “It's time to head back to RSS?”
  2. Submitted Endlessh: An SSH Tarpit as a story · 579 points

    HN discussion
  3. This article on Endlessh also shows how to implement a resource-light http tarpit: https://nullprogram.com/blog/2019/03/22/

    Comment linking /blog/2019/03/22/

    on “I use zip bombs to protect my server”
  4. Submitted Why Aren't There C Conferences? as a story · 466 points

    HN discussion
  5. Actually, it happened _long_ before that - 2018 was when I became aware of this technique, but I'm sure there's previous art: https://nullprogram.com/blog/2018/07/31/ (Prospecting for Hash Functions for those who already know). That said, this is really brute forcing, not what the OP is asking for, which is providing a novel proof as the response to a prompt (this is instead providing the novel proof as one of thous…

    Comment linking /blog/2018/07/31/

    on “Promising results from DeepSeek R1 for code”
  6. Submitted Go's Tooling Is an Undervalued Technology as a story · 459 points

    HN discussion
  7. jedimastert · 2021-05-27Recommends
    My favorite one relevant to HN is probably http://www.nullprogram.com A programming blog for the most part, but I always find whatever they're writing about to be fascinating

    Comment linking /

    on “Ask HN: Favorite Blogs by Individuals?”
  8. Submitted You might not need machine learning as a story · 437 points

    HN discussion
  9. - Mark Brooker :: https://brooker.co.za/blog long time lead engineer @ AWS blogging technical info on distributed systems - Chris Wellons :: https://nullprogram.com/ lots of interesting explorations in code

    Comment linking /

    on “Ask HN: Favorite Blogs by Individuals?”
  10. Submitted Minimalist C Libraries as a story · 364 points

    HN discussion
  11. https://nullprogram.com/

    Comment linking /

    on “If I could bring one thing back to the internet it would be blogs (2020)”
  12. Submitted Go Slices Are Fat Pointers as a story · 352 points

    HN discussion
  13. On a different note, I love this other tool he wrote: Enchive https://nullprogram.com/blog/2017/03/12/

    Comment linking /blog/2017/03/12/

    on “Endlessh: An SSH Tarpit”
  14. Submitted The Day I Fell in Love with Fuzzing as a story · 350 points

    HN discussion
  15. The APIs are broadly equivalent, see https://nullprogram.com/blog/2016/09/03/ What unfork does is more complicated than a mere read, though. I'm still not entirely clear on its use case, but it does all sorts of tampering that the code comments describe as "cursed." It also seems to be specifically targeting applications which have anti-debug measures.

    Comment linking /blog/2016/09/03/

    on “Unfork()”
  16. Submitted State machines are wonderful tools as a story · 338 points

    HN discussion
  17. Chris Wellons' "A Magnetized Needle and a Steady Hand," a piece on building an ELF executable from scratch: https://nullprogram.com/blog/2016/11/17/

    Comment linking /blog/2016/11/17/

    on “How is a binary executable organized? Let's explore it (2014)”
  18. Submitted Infectious Executable Stacks as a story · 328 points

    HN discussion
  19. Not from this release, but this is the most recent thing I've been able to find about concurrency: > This is also only the first step in bringing threading to Emacs Lisp. Right now there’s effectively a global interpreter lock (GIL), and threads only run one at a time cooperatively. Like with generators, the Python influence is obvious. In theory, sometime in the future this interpreter lock will be removed, making…

    Comment linking /blog/2018/05/31/

    on “Emacs 26.2 Released”
  20. Submitted A Tutorial on Portable Makefiles as a story · 324 points

    HN discussion
  21. Thanks! I'll look into this in combination with https://nullprogram.com/blog/2013/02/06 the next time I try out Emacs.

    Comment linking /blog/2013/02/06

    on “Emfy: Emacs for You – Quickly set up vanilla Emacs for editing”
  22. Submitted A Branchless UTF-8 Decoder as a story · 303 points

    HN discussion
  23. I am in the same boat as you are...bare with me by no means I am an expert. In fact, I read couple of chapters in Modern C yesterday :). Here are some of the things I am doing to improve my C skills to match with some of the admired/professional developers. Decide which platform to use ~~~~~~~~~~~~~~~~~~ Unfortunately, to become proficient in it we need to write code and focus on a platform. I have been fighting bet…

    Comment linking /tags/c/

    on “Ask HN: How do I learn C properly?”
  24. Submitted Switching to the Mutt Email Client as a story · 263 points

    HN discussion
  25. I've seen endlessh[0] referenced in the past. Here's an article that talks about this and other SSH tarpits[1]. [0]: https://github.com/skeeto/endlessh [1]: https://nullprogram.com/blog/2019/03/22/

    Comment linking /blog/2019/03/22/

    on “Moving your SSH port isn’t security by obscurity”
  26. Submitted Debugging Emacs, or How I Learned to Stop Worrying and Love DTrace (2018) as a story · 258 points

    HN discussion
  27. I imagine if you set up a host with hundreds of ssh tarpits and just one slow SSH port, bots trying to crawl your site to figure out the SSH port would be minimal. https://nullprogram.com/blog/2019/03/22/

    Comment linking /blog/2019/03/22/

    on “Moving your SSH port isn’t security by obscurity”
  28. Submitted When Parallel: Pull, Don't Push as a story · 245 points

    HN discussion
  29. An SSH Tarpit is a good way: https://nullprogram.com/blog/2019/03/22/

    Comment linking /blog/2019/03/22/

    on “Moving your SSH port isn’t security by obscurity”
  30. Submitted When FFI Function Calls Beat Native C as a story · 242 points

    HN discussion

Search all of HN for nullprogram.com

Linked by the same people?