Hacker Blogs
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 · #1228

J

Jan-Piet Mens

Personal blog · jpmens.netsystemsprogramming

Jan-Piet Mens's personal blog at jpmens.net covers systems and programming. Since 2012, 56 different Hacker News readers have linked it 81 times, most often “The Unix Magic Poster”. It is still writing: the last post was on 2026-10-13, and you can follow it by feed.

Visit the blog
81mentions?
5recommend?
56HN people?
2012–2026first – last linked?
Links on Hacker News per year · peak 12 in 2016

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

Why HN links it

Jan-Piet Mens's blog covers SSH, Ansible, DNS, BIND and IoT protocols. HN commenters link posts on SSH certificates, AuthorizedKeysCommand, Ansible output and the history of dig's comment syntax.

Recommended for · 5 comments
Called "a great blog" and its BIND 10 architecture post "a good overview"; recommended for protocols and IoT; Unix Magic poster "pretty good".

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

Most-linked posts?

  1. The Unix Magic Poster
    7 people · 8 mentions · first linked 2021-04-09
  2. A shell command to create JSON: jo
    6 people · 7 mentions · first linked 2016-03-05
  3. Hesiod DNS Directory Service
    4 people · 4 mentions · first linked 2018-04-05
  4. Jo – a shell command to create JSON (2016)
    4 people · 4 mentions · first linked 2018-12-10
  5. SSHd and AuthorizedKeysCommand
    2 people · 4 mentions · first linked 2022-03-26
  6. Parents, children, CDS/CDNSKEY records, and dnssec-cds
    2 people · 2 mentions · first linked 2017-09-21
  7. I Care about Ansible
    2 people · 2 mentions · first linked 2019-06-21
  8. DNS open zone data (2021)
    2 people · 2 mentions · first linked 2022-11-16
  9. Alter Ansible's Output on Debugging
    2 people · 2 mentions · first linked 2021-03-16
  10. How do your servers talk to you? (2014)
    2 people · 2 mentions · first linked 2014-04-03

