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

Top all-time · #788

H

Herb Sutter

Personal blog · gotw.caprogramming

Herb Sutter writes GotW.ca Home Page, a personal blog at gotw.ca about programming. Since 2008, 84 different Hacker News readers have linked it 102 times, most often “The free lunch is over: a fundamental turn toward concurrency in software (2005)”. No feed was found, so read it on the site itself.

No feed foundVisit the blog
102mentions?
6recommend?
84HN people?
2008–2026first – last linked?
Links on Hacker News per year · peak 10 in 2018

Sometimes recommended · 6 of 40 sampled comments recommend it?

Why HN links it

HN readers link Herb Sutter's gotw.ca mainly for the 2005 essay The Free Lunch Is Over on concurrency and for the Guru of the Week C++ articles.

Recommended for · 6 comments
Called seminal, a nice collection of gotchas, a great little book, and detailed on const and locks.

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. The free lunch is over: a fundamental turn toward concurrency in software (2005)
    34 people · 38 mentions · first linked 2008-11-27
  2. Ritchie, Stroustrup, and Gosling interview
    13 people · 20 mentions · first linked 2010-02-11
  3. Series of C++ programming problems
    6 people · 6 mentions · first linked 2008-04-04
  4. /gotw/008.htm
    3 people · 3 mentions · first linked 2011-06-12
  5. /publications/mill02.htm
    2 people · 2 mentions · first linked 2016-02-15
  6. /gotw/024.htm
    2 people · 2 mentions · first linked 2015-11-05
  7. /publications/mill18.htm
    2 people · 2 mentions · first linked 2018-04-29
  8. /gotw/081.htm
    2 people · 2 mentions · first linked 2013-01-15
  9. Oldie but goodie: Herb Sutter's "Guru of the Week" articles on C++
    2 people · 2 mentions · first linked 2009-02-05
  10. /gotw/066.htm
    2 people · 2 mentions · first linked 2014-02-21

