The biggest problems
were encountered with trying to process data from more than one source. Most of
the tools we tried were best when a single source was handled. This led us to
back away from combining data feeds, and to having separate feeds for different
elements. The kinds of difficulties we encountered were not that different from
the kinds faced when doing data integration inside the enterprise, although the
web data integration tools and technologies are more limited.
RSS may be convenient
and popular, but it is a very limiting technology because of the inflexibility
and inability to handle more data than a title and description. For business
applications, a protocol like Atom is much better suited for passing data
because it is extensible. Unfortunately we ran into challenges with every tool
we used when attempting to consume data via Atom instead of RSS.
The tools are all
relatively new and we had difficulties with some of the rough edges with each
of the products we were using. The biggest surprise was the inability of most
tools to consume Atom feeds. We were less surprised by the quirks of the user
interfaces, since they were all web-based and complex web-based UIs have always
been challenging.
We were happy with
our ability to produce a web-based application that combined data and display
elements, and with built-in interaction between components on the screen. Doing
this type of work even a few years ago required much deeper skills in arcane
areas. While ease-of-use is not up to par for end users, developers will
definitely be more productive. We were able to build this mashup from start to
finish with about 9 hours of work, including all of the data extraction
(excluding time spent learning the tools).
1. Plan the data
contents before doing anything else, and source most of the data before
starting to build the UI. Backtracking when we couldn't obtain certain data
required us to rebuild the entire UI several times.
2. Keep the data feeds simple and discrete. The data extraction/integration tools are not yet capable of addressing moderate to high complexity integration requirements.