A few days ago, an Enterprise App user asked me if lazy loading is better than pagination. My answer: Totally! Pagination is an old, so called, web 1.0 solution. At that time, no AJAX where possible at all.
It's not very usable to have a lot of 1, 2, 3, 4, 5, 6, ..., 100 links. Lazy loading (á la Vaadin's way) not only is easier to use but to understand for the end user. If a user sees a scroll bar, she will understand that scrolling that thing will cause the rows to... well, scroll. No need for further explanation about it (is there any explanation to make?). Chances are that pagination will cause most novice users to get lost, at least at the first time they use the software.
Sometimes scrolling through the entire data set is certainly necessary and pagination could make that task a pain in the neck. I think pagination is OK if we have, let's say, seven pages at most (tanks Miller). If the number of pages is uncertain at design or development time, I would definitely try a different approach. Nevertheless, if the target client devices allow it, I will go with lazy loading.
I don't know why the heck I still used pagination for that much time. I think I just get used to use pagination for every table. DisplayTag could be guilty, but even DisplayTag can be configured to use new appealing delectable lazy loading.
Some of you will argue "Google uses pagination". I must admit there are situations where pagination makes a lot of sense. I can't imagine an almost infinite page with all the results of a Google search. Also, I feel very comfortable reading online books in a paginated user interface. But a lot of debate is happening out there. Even Google itself prefers view-all search results.
Another great thing about lazy loading, specially (but not exclusively) when used in tables, is that it is a good way to get your web applications to appear more modern, more web 2.0. Just note how Facebook, Twitter and other heavyweights use lazy loading to show their data. Go ahead, modernize your web apps by using some lazy loading.
I have been a ProjectLocker and Assembla user for years. They both offer excellent tools for software project management. However, now I'm moving to GitHub, 'cause you know, I'm becoming kind of an open-source activist (don't take that too serious, it doesn't mean that I'm pretending to be the next Stallman or something). GitHub seems to be better suited for social open source projects.
I have written my share of code, so it's time to give back something to the world (also, I'm publishing all that code to raise my developer career but it doesn't sound like the thoughts of an open-source activist). Check it out, tons of code for you: QBasic, C, C++, PHP, and Java (mostly Java), and some projects using well known Java technologies such as Spring Framework, Hibernate, JPA/TopLink, Struts 2, SiteMesh, DisplayTag, Vaadin and Enterprise App).
Enterprise App users! now you can follow the add-on development here. I will migrate all issues and tasks to GitHub to handle everything from one place. You can fork and send patches (through pull requests) if you want to.
As some of you already know, I will be making a big noise about Enterprise App and InfoDoc Pro next month. Big noise without a new website is not worthwhile. So I acquired a hosting service (no free advertising for them right now), a new domain (alejandrodu.com), and a bunch of new ideas to make Enterprise App and InfoDoc Pro shine as a golden Java coffee cup (or at least as the yellow one in the picture).
So far, Enterprise App has more than 600 downloads at Vaadin Directory and I'm aware of more than 15 projects using it worldwide. I would like to thank all license buyers for supporting this web site as well as the add-on itself.
InfoDoc Pro is currently near a stable release version. Thanks to Thota Software Solutions, Aio Technology S.A.S. and Colombitrade S.A.S. for all the feedback and financial support for the project.