Ajax mini-project
Due: Monday 11/3 (by 9:30am)
This open-ended individual project provides an opportunity for you to demonstrate your mastery of Ajax. You can work on whatever you want, provided that it showcases the key ideas behind Ajax:
- Rich, interactive Web-based applications.
- Asynchronous exchange of data with backend services.
- Dynamic content without need to reload Web pages.
The scope of the project should be approximately equal to two problem sets. Your project must contain the following elements:
- Ajax and dynamic content.
- Some type of service that provides a non-trivial amount of computation (use whatever language you're most comfortable with: PHP, Perl, Python, Java, etc.).
- Access to a non-trivial amount of data, either managed by yourself (e.g., in a mySQL database) or provided via a Web service (e.g., using a map API to create a mashup).
- Your project must run in the clouds. You must either use an instance on EC2 or another cloud computing service like the Google App Engine.
Feel free to discuss ideas and collaborate with others in the course, but you must complete your own assignment. For example, trading coding tips and code fragments (e.g., over email or IM) would be fine, but sharing entire project files would not be.
This assignment is due 11/3 by 9:30am. Class session that Monday will be devoted to an Ajax "show-and-tell". Make sure your project is running in the clouds before you arrive at class that day (i.e., accessible in a browser at some public URL). You will have three minutes (no more!) to quickly show everyone what you've done. Also, before you get to class, send me an email, with "LBSC 878A: Ajax mini-project" as the subject. In the message, attach a PowerPoint presentation with screenshots of your system (as many as you feel necessary to highlight key features of your system). You can use this presentation as backup if your project system does not work or is not accessible (but you are still subject to the time limit). These screenshots will also provide a more permanent record of your system. After class, you can terminate your EC2 instance.
This assignment will be graded along the same scale as the problem sets. Both your presentation and the system screenshots will be taken into account in your grade.
If you are looking for interesting datasets, you might want to take a look at the StatLib (from CMU) (click "Get Data" on the left and look under "Datasets Archive"). Just browsing through the collection, the following struck me as potentially interesting:
- baseball.data: performance and salary information on baseball players during the 1986 season.
- DJ 1985-2003: daily quote of stocks in the Dow Jones, from 1985 to 2003.
- fl2000: County data from the 2000 Presidential Election in Florida.
Another source of interesting datasets is the UCI Machine Learning Repository. Of course, feel free to use any dataset you wish—these are merely suggestions.