It's a trivial example, but a valid one. Those sorts of "it works great as long as you remember..." things are complexity, often unneeded. There are more severe examples of this involving frameworks with assumptions being too hardcoded (or softcoded!) as well.
Some are essential complexity, sure. But many aren't.
Oh come on. You're complaining about a function name (created decades ago) in a system level language as an example of 'needless complexity'. That's not complexity - that's just a quirky name kept around for backwards compatibility. By the way if you don't like 'creat' or find it difficult to use then don't use 'creat' use 'open' with the relevant flags. Any complexity around C programming does not come from this ... Honestly.
I have yet to see someone actually point out a good example of needless complexity in programming - something that the blog author is complaining about that apparently you agree with but cannot come up with a single reasonable example.
Some are essential complexity, sure. But many aren't.