The Mathematica Information Center

Jean Buck
Wolfram Research, Inc.

What is Mathematica Information Center?

The Mathematica Information Center, also known as the InfoCenter, is one of the major sections of our corporate website. It’s found at library.wolfram.com.

In practical terms, the InfoCenter is primarily a replacement of the rather haphazard assortment of materials that used to live at library.wolfram.com, some that were laying around on our internal site, along with the materials in MathSource, which had previously lived at www.mathsource.com.

So, in some sense, there is nothing really new about the InfoCenter. But what is particularly noteworthy of this incarnation of these mostly pre-existing materials is that the items are now being presented in a single database structure, with consistent standard formatting of records, and most importantly, with categorization and classification schemes that make for easy browsing and searching.

Background of the Project

The roots of the InfoCenter go back to the creation of MathSource, in 1992. MathSource actually predates the web. It was originally developed for ftp and email access only. You would send an email message containing a command to the MathSource server such as “find” or “get” and the server would send an email message back to use with an appropriate response. It wasn’t particularly user friendly or immediate, but it got the job done.

Later, in 1994, you were able to access the MathSource collection by gopher and via the web. We also created a CD-ROM containing all the files. But very little was done to change the basic design and tree structure of MathSource from its original construction.

For many years now, since we realized that the web was not going to go away, we have been wanting to upgrade and enhance the interface to 
MathSource. But we never quite got to doing much more than very simple cosmetic changes. Then as we started having other materials piling up in 
various web nooks and crannies, we came up with the idea of an integrated system for housing all of it.

Design Principles

In designing the structure of the Information Center, our first concern was finding the proper way of organizing the material. We wanted a system that would allow for easy browsing and searching and one that was easy to navigate for our users. In coming up with a design, I worked with Eric Weisstein. My background is in Library Science and Eric is our resident encyclopedist, being the creator of MathWorld, which many of you know is the most popular math site on the web. We decided on a system of classifying items within “collections” (types of items) as well as by subject.

Collections
With regard to the collections we came up with, you might ask: What are the defining characteristics of database items that distinguish one “type” of item from another? What is the difference between a demo/how-to/example/tech note? What defines a MathSource item? Should a teaching-related item in MathSource be considered Courseware? Some of these questions don't have well-defined answers. We discussed this at some detail. We finally came up with one overriding principle—even though every item may have multiple subjects, but *must* belong to a single collection. It also had to fit the actual items that were likely to be included in our database.  The minimal set we came up with after much head-scratching consists of 7  externally visible “collections.” (We have an eighth collection consisting of internally-viewable only items as well.) The collections we came up with are: Articles, Books, Conference Proceedings, Courseware, Demos, MathSource, and Technical Notes.

Subjects
Devising a subject-classification scheme was also rather difficult. We wanted a single system that works for every item in the Information Center. The system needed to be flexible, extensible, and nested at a level appropriate to keep the number of items in a given finest-grain category relatively small.

The system also needed to mesh with other existing schemes in use at WRI (e.g., tech support, MathWorld, ScienceWorld). The organization had to be intuitive for as broad an audience as possible; we didn't want something so precise and technical that it would be useful only to professionals. On the other hand, the scheme also had to mesh with the expectations of the highly specialized academic and research communities that work with Mathematica extensively. This is hard!

We decided to use the basic subject classification that Eric had already devised for  MathWorld and ScienceWorld as a basis for the new system. We incorporated Mathematica-specific categories from Tech Support's on-line help and from the Help Browser. The result is not perfect, but seems to work pretty well. User feedback has already resulted in some refinements in a few specific areas and more are expected as items are reviewed more carefully. 

[[Show classification]]

Interface
An intuitive interface was also  extremely important to use in our design. We wanted the InfoCenter users to be able to easily locate information of interest. We wanted it to be graphically attractive and yet wanted database lookups to be fast. Finally, we needed the system to be easy for maintainers to update and add information.

Technology
The underlying structure of the Infocenter is a mySQLdatabase, which stores all the data and downloadable files. There are 16 custom database tables with a total of 180 fields. As of today, we have about 50,000 records in all database tables. There are more than 4000 downloadable files attached to InfoCenter items. All attached files combined take up almost 1.4GB. Database indexes and caching have been incorporated to improve performance. All of the scripts were written in the Perl programming language. The InfoCenter can serve up to 12 page requests per second (which adds up to 720 pages per minute, or 43200 pages per hour, or more than 1 million pages per day). We are currently serving up to 30 pages per minute during peak hours, so we have plenty of capacity for increased traffic.

