All communication methods are built around caching, which keeps the results of recent requests available for future operations. The cache is shared between different methods. For example: author.books # get books from database author.books.size # use the cached copy of the books author.books.empty? # use the cached copy of the books But what if you […]