What Hacker News says?

  1. These style of exploits remind me of "The Free Lunch Is Over: A Fundamental Turn Toward Concurrency in Software" (2005) - http://www.gotw.ca/publications/concurrency-ddj.htm > Chip designers are under so much pressure to deliver ever-faster CPUs that they’ll risk changing the meaning of your program, and possibly break it, in order to make it run faster. > ... > applications will increasingly need to be concurrent i…

    Comment linking /publications/concurrency-ddj.htm

    on “ZombieLoad: Cross Privilege-Boundary Data Leakage on Intel CPUs”
  2. Submitted Ritchie, Stroustrup, and Gosling interview as a story · 146 points

    HN discussion
  3. Right around 2002. http://www.gotw.ca/publications/concurrency-ddj.htm

    Comment linking /publications/concurrency-ddj.htm

    on “The 3dfx Voodoo1”
  4. Submitted The free lunch is over: a fundamental turn toward concurrency in software (2005) as a story · 115 points

    HN discussion
  5. >"To the point - you could ensure that compiler can de-virtualize your usage of structure (or class if you will) by adding "nonvirtual" to every method it implements or derives." Think it in this way. Many respectable people has been making a case to avoid inheritance[1][2]. What you are proposing would actually be an incentive to them. I don't know about you but the amount of functions that I actually override in m…

    Comment linking /publications/mill07.htm

    on “We have C++14”
  6. Submitted Interview with Dennis Ritchie, Bjarne Stroustrup, and James Gosling (2000) as a story · 56 points

    HN discussion
  7. http://www.gotw.ca/gotw/081.htm

    Comment linking /gotw/081.htm

    on “John Carmack's comment on Doom 3's code style”
  8. Submitted Interview with Dennis Ritchie, Bjarne Stroustrup, and James Gosling (2000) as a story · 44 points

    HN discussion
  9. > Sometimes you need to. You cannot entirely stack allocate an object that uses PIMPL. You actually can, if I'm not misunderstanding: http://www.gotw.ca/gotw/028.htm

    Comment linking /gotw/028.htm

    on “The C++ Build Process Explained”
  10. Submitted C/C++/Java have dominated programming for 30 yrs & are at a turning point [2000] as a story · 28 points

    HN discussion
  11. Well, there is a way to have them on the stack even with PImpl: http://www.gotw.ca/gotw/028.htm However I'd say it's an ugly hack which should only ever be used if you _really_ need the performance.

    Comment linking /gotw/028.htm

    on “The C++ Build Process Explained”
  12. Submitted The Free Lunch Is Over as a story · 23 points

    HN discussion
  13. Itani-who? But you won't when writing C++ unless you absolutely have to, because it's a major pita to encapsulate everything. Entire books [0] have been written about exception safety in C++. Getting it right in combination with RAII, (copy)-constructors and assignment operators is very tricky. Which touches the main issue with C++ from my experience, mixing foot guns with higher level convenience. Embedded linked l…

    Comment linking /publications/xc++.htm

    on “I love coding in C”
  14. Submitted The Free Lunch Is Over: A Fundamental Turn Toward Concurrency in Software (2005) as a story · 8 points

    HN discussion
  15. Not only disruptive to their industry, but game changing for those of us writing software. I remember reading all the hoopla over the loss of Dennard scaling 15 years ago (e.g. http://www.gotw.ca/publications/concurrency-ddj.htm ). Intel poked along at 2 and 4 core consumer systems for so long. The argument was always "no one can use more than X cores" - but software seems to trail hardware in these examples, not th…

    Comment linking /publications/concurrency-ddj.htm

    on “New AMD EPYC-based Compute Engine family, now in beta”
  16. Submitted Interview with the authors of C, C++ and Java (2000) as a story · 5 points

    HN discussion
  17. > I believe Java did this deliberately to avoid the trouble that C and C++ have with signed and unsigned integer types having to coexist. It did, from http://www.gotw.ca/publications/c_family_interview.htm > For me as a language designer, which I don't really count myself as these days, what "simple" really ended up meaning was could I expect J. Random Developer to hold the spec in his head. That definition says tha…

    Comment linking /publications/c_family_interview.htm

    on “A categorized list of all Java and JVM features since JDK 8 to 16”
  18. Submitted Oldie but goodie: Herb Sutter's "Guru of the Week" articles on C++ as a story · 5 points

    HN discussion
  19. sclangdon · 2019-08-20Recommends
    C++, rather than C, but there was a GOTW post about this years ago, which explains the situation in detail. http://www.gotw.ca/gotw/081.htm

    Comment linking /gotw/081.htm

    on “Why Const Doesn't Make C Code Faster”
  20. Submitted Interview with Dennis Ritchie, Bjarne Stroustrup and James Gosling as a story · 4 points

    HN discussion
  21. While I don't agree with not having unsigned as part of the primitive times, and look forward to Valhala fixing that, it was based on the experience most devs don't get unsigned arithmetic right. "For me as a language designer, which I don't really count myself as these days, what "simple" really ended up meaning was could I expect J. Random Developer to hold the spec in his head. That definition says that, for inst…

    Comment linking /publications/c_family_interview.htm

    on “C++ proposal: There are exactly 8 bits in a byte”
  22. Submitted The Free Lunch Is Over: A Fundamental Turn Toward Concurrency in Software (2005) as a story · 3 points

    HN discussion
  23. I expect that's because it was designed very well for the days of serial, in-order, static execution. But, CPUs today are all about pipelining and parallelism. Herb Sutter's "Free Lunch" has been over for longer than most people here have been writing software. http://www.gotw.ca/publications/concurrency-ddj.htm

    Comment linking /publications/concurrency-ddj.htm

    on “XXH3 – a new speed-optimized hash algorithm”
  24. Submitted The Free Lunch Is Over – A Fundamental Turn Toward Concurrency in Software as a story · 3 points

    HN discussion
  25. Signed arithmetic is generally only problematic when you hit the upper or lower bound. The right answer is almost never to use unsigned; instead, it's to use a wider signed type. It's far too easy to get things wrong when you add unsigned integers into the mix; ever compare a size_t with a ptrdiff_t? Comes up all the time when you're working with resizable buffers, arrays, etc. And no, Java did not choose signed by…

    Comment linking /publications/c_family_interview.htm

    on “The Little C Function From Hell”
  26. Submitted The Free Lunch Is Over: A Fundamental Turn Towards Concurrency as a story · 3 points

    HN discussion
  27. adambyrtek · 2011-12-18Recommends
    You are right, this has been predicted some time ago. The Free Lunch Is Over: A Fundamental Turn Toward Concurrency in Software[1] from 2005 is the seminal essay on this subject. [1] http://www.gotw.ca/publications/concurrency-ddj.htm

    Comment linking /publications/concurrency-ddj.htm

    on “Why have CPUs been limited in frequency to around 3.5Ghz for so many years?”
  28. Submitted C Family Interview as a story · 3 points

    HN discussion
  29. Easy, > Gosling: For me as a language designer, which I don't really count myself as these days, what "simple" really ended up meaning was could I expect J. Random Developer to hold the spec in his head. That definition says that, for instance, Java isn't -- and in fact a lot of these languages end up with a lot of corner cases, things that nobody really understands. Quiz any C developer about unsigned, and pretty s…

    Comment linking /publications/c_family_interview.htm

    on “Show HN: My hobby OS that runs Minecraft”
  30. Submitted The Free Lunch Is Over: A Fundamental Turn Toward Concurrency in Software (2005) as a story · 2 points

    HN discussion

Search all of HN for gotw.ca

Linked by the same people?