First, I have a problem with rewriting common utilities (like find, which also supports more search functionality than regex) while changing flags (e.g. `i` to ignore case to `s` - incidentally, grep also accepts `i` to ignore case). It makes it harder to explore the system interactively, particularly for beginners.
Second, the utility already exists, and this version is significantly slower:
> time ./ff '.*.cpp' ~/src/ > /dev/null
real 0m1.195s
user 0m0.488s
sys 0m0.671s
> time find -E ~/src/ -type f -regex '.*.cpp' > /dev/null
real 0m0.880s
user 0m0.407s
sys 0m0.425s
But wait! This is a totally unnatural use of find. If we use find like users actually do, we get even better performance: time find ~/src/ -name '*.cpp' > /dev/null
real 0m0.553s
user 0m0.181s
sys 0m0.363s
Hardly scientific. But it begs the question: who is this for?