All in all, we're quite happy with the result, especially for a version 1 release.

Understanding a Basic Record

Now I’d like to actually show you more of the site.

In typical database fashion, each item in the Infocenter is broken up into a set of fields. There are different fields for different collections.

[[SHOW http://library.wolfram.com/infocenter/Articles/1499/ ]]
Here is an article record.
The article items are usually only bibliographic records, although certain records could be linked to actual article text.

[[SHOW http://library.wolfram.com/infocenter/MathSource/1170/ ]]
A Mathsource record.
As you see, Mathsource items contain downloadable files.

[[SHOW http://library.wolfram.com/infocenter/Books/4539/ ]]
As one more example, here is a book record.
Notice here the “buy this book” link as well as the supplementary material that we have available.

All items have fields for title, author, description, subject.

Using the Site -- Searching

So now that you know the basic item structure, how do you actually get to the records?

There are 2 main ways of navigating the Information Center. One is by browsing. And one is by searching. Using the browsing techniques, there are 3 different mechanisms to use. The primary mechanisms are browsing by “collection” and by “subject”. Just recently, we’ve added a third type of browsing—by “what’s new.” This was a popular feature in the old MathSource that we originally left out. But now you can go in and just look at things recently added to the InfoCenter, with a time parameter of your choosing. In the future, once we have some login features available throughout our sites, we should be able to customize this type of browsing with other user defined parameters.

In addition to browsing, you can also navigate the site by searching. And here we have 2 different methodologies you can use. A simple search uses the htdig search software we currently use everywhere on our sites to search the content of the html and text files located in the database. While using simple search, you can limit your search to a particular collection or type of record. There has been a fairly recent upgrade to the htdig software, allowing for string (adjacency/phrase) searching among its features, which makes this a pretty practical search sytem. I think that for the majority of users, the simple search will be the most commonly used form of interacting with the site.

[[DO A SIMPLE SEARCH on “Trott”]]
For those of you who aren’t familiar with our search result display, this blue bar is a relevance indicator, with the most relevant items to your search being listed first on the search results page. This part of the system still could use some tweaking, but it’s usually pretty reliable.

[[ 29 Results and we see that Michael’s Graphica book is listed higher than any of the other items. This is because his name actually is part of the title.]]

In simple search, we can also search for multiple words.

[[SEARCH for “Trott graphics”, change to “All,” change to “Boolean” and “NOT”]]

The Infocenter also has an advanced search mechanism, which takes advantage of the database structure it is based on. With advanced search, you search on particular fields.

[[SEARCH for “Trott” as author]]

Before when we did a simple search, we had 29 records. Here we now have 25. That’s because Michael wasn’t listed as author of all the items in the first search. For instance, there was at least one record for Igor’s Graphica book, in which Michael’s name showed up in the related items.

So, depending on what you’re looking for, each type of search has its own pluses and negatives. Be mindful of them and use the appropriate search technique for the type of information you’re looking for.

Usage Statistics

The InfoCenter is currently serving about 60,000 pages per week (excluding requests from web robots);

The most popular collections are:
1. MathSource
2. Demos
3. Courseware

The most popular top-level subjects are:
1. Mathematics
2. Applied Mathematics
3. Engineering

The most popular items are:
1. Eric Weisstein's MathWorld Packages (in MathSource, #4775, added last month)
2. Equation Solving Tutor (in Demos, #4474)
3. Advanced Engineering Mathematics (in Courseware, #4300)

The Future

As I said before, with some tweaking, we believe we have a mechanism that should prove to be a pretty effective way of housing all things Mathematica-related. On the near horizon, we have targeted the following enhancements: 

1. Lots more items
2. Integrating the Infocenter  with the Help Browser, Documentation Center, and Tech Support FAQs
3. Customization of user preferences for viewing the Infocenter through a proposed login system
4. Getting notebooks indexed via the search mechanisms

Call to Action

We're hoping that all of you will be a part of the Information Center community, as users, contributors (and  bug catchers where needed). Ed Pegg, whom many of you know, is the administrator of the Information Center. He is certainly open to your comments, suggestions, and especially your contributions. We have an easy submission form which is available at http://library.wolfram.com/contribute/. And we're happy to get email at infocenter@wolfram.com. Thank you.