About MTDb
Designed and implemented for the First Annual 6.470 Web Design Competition at MIT,
the Movie Trends Database is another option to get information about your favorite films,
actors and directors, using a static database on the MTDb server (scripts.mit.edu) and
dynamic movie ratings and some other data from IMDb.com.
Our team consisted of Deirdre Connolly (Course 6, class of '08) and
Matthew Ince (Course 18, class of '09).
Layout:
Our initial design idea was a dark background and brighter graphics overlayed, but
that wouldn't have conveyed information well, so we switched to a lighter color scheme.
Almost everything was laid out with html and css, tables were used as sparingly as possible.
The banner graphic and menu buttons were designed from scratch in Photoshop, with the graphic
initially anticipating the Flot widget being used, but unfortunately in the end
the static and dynamic data did prove to be amenable to plotting in Flot.
The Digg and Box Office Mojo widgets were utilized as a primitive source of dynamic data,
that help to give both movie news and box office updates to the site user, without navigating
elsewhere. We hoped to get further data feeds from Box Office Mojo to use as part of our
mashup, but unfortunately they did not reply to our requests.
Mashup:
Our goal is to give eagle's eye views of actor and filmmaker
careers. That means displaying trends in film gross, popularity,
and genre. Some of this information comes pre-packaged in the
6.470 film database, but dynamic data such as a film's popularity
doesn't. So we use the open source IMDBphp interface for www.imdb.com to
access dynamic information on films found in the 6.470 database.
Our ultimate goal is to provide vibrant, readable charted information, especially plots
of trends in movie gross, movie rating or movie genre over time. In the future, we hope to
chart these via the jQuery FLOT plotting tool.
(insert link to IMDBphp)
Registration:
We attempted to make registration and user logging as convenient as possible, even though
the site contains no extra features for registered users. Each page contains a login/logout link, and displays
the username for logged-in users. The registration form even uses some nifty Ajax to warn users of misspelled
passwords and incomplete form information without redirecting the page.
We settled on a cookie-based system for convenience, storing the username and password in seperate cookies.
Each page re-checks the username and password with the database. Though security wasn't our primary goal, the database
at least stores md5 hashed versions of passwords.
Search: If a user wants information on "John Depp", an exact
database search won't turn up entries on Johnny Depp.
Since nicknames and misspellings usually share the first two letters
of a name, our search query uses regular expressions to check for entries containing the
two-letter prefixes of the query words in the correct order.
Somewhat surprisingly, this search heuristic works nicely for most queries. For instance, an "actor" search for "Sarah\
Parker" yields results:
Sarah Jessica Parker
Sarah Patterson
Sarah Paulson
Sam Pancake
Samuel Page
while a search for "Sarah Jessica Parker" yields only Sarah Parker herself. So the more words a user enters, the
more precise the query.
|