At first sight, the File Watcher concept seemed like a really great idea, but the more I'm using them, the more I wonder why that whole concept was added instead of just re-using the existing compiler infrastructure and allowing for user-created compilers.
Let's say I have a project with a bunch of LESS and Typescript files. I don't check in their outputs... that would be like checking in .class files. So when I open up a project I want to build the project. File watchers don't have any provision to do so. Furthermore, the whole file watcher design is a complete nightmare when trying to develop, because the error screen pops up all over the place (no, I cannot figure out a setting that feels 'just right').
It just seems like the existing workflow is much better and could have been used to add these compilers. You edit files, you 'Build' the project, you run/test the project. You can still have background compilers, but this whole file watcher concept seems out of place compared to the overall workflow of the rest of Intellij.