144

Several references to the quote "There are only two hard things in Computer Science: cache invalidation and naming things" can be found, such as Martin Fowler's blog and others.

I'm unable to find the source of this quote, has he ever said it?

Andrew Grimm
  • 38,859
  • 36
  • 141
  • 342
Vitor De Mario
  • 1,541
  • 2
  • 9
  • 5
  • 3
    Have you reached out to Netscape-ians? Phil was Principal Curmudgeon there. http://lacquer.fi/pauli/blog/2011/05/on-naming-things-and-the-ceo-programmer/ – LAFK says Reinstate Monica Nov 23 '14 at 18:17
  • @DrZ214 1996 or 1997, as [Tim Bray remembers](https://twitter.com/timbray/status/817025379109990402?cn=cmVwbHk%3D) – dumbledad Jan 05 '17 at 15:39
  • 2
    Unfortunately there will never be a definite answer, since "Phil and Jan were killed in a traffic accident near Milan, Italy on Friday June 20, 1997". – guettli Feb 23 '17 at 09:49

2 Answers2

199

As his only son, and colleague with him at Netscape from 95-97, I can attest that my dad did indeed throw that quote around, on more than one occasion. I'm fairly confident that he originated it (he was fond of coming up with clever quippets), though I haven't been able to figure out how it disseminated so widely over the past couple of decades. I'll keep looking around in old web archives and mails to see if I can dig something up.

Reference from David Karlton's personal blog at karlton.org: https://www.karlton.org/2017/12/naming-things-hard/

Murven
  • 101
  • 3
David Karlton
  • 2,091
  • 1
  • 8
  • 2
  • 16
    [Welcome to Skeptics!](http://meta.skeptics.stackexchange.com/questions/1505/welcome-to-new-users) It is always exciting when someone directly involved in an issue graces us with an answer, but unfortunately there are so many trolls on the Internet, we can't accept an anecdote at face value. If you can find a reference in an old web archive, or link to somewhere where you say this and we can verify who you are, that would be fantastic. Thanks! – Oddthinking Aug 11 '17 at 02:38
  • 2
    If you'd like to share this anecdote on a blog or other website of yours, then that website can be quoted and used as a reference for your answer here. Plus, it'd have the added advantage of sharing the information more broadly! – Nat Jan 29 '18 at 01:16
  • 1
    How can I cite it in a paper I'm writing? – Shamoon May 30 '19 at 13:10
  • 6
    I was going to say that we should add "identity verification" to the original list of things that are hard, but I suppose this can fall under "naming things". :-) – Neil Laslett Apr 29 '20 at 02:22
  • 3
    @Oddthinking, would this count as a reference even if it is recent? https://www.karlton.org/2017/12/naming-things-hard/ – Murven Jul 10 '20 at 21:01
  • @Murven: Yes! Would you like to edit it in? – Oddthinking Jul 11 '20 at 07:47
  • I would be willing to bet that it disseminated so well because (1) *everyone* finds those two things rather tricky (2) it's funny because "naming things" doesn't *sound* like part of computer science per-se (though it's actually a rather important activity in most any field). Unfortunately, I do not know of any way to settle such a bet. – SamB Mar 18 '22 at 19:30
  • FWIW: 1) Martin Fowler says he first heard it from Tim Bray: https://martinfowler.com/bliki/TwoHardThings.html 2) The timing David mentions (95-97) matches with Tim Bray's comments on Twitter. https://twitter.com/timbray/status/817025379109990402?cn=cmVwbHk%3D 3) And you can also see David responding to those comments on twitter, so another validation that the person writing this answer is, in fact, David. – Steven J Owens Jul 11 '23 at 18:06
  • If this is something he said many times over a period of years, it makes sense that there would be no canonical reference. – Mark Ransom Jul 19 '23 at 21:23
35

Tim Bray says on Twitter:

Phil [Karlton] said it, I reported it, someone else added on the “off-by-one”.

Leon Bambrick replies that he added off-by-one.

Samu Lang
  • 451
  • 4
  • 4
  • 12
    I'd like a little bit more than just one person saying he "reported it". Where did he report it? I found only http://www.tbray.org/ongoing/When/200x/2005/12/23/UPI which is dated 2005 but a google search for "cache invalidation and naming things" returns random results as far back as February 2001. – Vitor De Mario Jan 21 '15 at 21:27
  • 1
    I don't remember who added the "off-by-one errors" but I attest that I added the second "cache invalidation." `There are only two hard things in Computer Science; cache invalidation and naming things and one-off errors and cache invalidation` – K. Alan Bates Feb 16 '23 at 22:09