Skip to content
HomeVideosBooksBlogs
AllTop postsTopics
Podcasts
HistoryListsWatch laterLiked videosFollowing

The videos, books, blogs and podcasts Hacker News keeps recommending, all in one place.

VideosBooksBlogsPodcastsAboutPrivacySettings

Data from Hacker News, HackerTube, HackerBooks, HackerBlogs and Open Library. Credits · Not affiliated with Y Combinator.

HomeVideosBooksBlogsPodcasts
Ctrl K
    P

    Paul Adams Smith

    pauladamsmith.com · Personal blog · on HN since 2010

    Paul Adams Smith, a software engineer, writes on Redis internals, the LLVM C API, Go, OpenBSD networking, and the Healthcare.gov rescue.

    Visit blogRSSHN submissions
    Systems & PerformanceProgrammingDatabases
    What HN says

    HN links it for Redis source walkthroughs, an LLVM C API starter guide, and his account of the Healthcare.gov rescue.

    Stats for nerds
    21HN people shared it
    26linked in comments
    987story points
    Mar 2024last shared
    2011people per year2024

    Top posts on HN

    1. 1
      Looking at your program’s structure in Go 1.7
      1 person · 238 points · first shared 2016 · 53 comments on HN
    2. 2
      Classic 8×8-pixel B&W Mac patterns
      2 people · 189 points · first shared 2025 · 55 comments on HN
    3. 3
      Fixing bufferbloat on your home network with OpenBSD 6.2 or newer
      2 people · 163 points · first shared 2018 · 48 comments on HN
    4. 4
      Redis: under the hood
      5 people · 90 points · first shared 2011 · 12 comments on HN
    5. 5
      Redis: under the hood
      1 person · 84 points · first shared 2010 · Discussion on HN
    6. 6
      How to get started with the LLVM C API
      4 people · 69 points · first shared 2015 · 12 comments on HN
    7. 7
      The DNC's voter registration app is now free and open-source software
      2 people · 67 points · first shared 2013 · 18 comments on HN
    8. 8
      Parsing and formatting date/time in Go
      1 person · 41 points · first shared 2011 · 9 comments on HN
    9. 9
      More Redis internals: Tracing a GET & SET
      3 people · 23 points · first shared 2011 · 3 comments on HN
    10. 10
      Cheatsheet for jj's builtin diff editor
      1 person · 5 points · first shared 2025 · Discussion on HN

    What HN people wrote when they linked it

    • mmahemoffJan 2013

      This issue came up again recently with the Democrats' voter registration application (http://pauladamsmith.com/blog/2013/01/dnc_voter_reg_foss.html).

      The take-home is don't do that. Don't modify a standard open source contract on a whim as it will inevitably cause serious hassle later. Okay if you have some major ethical/legal objection, then just beware it will cause some major hassle.

      JSON is an exception. It came along when the programming world was desperate to be liberated from XML bondage...a fine solution surfaced at the right place and right time. And also at a time when people cared less about open source license specifics. For any average project, you're adding more barriers to adoption than you probably realise.

      (I said more about this the last time http://news.ycombinator.com/item?id=4762261)

    • jakewinsOct 2023

      I realize this isn’t what you’re arguing for, but as a cautionary anecdote on this topic:

      Paul alludes to it in his post about Healthcare.gov from the other day, but this was apparently one of the major parts of the failure there - endless lines of code generated from UML diagrams, making reading the code hard and things like “can we add a trace statement here” difficult.

      Optimising for diagrams-as-source-of-truth has drawbacks for debugging and maintainability of the running code

      https://www.pauladamsmith.com/blog/2023/10/the-10-year-anniversary-of-the-healthcare.gov-rescue.html

    • upofadownNov 2021

      I am not sure what is meant by this. It certainly seems to have QoS in the form of the queue directive. It works for me for limiting buffer bloat on my VDSL model upstream. The defaults work well for my VOIP stuff so that all I have is this in my pf.conf:

      queue outq on re1 flows 1024 bandwidth 3000K max 3000K qlimit 1024 default

      I think the magic is in the "flows" part.

      Added: Relevant articles:

      * https://dataswamp.org/~solene/2021-08-30-openbsd-qos-lan.html
      * https://www.pauladamsmith.com/blog/2018/07/fixing-bufferbloat-on-your-home-network-with-openbsd-6.2-or-newer.html

    • kimsey0Mar 2024

      A good reminder to read about how it almost didn't turn out alright.

      * https://time.com/10228/obamas-trauma-team/

      * https://www.pauladamsmith.com/blog/2023/10/the-10-year-anniversary-of-the-healthcare.gov-rescue.html

      (And of course the related Hacker News threads.)

      * https://news.ycombinator.com/item?id=7312442

      * https://news.ycombinator.com/item?id=37957152

    • rchApr 2014

      Take a look at Redis sometime. You might want to actually work on it a bit to help internalize what you're reading. Here are a couple of articles that might help get you started:

      http://pauladamsmith.com/articles/redis-under-the-hood.html

      http://www.starkiller.net/2013/05/03/hacking-redis-adding-interval-sets/

    • paulsmithMay 2011

      As a user, I assume the site is not going to do the right thing with my password. That's why I securely generate a new password for each site using a master passphrase. Oplop is a good, zero-install tool for doing this. http://pauladamsmith.com/blog/2010/12/oplop.html

    Related

    Coding Reliccodingrelic.geekhold.com21 people

    Non-blocking Programmers

    Coding Relic
    Personal · last shared 2025
    Michael Hanssontech.davis-hansson.com15 people

    An opinionated approach to GNU Make

    Michael Hansson
    Personal · last shared 2025
    The Morning Paperblog.acolyer.org606 people

    Local-first software: you own your data, in spite of the cloud

    The Morning Paper
    Personal · last shared 2026
    antirezantirez.com456 people

    The End of the Redis Adventure

    antirez
    Personal · last shared 2026
    Russ Coxresearch.swtch.com554 people

    Timeline of the xz open source attack

    Russ Cox
    Personal · last shared 2026
    Paul Smithmake.mad-scientist.net22 people

    The GNU make jobserver Implementation (2015)

    Paul Smith
    Personal · last shared 2025
    Nathaniel J. Smithvorpus.org123 people

    Why does calloc exist?

    Nathaniel J. Smith
    Personal · last shared 2026
    Dave Cheneydave.cheney.net271 people

    Why Slack is inappropriate for open source communications

    Dave Cheney
    Personal · last shared 2026