Exclude hidden files when searching with Unix/Linux find?
It seems negation glob pattern is not well known. So you can use:
find . -name "[!.]*"
I found this here:
find . \( ! -regex '.*/\..*' \) -type f -name "whatever"
This doesn't answer your question, but for the task of finding non-hidden files I like to let find find all the files then filter with grep.
find . -type f | grep -v '/\.'
Similar to your approach but perhaps a bit simpler.