When selecting an app with the app switcher (CMD+TAB) it will do nothing if the window happens to be minimized (or the app is active but doesn't have windows open).
In this answer I was informed that you can hold OPT to maximize it.
Now, I don't really understand the UX. Why is not bringing the windows to the foreground the default? It seems to me pretty natural that if you select an application you want to open it and not a possible "do nothing" event depending on the last state the window was in. Are you supposed to remember the state of all your windows to see if you have to press OPT or not? Or press always OPT, which is tedious?
Is there a way to make "simply always show the window" the default?