It seems like a simple thing on the face... But then it becomes a lot more complicated as soon as you get past the surface, because collaborations can contain content from every app in the system. For example, in order to show if there is read/unread content for just a single collaboration (and also which is the latest post), it becomes apparent that every app and every container ( forums, galleries, databases, etc ) inside the collaboration must be queried and cross referenced with permissions to see "where" the latest post is at that you actually have permission to see. This gets expensive quick, and will become only more expensive the larger the collaboration gets ( in terms of SQL, memory, processing, etc ). For a category, that problem only becomes more compounded because now you have to lift that load for every collaboration in the category, and every time the page is viewed because it could change from moment to moment, and it also cannot be cached because it depends on not only site permissions, but the permissions within the group also. Because of this, categories will only show the latest collaboration to have activity. You may think... well if you know that, then why can't you just show what the latest post was? It's because you may not actually have permission to see what the latest post was in that collaboration! So in reality, the latest ( that you are actually able to see ) may be in a different collaboration... but in order to know that we go back to the problem of having to check every collaboration in the category.