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

Top all-time · #7401

A

Aaron Ballman

Personal blog · blog.aaronballman.comprogramming

Aaron Ballman writes Ruminations, a personal blog at blog.aaronballman.com about programming. Since 2011, 10 different Hacker News readers have linked it 11 times, most often “Don't use the [[likely]] or [[unlikely]] attributes”. No feed was found, so read it on the site itself.

No feed foundVisit the blog
11mentions?
10HN people?
2011–2024first – last linked?
Links on Hacker News per year · peak 5 in 2023

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

Why HN links it

HN readers link Aaron Ballman's post on C++ [[likely]]/[[unlikely]] attributes, which argues they are full of footguns and that profile-guided optimisation is the better investment. Also linked for his C Charter musings.

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

Most-linked posts?

  1. Don't use the [[likely]] or [[unlikely]] attributes
    4 people · 4 mentions · first linked 2021-04-07
  2. What's New in C in 2023?
    2 people · 2 mentions · first linked 2023-10-02
  3. Musings on the C Charter
    2 people · 2 mentions · first linked 2024-01-01

What Hacker News says?

  1. No, they are intended for helping with performance (letting the compiler know which branch of execution should it make the "default" for the CPU). But see "Don’t use the [[likely]] or [[unlikely]] attributes": https://blog.aaronballman.com/2020/08/dont-use-the-likely-or...

    Comment linking /2020/08/dont-use-the-likely-or-unlikely-attributes/

    on “All C++20 core language features with examples”
  2. Submitted Musings on the C Charter as a story · 56 points

    HN discussion
  3. Try with http: http://blog.aaronballman.com/2023/12/musings-on-the-c-charte... For me the original https link fails with "SSL received a record that exceeded the maximum permissible length. Error code: SSL_ERROR_RX_RECORD_TOO_LONG" The http link redirected to safebrowse.io/warn.html where there is a "Proceed Anyway" link to get to the content.

    Comment linking /2023/12/musings-on-the-c-charter/

    on “Musings on the C Charter”
  4. Submitted Musings on the C Charter as a story · 55 points

    HN discussion
  5. What everybody should read before using these (Aaron Ballman is a Senior Staff Compiler Engineer for Intel and is the lead maintainer of the Clang open source compiler): https://blog.aaronballman.com/2020/08/dont-use-the-likely-or...

    Comment linking /2020/08/dont-use-the-likely-or-unlikely-attributes/

    on “C++ Attribute: Likely, Unlikely”
  6. Submitted High-level overview of remote thread injection on Windows as a story · 3 points

    HN discussion
  7. See also: https://blog.aaronballman.com/2020/08/dont-use-the-likely-or... tl;dr: these attributes are absolutely full of footguns because the standard is not explicit about precedence and nesting, and you should probably avoid them and prefer to spend time investing in PGO. It’s very easy to make sane-looking code containing these attributes which does the exact opposite of what you intended. Note that this issue do…

    Comment linking /2020/08/dont-use-the-likely-or-unlikely-attributes/

    on “C++ Attribute: Likely, Unlikely”
  8. Submitted Don't use the [[likely]] or [[unlikely]] attributes as a story · 2 points

    HN discussion
  9. Submitted What's New in C in 2023? as a story · 2 points

    HN discussion
  10. Submitted What’s New in C in 2023 as a story · 1 points

    HN discussion
  11. Submitted Implementing a four-bit adder with C++ template metaprogramming as a story · 1 points

    HN discussion

Search all of HN for blog.aaronballman.com

Linked by the same people?