Remarkable, sobering discussion of how hard it is to write bytes to a file robustly: https://danluu.com/deconstruct-files/
APIs are subtle, filesystems have different safety modes, they sometimes discard errors, not everyone complies with POSIX, and sometimes hardware doesn't meet its spec!
Related Posts
There are *so many* ways that reading a text file can fail.
Maybe it doesn't exist, it's a broken symlink, it's actually a directory, it's not the encoding you expected, or perhaps you just don't have the correct permissions.
Reporting good errors is surprisingly labour intensive.
Designing UIs is such a hard problem.
Sometimes I try a bunch of options and I settle on "this one seems the least annoying".
I hear people say that Go is often hard to search online (hence sometimes "Golang"), but the vast majority of language names are common words. Names with punctuation (C++, C#) are hard too.
Is this a big problem in practice? "Perl" isn't a dictionary word, but it's an exception.