Simple things should be simple. Complex things should be possible.
To make something generic is to make the simple things complex.
Simplicity does not precede complexity, but follows it.