Originally published on eve.gd on 12 October 2023, last updated 6 September 2026.
Read this post on the web (with images, PDF and citation details)
A recent XKCD caused some amusement: “Vocabulary update: I learned another word today, bringing my total to twelve”.
We wondered whether there might be possible formulations of this joke that also contained the unique character count, so I wrote the following python script:
import num2word
import numpy
def find_self_reference():
sentence = "I learned another word today bringing my total to {0} words and {1} letters"
words = 12
for i in range(0, 1000):
num_word = num2word.word(i)
final_words = words + numpy.char.count(num_word, " ") + 1
final_num_words = (
int(final_words)
+ int(numpy.char.count(num2word.word(int(final_words)), " "))
+ 1
)
sentence_sub = sentence.format(num2word.word(final_num_words), num_word)
characters = len(set(sentence_sub.replace(" ", "")))
print(f"Needed {characters} characters but got {i}.")
if characters == i:
print(sentence_sub)
return
This gives us the following results:
or
Good to have a hobby.
This reference list has been generated, in many cases, through an automated process and may therefore contain errors or incomplete metadata. It is provided purely as assistance for finding the items mentioned within this post.
1. ‘2839: Language Acquisition’, explain xkcd <https://www.explainxkcd.com/wiki/index.php/2839:_Language_Acquisition>
https://www.explainxkcd.com/wiki/index.php/2839:_Language_Acquisition