What Hacker News says?

  1. You can always host your own SSH CA pubkey server. It is called an “AuthorizedKeysCommand” in `/etc/ssh/sshd_config`. https://jpmens.net/2019/03/02/sshd-and-authorizedkeyscommand...

    Comment linking /2019/03/02/sshd-and-authorizedkeyscommand/

    on “If you’re not using SSH certificates you’re doing SSH wrong (2019)”
  2. Submitted The Unix Magic Poster as a story · 666 points

    HN discussion
  3. Well, ansible by default runs with paramiko which is a python implementation of SSH protocol. It will also keep connections open for multiple commands. It also has a pull mode and it also has a fireball mode which uses 0mq: http://jpmens.net/2012/10/01/dramatically-speeding-up-ansibl... However, you're not forced to use this. In the beginning, you can just seed your CentOS or debian with a Kickstarter or seed file a…

    Comment linking /2012/10/01/dramatically-speeding-up-ansible-runs/

    on “Salt: Like Puppet, Except It Doesn’t Suck”
  4. Submitted Jo – a shell command to create JSON (2016) as a story · 325 points

    HN discussion
  5. It's a damn shame it took until this article for me (and it appears some others) to learn about the console and the debugger; those seem like massive time savers! My own biggest helper has been to use "ANSIBLE_STDOUT_CALLBACK=yaml" wherever "ansible-playbook" is called ( https://jpmens.net/2021/03/12/alter-ansible-s-output-on-debu... ). It makes the verbose output much more readable and is especially handy for tasks…

    Comment linking /2021/03/12/alter-ansible-s-output-on-debugging/

    on “Ansible Techniques I Wish I’d Known Earlier”
  6. Submitted An iOS app update that annoys me as a story · 261 points

    HN discussion
  7. > @jpmens @svnr2000 ; was chosen as a comment in zone files because that's what the PDP10 and other macro assemblers used in those days. * https://twitter.com/paulvixie/status/659934566883328000 Via: * https://jpmens.net/2015/10/28/the-semicolon-in-zone-master-f...

    Comment linking /2015/10/28/the-semicolon-in-zone-master-files-some-history/

    on “How to use dig”
  8. Submitted Rediscovering CardDAV as a story · 188 points

    HN discussion
  9. Straight from the source: > @jpmens @bortzmeyer @PowerDNS_Bert @kolkman The ";" was the comment delimiter in the TOPS-20 word, hash was dragged in by the UNIX types * https://twitter.com/svnr2000/status/659062798681546752 See also RFC 883, "Domain Names - Implementation and Specification": > ; Semicolon is used to start a comment; the remainder of the line is ignored. * https://datatracker.ietf.org/doc/html/rfc883 V…

    Comment linking /2015/10/28/the-semicolon-in-zone-master-files-some-history/

    on “How to use dig”
  10. Submitted It used to be simpler to teach Unix as a story · 173 points

    HN discussion
  11. Another option is to stand up a DNS server that knows how to do something like BIND 9's Response Policy Zone [0][1]. Although figuring out how to propagate RPZ changes to them isn't exactly straightforward (more on this below), if you're using BIND, you can set up views that match certain clients and provide one mix of RPZs to one set, and another to another set. On updating RPZs in a view (warning: BIND 9-specific…

    Comment linking /2011/04/26/how-to-configure-your-bind-resolvers-to-lie-using-response-policy-zones-rpz/

    on “Adblock via /etc/hosts”
  12. Submitted TOTP Codes in the Terminal as a story · 103 points

    HN discussion
  13. I find this SSHD snippet to be extremely useful in enterprise network, notably with OpenLDAP. Also the most dangerous but flexible way to authenticate a user. https://jpmens.net/2019/03/02/sshd-and-authorizedkeyscommand...

    Comment linking /2019/03/02/sshd-and-authorizedkeyscommand/

    on “The order of files in /etc/ssh/sshd_config.d/ matters”
  14. Submitted One gotty(1) Web terminal per user as a story · 31 points

    HN discussion
  15. https://jpmens.net/2021/04/09/the-unix-magic-poster/

    Comment linking /2021/04/09/the-unix-magic-poster/

    on “Annotated Unix Magic Poster”
  16. Submitted Blast from the past: Facit A2400 terminal as a story · 21 points

    HN discussion
  17. https://jpmens.net/2021/04/09/the-unix-magic-poster/

    Comment linking /2021/04/09/the-unix-magic-poster/

    on “Annotated Unix Magic Poster”
  18. Submitted How do your servers talk to you? (2014) as a story · 20 points

    HN discussion
  19. More things about Ansible vault that are a shame: - no file encryption, only YML - no separate values, only entire file - OMG it's s...l...o...w... - password based instead of certs - only one password - password cannot even stored in an env var More: http://jpmens.net/2014/02/22/my-thoughts-on-ansible-s-vault/

    Comment linking /2014/02/22/my-thoughts-on-ansible-s-vault/

    on “Git-secret – store private data in a Git repo”
  20. Submitted A shell command to create JSON: jo (2016) as a story · 14 points

    HN discussion
  21. > Is there an option to tell all applications that they should not bypass it? Yes there is. If your internal recursive DNS servers return an NXDOMAIN for "use-application-dns.net", then Firefox will stick with gethostbyname(3) (or whatever). See: * https://support.mozilla.org/en-US/kb/configuring-networks-di... If you’re using NLnet’s unbound(8) as a recursive DNS server, it’s possible to use the “local-zone” direct…

    Comment linking /2011/04/26/how-to-configure-your-bind-resolvers-to-lie-using-response-policy-zones-rpz/

    on “What’s Next in Making Encrypted DNS-over-HTTPS the Default”
  22. Submitted A shell command to create JSON: jo as a story · 11 points

    HN discussion
  23. Don't call it "server manifest". It'll confuse people. You mean "inventory". You can dynamically populate "facts" and "inventory". See: https://github.com/ansible-provisioning/ansible-provisioning http://jpmens.net/2013/06/18/adapting-inventory-for-ansible/ Especially for ec2 there is many modules that allows you to do that too. You can easily specify an inventory file which you populates dynamically. There is also…

    Comment linking /2013/06/18/adapting-inventory-for-ansible/

    on “AnsibleWorks Raises $6M”
  24. Submitted Looking Up Words with DICT as a story · 8 points

    HN discussion
  25. monotux · 2022-11-08Recommends
    To be fair, dma has been in the base system for a long time. Now (well sometime in the future) I can remove half of my Ansible role for setting up dma on my systems, just skipping disabling sendmail. I learned about dma here, a great blog btw! https://jpmens.net/2020/03/05/simple-solution-for-outgoing-m...

    Comment linking /2020/03/05/simple-solution-for-outgoing-mail-from-a-freebsd-system/

    on “Mail: Make The Dragonfly Mail Agent (dma) the default mta”
  26. Submitted The Dot in Domain Names as a story · 5 points

    HN discussion
  27. There’s also Hesiod (HS) records: https://jpmens.net/2012/06/28/hesiod-a-lightweight-directory...

    Comment linking /2012/06/28/hesiod-a-lightweight-directory-service-on-dns/

    on “Alternative DNS Roots”
  28. Submitted SSHd and AuthorizedKeysCommand as a story · 4 points

    HN discussion
  29. nodata · 2013-02-27Recommends
    A good overview of BIND 10's architecture: http://jpmens.net/2012/12/21/completely-different-bind-10/ It seems that all apart from the performance critical parts are written in Python 3.1

    Comment linking /2012/12/21/completely-different-bind-10/

    on “Why is BIND 10 written in C++ and Python?”
  30. Submitted A shell command to create JSON: jo as a story · 4 points

    HN discussion

Search all of HN for jpmens.net

Linked by the same people?