How Does a Hub Differ From a Web Site?
At its core, a "hub" is a web site built with many familiar open source packages—a Linux system running an Apache web server with LDAP for user logins, PHP web scripting, Joomla content management system, and a MySQL database for storing content and usage statistics. The HUBzero software builds upon that infrastructure to create an environment in which researchers, educators, and students can access tools and share information. Specifically, we define a "hub" as a web-based collaboration environment with the following features:
- Interactive Simulation Tools
The signature service of a hub is its ability to deliver interactive, graphical simulation tools
through an ordinary web browser. In the world of portals and cyber-environments, this
capability is completely unique. Unlike a portal, the tools in a hub are interactive; you can
zoom in on a graph, rotate a molecule, probe isosurfaces of a 3D volume—interactively,
without having to wait for a web page to refresh. You can visualize results without having to
reserve time on a supercomputer or wait for a batch job to engage. You can deploy new
tools without having to rewrite special code for the web.
The HUBzero infrastructure includes a tool execution and delivery mechanism based on Virtual Network Computing (VNC). Any tool with a graphical user interface can be installed on the hub and deployed with a few hours. For legacy tools and other codes without a graphical interface, an interface can be quickly created by using HUBzero's associated Rappture toolkit. The Rappture interface helps to set up jobs and visualize results. The jobs themselves can be dispatched to the TeraGrid, the Open Science Grid, and other participating cluster resources. Using this architecture, the nanoHUB has brought over 50 different simulation tools online in just 2 years, with 50 more tools currently under development. We expect similar growth and performance for other hubs.
- Online Presentations
In order for users to make the most of the tools on a hub, they need to understand the
limitations of each tool and its underlying science. Along with the tools, each hub features a
series of online presentations, which are PowerPoint® slides combined with voice and
animation. Listening to a presentation on a hub is much like being in the room during a
standard seminar. But unlike a seminar, the material is available 24x7, and you can skip
through the talk by browsing the table of contents or searching for important keywords. HUBzero
currently uses Macromedia Breeze® to deliver the online presentations in a very compact
format using Flash®, which is installed on 98% of the world's internet-enabled desktops.
Unlike streaming video, the Flash® format can be viewed over a dial-up connection, so
presentations have greater reach into dorm rooms, K-12 classrooms, and other places where
network bandwidth may be limited. Online presentations can also be distributed as podcasts,
so your users can access them on-the-go via their video or audio iPod®.
- Mechanism for Uploading New Resources
Each hub is a place for users to come together and share information. One important way to
accomplish this is by encouraging all users to upload their own tools, presentations, and
other materials onto the hub. The HUBzero software includes a self-service area that guides the
user through the process—much like purchasing something on the web. On the first screen,
the user enters a title and an abstract, clicks Next, then uploads associated files,
clicks Next, acknowledges a list of contributors, clicks Next, and so forth.
At the end of the process, the
resource is submitted for posting. Your own hub administrator approves all submissions,
keeping out spam or any other inappropriate materials. Newly published items automatically
appear on the What's New page of the hub, and are also available on a corresponding news
feed for Really Simple Syndication (RSS) readers.
- Tool Development Area
Uploading an online presentation or a PDF document is fairly straightforward, as described
above. Uploading a tool, however, is a little more complicated. Tools must be uploaded,
compiled, tested, fixed, compiled again, and tested again—often many times—before being
published. This requires a little more support from your own hub administrator, but HUBzero
helps to automate the process. Each hub comes with a companion site for source code
development based on the open source Trac
package for project management. (Think of this
as your own private version of SourceForge.net,
the supporting infrastructure for the open
source development community.)
Each tool will have its own project area within this site, with a
Subversion repository for source code control,
a ticketing system for bug tracking, and a
wiki area for project documentation.
- Ratings and Citations
The hub philosophy is not to judge the quality of each resource before deciding to post, but
rather, to post resources and let the community judge the quality. Registered users are
allowed to post 5-star ratings and comments for each resource. Registered users can also
post citations that reference the resource in the literature, so everyone can see other work
that builds upon the resource. The ratings and citations for each resource are combined with
web statistics (measuring the popularity of the resource) to produce a single number on a
scale of 0 to 10, called the ranking, which defines the overall quality of the resource.
Resources with the highest ranking appear at the top of the list for searching and browsing
operations; resources with the lowest ranking are much harder to find on the hub.
- Content Tagging
Each of the resources on a hub is categorized by a series of tags, which are arbitrary strings
defined by the user when uploading content. Each tag has an associated page on the hub
where its meaning is defined and its resources are listed. For example,
the tag "carbon nanotubes" might help users find all tools, seminars,
and tutorials related to carbon nanotubes. Another tag "K-12" might help
educators find content appropriate for elementary
education. Tags are not only defined by the contributor, but also by your own hub
administrator, and can even be added by other users when they rate the resource.
- User Groups for Private Collaboration
During the operation of the nanoHUB, we have found that many users like to limit their
collaborations to a smaller audience. For example, a researcher might upload a presentation
intended only for other members of his research group. An employee at IBM might upload a
tool, but only for use by other IBM employees. The HUBzero software supports this by letting
users create and manage their own groups of users. Any registered user can create a group
and invite others to join it. The creator can accept or reject group members, and can promote
various members to help manage the group. Resources associated with a group can be kept
private, meaning that their access is limited to other members of the group.
- User Support Area
From time to time, users will have problems with logins, questions about tools, and may
otherwise need assistance. The HUBzero software comes with a built-in user support area.
Users can click on the Help link near the top of any page and fill out a form to file a support
ticket. If a tool encounters an unexpected error, a ticket is filed automatically. By examining,
updating, and closing the tickets, your own hub administrator can keep track of the people
having problems and the resolution of each issue.
Some of the questions that users will ask are beyond the understanding of a single hub administrator, or even a hub team! For this reason, HUBzero includes a question-and-answer forum patterned after http://answers.yahoo.com and http://askville.amazon.com. Any registered user can post a question, and other users can provide answers. At some point, the best answer is chosen as the "final" answer by the person who originally asked the question. The list of past questions/answers forms a knowledge base upon which your community can draw for immediate help with a similar problem.
- Usage Statistics
Each hub reports statistics about how its resources are being used, including the total
number of users in a given period, the number of web hits, simulation jobs launched, CPU
hours used, etc. Statistics are reported down to the level of each individual resource, so you
can see how many users have accessed a particular tool, or how many times an online
presentation has been viewed. Usage numbers are rolled up to provide an overview of
usage for interesting categories. For example, you can see how many users access all tools,
how many accessed the resources from a single contributor, how many are located in the
US, how many are working in industry, and so forth.
- News and Events
Each hub includes a calendar and a mechanism for any registered user to post events. This
helps your hub become a focal point for the community. Each hub also includes a news
area, where your hub administrator can post short stories that describe the progress being
made by researchers on your hub.
- Feedback mechanisms
Each hub includes a feedback area where users can respond to a poll question, share a
success story, or provide other comments and suggestions.