NewsStand was originally designed as a web application but can now be run on a number of platforms, including as an app, and also supports a gesturing touch interface  as is common on smartphones and tablets. Some of the principal issues that arise in the construction of NewsStand include how to cluster the various articles in the RSS feeds based on the words that they contain and, of equal importance, the time at which they arrive and the velocity and acceleration of the cluster's rate of growth, how to identify words that correspond to geographic locations (known as toponym recognition), and, when the identification is positive, how to resolve any ambiguities (known as toponym resolution) [3,4,5]. In addition, the images and videos associated with members of the cluster are identified and grouped together . The result is a significant step forward in the emerging field of computational journalism.
Sponsored in part by NSF Grants IIS-07-13501 and IIS-08-12377
When using a mouse interface, NewsStand enables two types of interaction:
The web version of NewsStand can also be run on a device with a gesturing touch screen interface where there is no mouse or touch pad (e.g., Apple products such as the iPad, iPhone, iPod Touch, and also devices powered by Android). If you want to take advantage of the gesturing touch screen interface, then on the Apple products where no mouse or touch pad is present, you will need to run the web version using Safari, although on a device powered by Android, NewsStand works with the default Android browser. Note that the look and feel of the user interface differ slightly when using a mobile device with a small screen. In addition, we observe that the Apple MAC also recognizes some of these gestures (scroll and zoom) while having both a touch pad and a mouse interface. In this case, again, you will need to run the web version using Safari.
Of course, the available modes of interaction may limited on the platforms where no mouse is present. On these platforms, the effect of a click action is achieved by a tapping action, while the hovering mode of interaction is not always available in its full generality, although on some platforms some of its effects are achieved by a combination of an explicit scrolling or panning action (the difference depends on whether the motion is vertical or horizontal, respectively) and an implicit tapping action.
The events above perform some of the actions to be taken upon hovering provided that the underlying platform supports that particular aspect of hovering. For example, in the web version of NewsStand, one of the effects of hovering is to highlight the fact that certain locations on the underlying visible area (i.e., which is being displayed such as a map) have information associated with them. When the pointing device actually hovers over one these locations, then an information box is automatically displayed. This action only happens when using the Bing Maps API. In the case of the Google Maps API, you must click (or tap) on the actual location in order for the information box to be displayed. Thus this automatic information box display feature is only available on the desktop and laptop web version using Bing Maps.
The same url is used to access the web versions regardless of the platform. Most of the instructions provided here pertain to the web version although some comments are also made about the app versions where the user interface and the semantics of some of the operations are different.
A YouTube video narrated by Prof. Hanan Samet demonstrating the web version of NewsStand for news gathered on October 8, 2009, and with a slightly older user interface, can be viewed at:
Once you start the video, it is best to view it in full screen mode. This can be done by clicking on the button in the lower right corner of the YouTube screen (a small TV picture tube).
Before using NewsStand [1,2], it helps to repeat that NewsStand provides a means to access as many as 8,000 newspapers (really RSS feeds) by either topic or location. The NewsStand backend is constantly looking at RSS feeds of newspapers, and related news sources, and summarizing the contents of the articles by topic. This is achieved by first examining the feeds and extracting the articles, as well as the identifying the associated images  and videos, while discarding extraneous matter such as, but not limited to, advertisements. At the moment, NewsStand only includes articles in English and ignores non-English feeds, when they can be identified. The text of each article is represented by a feature vector based on the Term Frequency-Inverse Document Frequency (TF-IDF) concept which corresponds to the ratio of the number of times a word w appears in document d over the total number of documents in a document corpus that contain w. A high TF-IDF score for a word w means that w appears often in document d while not appearing often in the document corpus. The feature vector of a document d is obtained by only extracting those words in d whose TF-IDF score is greater than some pre-determined threshold value. Documents with similar TF-IDF scores are clustered together.
In addition, NewsStand analyzes each article to determine its spatial scope by looking at the words and identifying which ones correspond to geographic locations (known as toponyms) and their actual position (the entire process is known as geotagging ). This is not easy as context is quite important (e.g., the term "Jordan" may refer to a country, a river, or a person). In addition, once it has been determined that a word is indeed a toponym (a process known as toponym recognition), then its actual corresponding location must be determined (a process known as toponym resolution). Again, this is not easy as many locations have multiple interpretations (e.g., "London, UK" or "London, Ontario, Canada", and likewise for "Paris, France", "Paris, Texas", or even "Paris, Ontario, Canada"). This is done by exploiting linguistic cues such as knowledge of parts of speech, as well as context which involves knowing the reader and subject scope of the news source [4,5].
There are two ways (termed modes) of using NewsStand corresponding to the two basic queries that it supports:
The first mode is commonly referred to as "Top Topics Mode" or "Text Mode". This query is also known as a feature-based query. In this case, assuming landscape (portrait) mode, the left (top) pane shows the top story clusters, ranked in some order described later, from top to bottom of the visible part of the display screen. For each story cluster, a headline and link are provided to a representative article chosen in a manner described later as well as some text context. Clicking (or tapping when using a gesturing touch screen interface) on the headline yields the full text of the actual article. Moreover, links are provided to all of the remaining articles in the cluster regardless of knowledge of the reputation of the source, as well as to a collection of images and videos associated with members of the cluster (in the app version this information is accessed by tapping on the appropriate corresponding icon).
TO DO: How to choose the representative article from a well-known and reputable source, Why restict discussion to Google Maps API below? Locations do not seem to have markers in Top Topics Mode without having to do something special in app. Brendan?
As you hover the mouse over the clusters (or if you tap the display in the area of the text context when using a gesturing touch screen interface with the Google Maps API) in the left (top) pane, the most relevant locations to the selected cluster are displayed on the map in the right (bottom) pane of the display using what we term "markers" that in this case are icons that correspond to a rough guess as to the topic type of the articles that comprise the cluster which currently includes general news, business, science and technology, entertainment, health, and sports. You can restrict the cluster topic type to be one (or several in the case of the app version) of the above topics or enforce no restriction in which case all of the cluster topic types can appear in the left (top) pane, and locations mentioned in the highlighted cluster and displayed in the right (bottom) pane with the appropriate icons.
Assuming landscape (portrait) mode, hovering the mouse over the icons in the right (bottom) pane (or tapping them when using a gesturing touch screen interface with the Google Maps API) results in the display (pop up) of an information box or bubble which contains a sample text snippet from an article in the cluster that mentions the associated location as well as additional information including links to other articles in the cluster, associated images as well as videos, the text of the article, links to other mentions of the same location in the article, links to mentions of other locations in the article, and links to other headlines of additional clusters associated with this location.
In order to obtain the true effect of the feature-based query, you can restrict the scope of the "Top Topics Mode" to a single keyword by entering it in the "Search" box, and then clicking the "Go" button. At this point, the contents of the left (top) pane are once again clusters; however, they are clusters with respect to the designated keyword. The search keyword is deactivated by depressing the "X" button next to the keyword in the "Search" box. In the app version, the keyword is displayed on the screen with the "X" positioned immediately to its right.
Notice the presence of a slider at the top of the right (bottom) pane, regardless of whether a keyword is used, whose movement to the right (left) allows you to increase (decrease) the maximum number of locations for which icons are displayed for the highlighted cluster. The identity of the locations for which icons are present depends on the number of times the location is mentioned in the articles that make up the cluster, with priority given to the ones that are mentioned most frequently. As we pointed out, motion of the slider to the right increases the number of locations with corresponding icons thereby enabling the display of locations with fewer mentions. Of course, there is an upper bound on this number which is determined by a system chosen threshold related to the certainty that the location is correct and the number of locations that are actually found in the cluster.
The presence of this slider is precisely the novel aspect of NewsStand that enables it to answer the feature-based query of "Where is topic Y happening?". The algorithm that performs the display ensures that all of the desired locations can be seen, and thus the area displayed is the minimum bounding box of the locations. As the slider is moved to the right, there may be more than just an increase in the number of locations that are visible. In particular, some locations may cease to be visible. This situation arises when locations correspond to containers whose elements have suddenly become visible. For example, suppose that the country Sudan (serving as the container of its cities) is one of the locations. Now, as the number of displayed locations is increased, it may be the case that the resolution (also sometimes referred to as the zoom level, but measured here in terms of number of locations that are visible in contrast to the conventional definition which is in terms of the level of detail in the visible area which invariably lead to a smaller visible area) also increases, and thus mentions of names of cities contained in a country are also included as well as the name of the country itself. However, as we pointed out, this means that the size (i.e., spatial scope) of the minimum bounding box is likely to increase as the slider is moved since the area spanned by the locations changes. In particular, the problem here is that as we increase the number of displayed locations, it is likely (but need not always be the case) that the additional locations are much farther from the centroid of the original minimum bounding box which means that the minimum bounding actually gets larger. This is somehow contradictory of the previous analogy to a a zoom in where the visible area gets smaller. Actually, what should happen is that the visible area now exceeds the size of the window in the right (bottom) pane and thus we would need to pan the contents of the window to see all of the markers if the scale level is to remain the same. This expansion of the minimum bounding box is not currently implemented.
As an example of the type of changes that we must deal with, consider the situation that the display is restricted to just a few locations. In this case, often, only the names of containers such as names of countries (e.g., Sudan) are mentioned a sufficient number of times to warrant being displayed. However, as the number of locations to be displayed increases, the names of cities (e.g., Khartoum, Juba, etc.) are also present. In this case, in order to avoid confusion, at times, the display of the name of the container (e.g., the name of a country) is suppressed in favor of the display of the names of the contained entities (e.g., the names of cities in the country).
NewsStand keeps track of the container relation and of the relative number of mentions of the container and contained entities so as to support the aspect described above. Of course, this means that some instances of mentions of the container entity (e.g., country name) would not be accessible via use of the associated information boxes that show text snippets with the name of the relevant location. This discussion is also relevant when the names of the contained entities are mentioned more often than the name of the container (e.g., "US" and "New York"). In this case, when the number of visible locations is increased so that the name of the container is also one of the displayed locations, NewsStand may choose not to display it. A typical example of when this issue arises occurs when encountering mentions of the form "city-name, state-name" where "state-name" is included to help avoid ambiguity but subsequent mentions of "city-name" usually omit the qualifier "state-name". In such cases, it is clear that there is no need to have "state-name" as one of the displayed locations even if the number of times that it is mentioned (e.g., possibly due to multiple uses of it as a qualifier) now warrants its display.
In database parlance, what we have here is an instance of a "Top k" query where k corresponds to the number of visible locations for a particular cluster or a cluster that contains a particular keyword. In other words, we have a "Top k Locations" query. Responding to this query is quite challenging as we need to be able to keep track of the container relation. Also, we must have a more precise definition of "mention" of a location. In particular, we may want to use some weighted function so as to give a greater weight to recent mentions of a location (i.e., the time of publication of the articles in which they are mentioned). This is all because our data is dynamic on account of our streaming environment rather than being static.
The second mode is commonly referred to as "Map Mode" or "Full Screen Mode". This query is also known as a location-based query. In this case, NewsStand provides the capability of reading over 8,000 newspapers (RSS feeds) by the use of a map. As mentioned earlier, the result of processing the RSS feeds is a set of clusters of articles by topic. Initially, the map contains icons at locations corresponding to the k most representative locations where "representative" takes into account factors such as importance measured by currency, size and rate of growth of the cluster in terms of velocity and acceleration, as well as a desire to have a good spatial distribution in the area being displayed. Thus as you zoom in, icons at additional locations will appear. Hovering over an icon in the Bing Maps API (or clicking on it in the Google Maps or Google Earth APIs, or tapping it in the case of a gesturing touch screen interface with the Google Maps API) yields one of the following two results:
You can view a particular place or region on the map by zooming in to it via the zoom and pan controls of the mapping API. Two shortcuts are available in the web version labeled "Local" and "World" ("L" and "W" on the mobile devices, other than the iPad, where the screen is small), corresponding to a zoom-in operation to your location (determined using your IP address when you are running on a device without a GPS), and a zoom-out to a world view, respectively. The only caveat about the "Local" mode is that the Browser will alert you that NewsStand wants to know your location and whether or not you are willing to share your location information, as well as if you want to remember the location for NewsStand in which case you will not be asked this question the next time you ask for the "Local' shortcut. Alternatively, you can view a particular location by typing its name in the "Locate" box, and then clicking on the adjacent "Go" button. Note that the effect of the "Locate" command in "Map Mode", unlike the "Search" command (described in greater detail below) is very temporary in the sense that the performance of any subsequent action on the map such as a pan or a zoom could result in the location being no longer visible. Therefore, the contents of the "Locate" box are removed and replaced by the word "Locate" once the command has been performed so that the command can be reactivated. This is only necessary in the web version as the app version has a "Locate" button rather than a box.
When using the "Locate" command, there could be several interpretations for the location as happens for "Athens", in which case you may need to qualify it like "Athens, Greece" or "Athens, Georgia", etc. The problem here is that the user may not know of the existence of several interpretations and thus does not realize that the reference should be qualified. The pitfall is that NewsStand tries to provide the right interpretation of the location by using the mapping API through its forward-geocoding service which, when using the Bing Maps API, is often the one that is as close as possible to where the user was last focused (i.e., pointing at). In fact, different mapping APIs may yield different responses. For example, the Google Maps API disregards the position of where the user was last focused. In this case, the interpretation could be based on a prominence ranking such as population, in contrast to the Bing Maps API which is more likely to use spatial scope of the viewing window.
Using the "Map Mode", it is interesting to see the local nature of the headlines of the articles associated with the location. On some mapping APIs (e.g., Bing Maps), you can also specify the area of interest graphically by drawing a bounding box on the map with the result that the specified region fills up the display. The bounding box is drawn by holding one finger on the control key and depressing the left button of the pointing device (i.e., mouse) at a location on the map and dragging the pointing device (while the left button is still depressed and one finger on the control key) in the desired direction (northwest, northeast, southeast, or southwest), and releasing the button and the control key once the pointing device has reached the desired destination, which is the diagonally opposite corner of the bounding box. This defines the desired rectangular viewing window.
A variant of the feature-based query can also be executed in "Map Mode". This is done by using the "Search" box where a keyword is entered, followed by pressing the button labeled "Go", which activates the search. The result is a set of clusters with respect to the designated keyword. Once a search has been activated, all subsequent searches will be restricted to the keyword. However, the searches are restricted to the displayed part of the map (in other words, they are spatially restricted and are analogous to a spatial join operation). This search keyword is in force on all subsequent map manipulations via pan and zoom while in "Map Mode" as well as when changing the sources, layer types, article types, and even the mode (i.e., when changing from "Map Mode" to "Top Topics Mode"). The search keyword is deactivated (resulting in the removal of the spatial join condition) by depressing the "X" button next to the keyword in the "Search" box. This also has the effect of replacing the contents of the "Search" box by the word "Search". In the app version, the keyword is displayed on the screen with the "X" positioned immediately to its right.
Again, while in "Map Mode", notice the presence of a slider in the upper right corner of the map whose movement to the right (left) allows you to increase (decrease) the maximum number of locations for which icons are displayed. Although this feature seems very similar to its analog in the "Top Topics Mode," its semantics are actually very different. In particular, each additional location corresponds to potentially increasing the number of viewable clusters although this is achieved by increasing the number of locations for which icons are displayed. The presence of this slider represents a second novel aspect of NewsStand as it enables it to answer the location-based query of the form "What is happening at X?" where contrary to conventional assumptions X is not a location but is actually a region corresponding to the part of the world that is viewable. Thus moving the slider to the right increases the number of clusters that could be viewed as these clusters are associated with the various locations although the clusters associated with the additional location could be the same as the clusters associated with the existing viewable locations. Thus we see that the number of viewable clusters resulting from moving the slider to the right is non-decreasing. In database parlance, what we have here is an instance of a "Top k" query where k corresponds to the number of viewable clusters. In other words, we have a "Top k Clusters" query. Again, we could say that the resolution (also referred to as the zoom level but measured here in terms of the number of clusters that are visible again in contrast to the conventional definition which is in terms of visible area) also increases. Of course, if we pan or zoom the map, then the identity of the visible clusters changes but not their number.
Another database analog of this query is a ranked spatial range query or a ranked spatial join query. The challenge in implementing this query lies in deciding on the order in which the locations are delivered to the user which is a function of their importance. This need not necessarily be the number of times they are mentioned. It could be based on the number of clusters in which they appear at least once, etc. Another factor could be their currency in terms of the time at which they arrive and the velocity and acceleration of the cluster's rate of growth. Again, all of these issues arise because our data is dynamic on account of our streaming environment rather than being static.
The web version of NewsStand that runs on a desktop or laptop is self documenting in the sense that the actions of all controls (e.g., buttons) are explained on the upper-right corner using a pop up text window highlighted in yellow. In particular, as you hover the mouse over a control, an explanation pops up in the upper-right corner of the screen in yellow giving you a brief synopsis of what it does.
As pointed out earlier, you can run the web version of NewsStand with each of the popular mapping APIs: Google Maps, Bing Maps which is a rename of Microsoft Virtual Earth, and Google Earth. The speediest one is "Google Earth" where zoom operations are very quick and on a fast computer, NewsStand behaves like a video game. In order to use Google Earth, you may need to download the Google Earth plugin. This is not always so easy. Moreover, Google Earth is not available on all platforms (e.g., not on Linux). So, on the web version, the Google Maps or Bing Maps APIs are preferable. The advantage of the Bing Maps API is the ability to hover over a location without having to click or tap on it as is the case with the Google Maps API, greater flexibility in the positioning of the information boxes and the absence of the shadow that they cast which ends up obscuring a large part of the underlying map, and full coverage all over the world especially in countries such as Israel, which are not covered by Google Maps. The advantage of the Google Maps and Google Earth APIs is the ability to perform a continuous pan action (i.e., wraparound) in the horizontal direction thereby letting you make partial use of the spherical nature of the Earth (of course even better in in the Google Earth API, but not available in the Bing Maps API). This is especially useful on platforms that use a gesturing touch screen interface such as the mobile devices, as it allows for continuous, and most importantly unbounded, panning actions. Surprisingly, the wraparound action is not available in the Google Maps API used in the app version of NewsStand that runs on the Apple products, although it is available on both the app and web browser versions on the devices powered by Android.
Another interesting feature of NewsStand is the ability to examine all of the images associated with a cluster of articles as in the left (top) pane when in "Top Topics Mode". in particular, if you click on "images", NewsStand will retrieve all images that were associated with articles in this cluster. This feature is also available in the information box associated with a representative article both in the left (top) pane when in "Top Topics Mode" and in "Map Mode". This is a fascinating way of obtaining images associated with similar text. Hovering the mouse over the images leads to the appearance of the associated caption when the screen on the platform is of sufficient size. Clicking or tapping on the image results in displaying the article in which the image is found. It turns out that a number of the images are very similar as they can be derived from the same image with differences due to the application of image processing operations including, but not limited to, cropping, down sampling, etc. Such images are said to be "near duplicates" and a module exists which detects them. To see which images have been classified as "duplicates", just click on the link "Mark Duplicates", while to see just one instance of each image, click on the link "Remove Duplicates". Once duplicates have been removed, the link "Show All" can be activated to show all images. The images are displayed in blocks of 50 corresponding to 10 rows at a time, where each row contains five images. You can navigate between successive image subsets via use of the command "Previous images" and "Next images".
An even greater number of related images can be obtained in our implementations on some platforms by clicking on the button titled "Archive of Images" at the bottom left of the screen once all of the images have been displayed. This results in using the feature vector of the current set of images to find images collected earlier that have a similar feature vector. This is a formal way of saying that their contents are similar. Thus what you are doing is looking for similar images on the basis of the text in the articles with which they are associated, rather than based on their image features, although the latter is important when attempting to detect duplicate images. Thus it can be said that a "picture is indeed worth a thousand words"!
As in the case of images, you can also examine all of the videos associated with a cluster of articles as in the left (top) pane when in "Top Stories Mode". in particular, if you click on "videos", NewsStand will retrieve information about all videos that were associated with articles in this cluster. This feature is also available in the information box associated with a representative article both in the left (top) pane when in "Top Topics Mode" and in "Map Mode". The result is like the list of headlines associated with a location with the difference that for each video we provide a short title or description, the source, date, and length.
In the case of "Map Mode", the actual output on the map can also be varied. The outputs can be differentiated by using the concept of a "layer". At the present, the following four layers are implemented (although, of course, many others are possible). In the web version the layers are selected by use of a pull down menu whereas in the app version, the layers are chosen via the "Settings" button.
Users can also restrict the news sources from which the representative articles are drawn. There is a wide choice including the New York Times, Washington Post, Los Angeles Times, USA Today, Haaretz, Times of India, The Guardian, etc. Sources can also be restricted by geography so that only news sources from a particular country, continent, etc. serve as the representative articles. The problem here is that for some clusters, the story from the desired source may not be very current in which case the output of NewsStand appears stale. However, if no story from the desired source is available for a particular cluster c, then cluster c is not displayed as one of the Top Topics. In the web version the sources are selected by use of a pull down menu and currently only one source or predefined geography group can be selected, whereas in the app version, the sources layers are chosen via the "Sources" button and groups of sources can be selected by use of a tapping action, and deselected by a subsequent tapping action on a previously selected source.
There exists an alternative version of the web version of NewsStand called NewsStandDebug at http://newsstand.umiacs.umd.edu/news?debug=1 A major difference is the presence of a substantial amount of additional information related to how the cluster and its component articles were formed and geotagged. In particular, the "Annotate" link yields much details about the geotagging process and is available both in the cluster description in "Top Topics Mode" and in the information box associated with the icon in both the map pane in "Top Topics Mode" and in the map in "Map Mode". Clicking (or tapping) the "Annotate" link opens up a new tab that has much more information about the representative article in question and how it was annotated and geotagged. In particular, it shows which words were classified as locations and the reason for the classification. In addition, you can compare the performance of NewsStand's geotagger with that of Yahoo's PlaceMaker and OpenCalais of Thompson/Reuters by clicking on "Show in PlaceMaker, OpenCalais". This type of output enables us to better understand why some toponyms fail to be recognized or to be resolved properly. In addition, the information box in NewsStandDebug when both in "Top Topics Mode" and "Map Mode" provides an "Error Feedback" capability where users can alert the system of wrong geotags. In this case, the user can enter a suggested fix as well as the type of error: (a) Not a location, and b) Wrong location.
Using the web version of NewsStand on mobile devices such as the iPhone, iPod Touch, and powered by Android smartphones (with the exception of the iPad), is complicated by the fact that the screen displays, which have a very small resolution, are simply too small for an entire web page to fit on one screen, let alone to be able to read or say anything about it. In order to overcome this problem, browsers on mobile devices such as Apple's Mobile Safari and the Android browser first render web pages to a "virtual" screen, which is usually much larger than the resolution of the device's native screen. In particular, both the Mobile Safari and the Android browsers then treat the physical window of the device as a sliding window that can be moved across the virtual screen by the typical zoom and pan gestures. This enables you to zoom into places on the web page that are currently too small, as well as to zoom out to view more screen real estate.
Unfortunately, this solution causes a semantic conflict with mapping APIs that support gestures, such as Google Maps v3 when they are embedded in web pages as in NewsStand. In particular, when you make a zoom gesture on the map, there are two possible interpretations:
The Google Maps API on mobile devices makes the second interpretation in the sense that the point size of the labels is the same (i.e., a constant) regardless of the extent of the zoom-in level. It is interesting to note that this behavior is consistent with what users expect in a map in the sense that the zoom-in operation is intended to provide more detail while maintaining the size at which the existing elements are displayed. In fact, many users would also like to find the same behavior in the context of general drawing programs where, unfortunately, it is not present. In particular, they would like to be able to shrink the resulting figure to fit in a smaller space on the page (i.e., when zooming out), while not necessarily wanting the graphic elements to shrink (e.g., the thickness of the line segments) or the size of the symbolic elements to decrease (i.e., the point size of the font), the latter of which also means that labels may have to be moved around in the same spirit as name placement is achieved in maps. However, when the display screen is too small, users would prefer the first interpretation, or at least the ability to choose it if necessary. In other words, users do not want to lose the ability to zoom in on the web page, since they may wish to adjust the size of fonts as well as other graphic elements of the web page.
In the case of the mobile devices, NewsStand overcomes this problem by providing you with the ability to choose between these two gesture interpretations, thereby also allowing the first interpretation in conjunction with using the Google Maps API . This is done by the introduction and implementation of a widget realized by a "Magnifying Glass" icon positioned at the lower-left corner of the screen, which is used to control the interpretation of gestures (through their capture) in the web pages corresponding to "Map Mode" and "Top Topics Mode". The default mode of NewsStand is to adhere to the second interpretation, thereby passing the gestures onto the mapping API when you focus on the the map (i.e., in "Map Mode" and in the map pane in "Top Topics Mode"), and ignoring scaling gestures (i.e., zoom) in the text pane in "Top Topics Mode". However, if you toggle the Magnifying Glass icon, then all the gestures will now be applied to the web page instead of to the mapping API. This means that the zoom-in (zoom-out) gesture of pinching-in (pinching-out) will result in increasing (decreasing) the size of the symbols on the map (i.e., the icons) and the labels of the geographic locations with a default base size, as well as the text in the text pane in "Top Topics Mode". Once the commands to the web page have been acted upon to your satisfaction, toggle the Magnifying Glass icon, and from now on all subsequent gestures are once again passed to the mapping API. These two interpretations are distinguished by graying the background map when the Magnifying Glass icon is first tapped, and removing the gray background the next time that the Magnifying Glass icon is tapped.
It is important to note that regardless of whether you are in "Map Mode" or in "Top Topics Mode", using the Magnifying Glass (i.e., when the virtual screen has been enlarged) affects the entire web page in which it is embedded (i.e., incorporated). This means that its activation will also lead to increasing the size of the elements of the NewsStand command bar (i.e., the top of the screen where the various buttons and pull-down menus are located) resulting in the need to pan in the horizontal direction to see the bar in its entirety. In addition, panning actions in the upward vertical direction will usually result in the disappearance of the NewsStand command bar (i.e., it will become invisible on account of being in the virtual screen but not in the device's native screen). This situation is remedied by simply touching the title bar (also known as the device status bar). Subsequent panning actions that touch the command bar in the upward direction will result again in its disappearance. However, if you do not want the command bar to disappear, then make sure that the panning action does not touch the command bar.
When using the Magnifying Glass in "Top Topics Mode" there is a system defined correlation between the extent to which the data in the text and map panes are magnified. This may not be enough for the visually impaired (e.g., people with macular degeneration which accompanies the aging process), for whom even the screen size of tablet mobile devices such as the iPad is too small. Therefore, we introduce the "Visually Impaired Mode" which is used as a toggle, but only in "Top Topics Mode", to increase the point size of the displayed text in the text pane by approximately 50%. The upper limit of 50% was chosen in order to guarantee that at least one cluster will fit in the text pane in the iPhone, iPod Touch, and Android smartphone mobile devices. In addition, in this mode, the text comprising the cluster description in the text pane is reformatted so that it fits in the text pane and thus you do not have to pan the text pane in order to read it in its entirety. Toggling the "Visually Impaired" button restores the text to its size immediately before it was last toggled. Note that if the Magnifying Glass had been deployed to enlarge the virtual screen, then the "Visually Impaired Mode" toggling actions are performed with respect to the enlarged virtual screen.
Using the Magnifying Glass in "Top Topics Mode" means that you cannot see the complete contents of both panes at the same time. If the text pane has been magnified to such an extent that it exceeds the size of the display screen, then in order to see all of the contents of the text pane you need to pan the text pane from right to left (which will also reveal the map pane) until obtaining a partial map pane. However, panning the map pane is only possible with pan gestures in the text pane as all pan gestures in the map pane are interpreted by the mapping API. Thus once the the text pane is no longer visible (i.e., after panning it too much to the left), no further panning of the map pane is possible and the text pane also becomes inaccessible. Therefore, we limit the maximum magnification level to a value (3 in the current implementation) that always leaves some part of the map pane visible.
At this point it is important to note that the significance of the Magnifying Glass widget is that it enables mapping web applications to execute on a mobile device with a small screen thereby bypassing the need to write an app. Moreover, it yields a platform-independent solution as it is not dependent on the screen size of the mobile device and it makes the controls (buttons, widgets, etc.) accessible to interactions that involve gesturing actions by enabling their enlargement to a size that can be used.
Unfortunately, the problem with frames is that they are naturally smaller than the browser window from which they have been invoked, which makes it difficult satisfy a user's conflicting needs to be able to see something and also to realize/understand that they are still in NewsStand. Therefore, this frame strategy is not appropriate for mobile devices since the screen real estate is far too valuable to give up for this purpose. Instead, what NewsStand does is to open web pages in a new tab on the iPhone, iPod Touch, Android device, and iPad. This solution works well on the iPhone, iPod Touch, iPad, and the Android that have a nice tab changing animation which moves from one page to the next, and makes what is happening very clear. In particular, all currently open web pages can be accessed by the browser's window button (at the lower-right corner of the interface), which opens up a screen/window where miniature previews of web pages can be viewed and selected. In this case, there is a distinction in the implementations on the iPhone and iPod Touch vis-a-vis the iPad due to the difference in screen sizes. In particular, on the iPhone and iPod Touch, the miniatures are placed in a row so that just one miniature can be seen in its entirety and navigation proceeds by panning, while on the iPad, the miniatures are placed in sets of 3 by 3 matrices, and navigation again proceeds by panning. This is a far superior solution than currently in use in implementations of browsers with conventional non-gesturing interfaces, where tabs are listed with nonintuitive names, and the action of wrongly closing a tab is not recoverable. In other words, the miniature images of the open web pages serve as an additional guard against wrongly closing pages, and also ensure that you can return to the page from which you came as you can recognize them more easily.
The implementation of the web version for mobile devices with a small screen such as smartphones currently makes use of two separate web pages for "Map Mode" and "Top Topics Mode". This means that the state is not preserved when switching between modes. The practical ramification of this is that a keyword used in search in one mode is not retained when switching to the other mode. The same is the case for the sources and topic types. In other words, use of a particular source or limitation to a particular topic type in one mode is not retained when switching to the other mode.
The following is a technical discussion of the implementation of the Magnifying Glass widget and can be skipped. HTML supports a viewport metadata attribute called "user-scalable", which takes a Boolean value (true or false). Generally, this attribute is only recognized by browsers that support touch gestures. When the value of this attribute is set to true, a compliant browser allows users to perform pinch gestures to scale the viewport (equivalent to zooming in or zooming out of the web page). In the popular mobile browsers, the "user-scalable" attribute value is true by default for all web pages.
The default convention in NewsStand is to the contrary in that the "user-scalable" attribute value is set to false explicitly when the web page is loaded, so that pinching actions that are applied to the web page have no effect. However, the Google Maps API captures touch events made over the map, before they are passed on to the web page, so even with this convention, the map can be zoomed in and out as is appropriate according to the nature of the pinching action. This behavior is not unique to NewsStand but can be used in other applications where only one part of the web page contains the Google Maps API, while the other part can be text so that the zooming actions are only recognized on the map part.
This action enables users to make standard pan and zoom gestures anywhere on the page (including over the map), and have the typical effect of panning or zooming the entire page. When the user taps the Magnifying Glass widget again (i.e., toggles it), the above changes are reverted, although the resulting scaling change on the page's graphic and symbolic elements are retained until subsequent activations of the Magnifying Glass widget which could be used to restore their size to that when the web pages (i.e., to "Top Topics Mode" and "Map Mode") were originally loaded. To summarize, the Magnifying Glass widget:
The app version of NewsStand is very similar to the web version in terms of functionality. However, it currently has a number of features that are absent in the web version. Some of these features involve the ability to use the inherent GPS capability available with the mobile or tablet device to know the location of the user and change the geographic focus to this location. This is achieved in "Map Mode" by use of a button in the form of a steering wheel, Users who want to automatically obtain news from a particular location such as their home town can use the "Home" button to always zoom and pan the map to the location when in "Map Mode". This is achieved by tapping the button with the traditional icon in the form of a "house". You can automatically change the current display to one where the entire world occupies the display screen when in "Map Mode". This is achieved by use of an icon in the form of a globe showing the Western Hemisphere. It should be clear that these features are not meaningful in "Top Topics Mode".
The current implementation of the app version of NewsStand makes use of the Google Maps API. It behaves in a different manner than on the web version in the sense that there is no need for the Magnifying Glass widget as the symbology is of the right size. However, as noted earlier, surprisingly, the wraparound action of the continuous panning gesture is not supported in the Google Maps API used in the app version of NewsStand that runs on the Apple products, although it is available on both the app and web browser versions on devices powered by Android.
When running the app and in "Map Mode" or in the map pane of "Top Topics Mode", you can zoom in and out by use of the "+" and "-" icons, respectively. These icons are also available when reading the text of a particular article (as a result of clicking on its headline in an information box in both "Map Mode" and "Top Topics Mode", or on the actual headline in the text pane when in "Top Topics Mode") . The advantage of using the "+" and "-" over the conventional pinching outward or inward actions, respectively, is that the text of the article is automatically reformatted so that it fits in the screen thereby avoiding the need to constantly use the horizontal pan action to read the article. This feature is similar to the "T+" and "T-" buttons, respectively, that is available on the web sites of a number of newspapers (e.g., the site of the New York Times). The only shortcoming of the implementation is that the interline spacing is not always adjusted (i.e., increased) as the zoom in takes place as such action is usually performed by the host web page (e.g., this is properly done by The New York Times).
The app version also indicates when a keyword search is in progress, regardless of the mode, via the "Search" box by outputting the text "Search Key" followed by the keyword. Similarly, when the sources are restricted to a subset of the newspapers (i.e., the corresponding RSS feeds), regardless of the mode, this is indicated by outputting the text "Source" followed by the name of at least one of the sources. In addition, for both of these features, a button labeled "X" is output immediately to the right of the keyword and name of the source which is used to disable the keyword search and revert to using all of the sources if only one source is active, respectively. This feature is necessary to ensure that you do not forget that your search domain has been significantly pruned to that of part of the world that is viewable on the map, and thus you should not be surprised when sometimes NewsStand fails to return any results. Note that if multiple sources are used, then the name of only one source is displayed. Tapping on the "X" removes this source, and if other sources are still active, then one of their names is displayed with an "X" to its right. Repeated tapping of the "X" button will deactivate the source until none are active at which point NewsStand reverts to using all of the sources. Note that this disabling action can also be achieved via the "Sources" button which is also used to select the active sources.
In the app version, much of the setting of parameters such as the type of layer; visible topic types (i.e., general news, business, science and technology, entertainment, health, and sports, or any combination thereof); and home location are achieved by first tapping the button labeled "Settings" which provides lists containing the various options. In addition, the "Settings" button also enables use of an image (video) filter that restricts the display of icons to clusters that have a minimum of k images (m videos) associated with them as this number can get rather large and it may not be worthwhile to waste much time trying to find an icon associated with a cluster that does not have at least k (m) images (videos) associated with it.
In addition, there exists a companion system, called TwitterStand  found at: http://twitterstand.umiacs.umd.edu that can be invoked from NewsStand (and from which NewsStand can also be invoked) where Tweets are collected, clustered, and displayed on a map in much the same way as NewsStand handles news articles from RSS feeds. The collection of news articles in NewsStand helps in inferring geographic locations for the Tweets as they are not usually present in the 140 character limit on the size of the Tweets. Much information associated with the Tweet is available as a result of the URL which usually accompanies the Tweet. It is important to note that the motivation for TwitterStand is an interest in showing geographic locations that are the subject of Tweets, and not the locations from where people are tweeting. The latter is fairly easy to obtain as it is available as part of the Tweet, while it is much more complex to determine the former.
TwitterStand is used in the same way as NewsStand and is available in both a web and app version. Once again, like NewsStand, TwitterStand has two modes of operation which correspond to the two types of queries. The first is "Where is topic Y happening?" or "Top Topics Mode" (actually "Top Tweet Clusters"). The display has two panes where, assuming landscape (portrait) mode, the top Tweet clusters are displayed on the left (top) pane. As you hover the mouse over them (or pan after a tap when using a gesturing touch screen interface), the relevant locations are displayed on the map that appears in the right (bottom) pane. You can explore the various Tweets by clicking or tapping on them, which opens a new tab (or window depending on the browser and platform) for the Tweet. You can come back to where you started (i.e., the pane with text on the left (top) and a map on the right (bottom)) by closing the tab. The query "What is happening in location X?" or "Map Mode" enables the use of a map to explore Tweets that are newsworthy. As you zoom in, you get different Tweets about the region you are zoomed to.
Three YouTube videos of varying length narrated by Prof. Hanan Samet have been produced that demonstrate the web version of TwitterStand for Tweets and news gathered at 8:30PM EST on April 7, 2010, and with a slightly older user interface. The videos have voice and are also close-captioned with summaries of the voice narrative. In this way, they can be run without the voice narrative in the background.
Again, as in the NewsStand video, once you start the video, it is best to view it in full screen mode. This can be done by clicking on the button in the lower right corner of the YouTube screen (a small TV picture tube).
This overview is not complete and is intended to accompany a session on the system rather than being read in a vacuum. You are welcome to take it for a test drive. At present, the test drive is limited to the web version unless you have received an app from us which is currently limited to just a few users due to the complications in releasing an app through the app store which involve approvals from Apple, as well as registering you as an authorized user. Please send email to Hanan Samet at email@example.com about any difficulties you encounter including wrong results, interpretations, etc.
It should be clear, that the NewsStand system requires a substantial amount of resources (both physical and human) to run. A serious issue is quality of service which is, in part, really a question dealing with the number of people who can simultaneously access NewsStand and thereby strain the database and server which are not designed to handle many s requests. Also NewsStand and TwitterStand make heavy use of other web sites, some of which do limit the number of times that they can be accessed each day. For this reason, please do not use the system too heavily. Moreover, currently this is a limited use system for users with whom we have shared its url. At present, it is not password protected, and we do not seek or wish any publicity as both NewsStand and TwitterStand need to work better as they are just research prototypes which cannot withstand heavy and continuous use. Thus it is inevitable that you could be disappointed. We hope that you will bear it in mind that this is a research prototype and share your experiences with us rather than posting negative reviews on websites about its performance for which we are making no claims. Therefore, we have provided this detailed set of instructions and caveats on its use, rationales for features and trust that you will not share the links to it. Of course, as stated above, any comments, suggestions, examples of errors, etc. would be most welcome and should be sent to Hanan Samet at firstname.lastname@example.org