When a tool supports both regular expressions and literal strings, which should be the default?
If you default to regex, users can match more strings than they realise (e.g. `foo.txt`) or less (e.g. `foo(bar)`).
I typically see regex as the default, but I prefer the opposite.
Related Posts
Suppose you want to make a small, hackable interpreter, so you write an AST walker.
Could you recover performance by supporting lightweight threads that use all the CPUs?
The Python GIL preferred single threaded performance over multithreading, this is the opposite.
Programming languages usually try to minimise undefined behaviour.
What if you did the opposite?
How much UB could you have whilst still being (theoretically) usable?
I've worked at companies where buying more computers was more affordable than developers, and I've also been at places where it's the opposite.
It's really weird having the different mindsets. Sometimes it even varies between teams and I rarely predict it in advance.