Pagination
The human mind, though a marvelous and versatile creation, is limited. It is often said that humans have difficulty remembering more than three or four, and rarely more than seven, different items simultaneously. Though it is this same principle that makes games like Simon Electronic Memory fun and exciting, it is also one reason why being fed far too much data at once can feel stressful and overwhelming. Politicians frequently exploit our limited memory and attention span by "document dumping" large amounts of information in an effort to hide important nuggets. Our website design is especially attuned to this concern, and pagination plays a central role in making our models accessible and user-friendly. It is integral to the user experience that visitors can clearly and coherently view and navigate through the content of our website. Thus, pagination is central to our dual goals of egalitarianism and accessibility.
Problems
Prior to implementing pagination, our website did not have a clear methodology of displaying content. Lacking a better option, we simply displayed all the content to the user. This, unfortunately, meant that in the Representatives model, a user had to scroll through more than four hundred representatives in order to find their member of Congress. This sort of dynamic was unacceptable. It is far too easy to get lost in a crowd. Our site was slowly turning into what we have wanted to fight back against – through its poor navigation, it continued the practice of information imbalance that prevents laymen from becoming involved in the political process. Loading all of our data onto one page was both cumbersome for the user and memory intensive for the browser because we had to load in and render each representative/party/district card component individually. Our site was both slow and unhelpful.
Solution
Our silver bullet solution to these problems involved displaying only a portion of all the content at a time. Though that may seem suspicious from the outset, it is important to note that though data is hidden from page to page, all of the same data from previous iterations of the project remained readily accessible to the user. Now, however, it was far more than merely accessible. For example, on the representatives model, we only display 25 representatives at a time, and the user can choose to navigate through pages of the results to find their choice. This provides a better user experience for the user, as it was easier for the user to navigate through all the results, and also was less memory intensive, as fewer card and content components were being rendered at a time. We feel that this solution was optimal given our constraints and results in a better end-user experience.