A reason to do not use LiveData, ViewModel and Room
The short story: after the digging into the rudimentary documentation, searching stackoverlow for magic gradle directives and preparing the terrible boilerplate of databases, repositories, factories we end up with: