I'm blown away of how much the ViewModel reduces boiler plate. I also find that I much more seldom create member fields pointing to input nodes, and in general I have less coupling between the UI elements when I use ViewModel. I didn't anticipate that at all.