WINTER 2004 PROJECT PRESENTATION
SCHEDULE
(current CS 480 students, choose an open slot and email
jhorn@nmu.edu!)
This course involves a significant software development and
implementation project. Since this project constitutes more than two
credit hours of work, students are expected to begin the project prior to
registering for CS 480. Enrollment in CS 480 allows the student to wrap up
the project, including testing, documentation, and a demonstration and
presentation to an evaluation committee of CS faculty, for feedback and
grading. Students will be supervised by their advisors, rather than a
course instructor. Students are expected to define a project of interest
to them, and then to work out an agreement with the advisor on the goals,
scope, and grading criteria for the final product. Students are expected
to work individually on projects. (Under certain circumstances, small
teams of students can be assigned to a single, larger project.)
Official Bulletin
Description of CS 480
Rationale for CS 480
INSTRUCTIONS:
You need to:
- Find a project topic
- Find a project advisor
- Write up a short proposal (one page is fine) with
your advisor and submit that to the CS committee for approval.
Now the way this works is that you work out a topic with
one of us (like Randy, me, Barry, Andy, Dave, Ken). Just like a directed
study, both faculty and student have to agree on a topic. We don't get
paid anything extra for 480, so we'll only sign on if we are interested.
However, you have to be interested too, and so this involves some
compromise, etc. So talk to us! (By the way, this is exactly what you'll
do in grad school when working out a MS thesis or PhD dissertation topic.)
Current Membership of CS Committee:
|
IDEAS for Future Projects
- WEB ROBOT: Put a small robot, like the holonomic drive robot, on the
web so that it can programmed from the web, then run in front of a webcam,
so people (e.g., school kids?) can learn robot programming with little help
from anyone here. Dave Buhl claims LEGO has the software to do this already. Could help him get that started with the LEGO 'bots, or use one
of ours. (Jeff) $?$
-
USE LAPTOP INFRARED PORT TO PROGRAM LEGO ROBOTS: Dave Buhl wonders if this is possible. High risk project, but a cool thing if we can bypass the
IR transmitter tower that plugs into USB. (Dave Buhl)
-
WIFI 802.11b ROBOT: Get "Laptop Bob" to wander around and test for quality and strength of 82.11b coverage around campus, (at least in
buildings like West Sci. and NSF). Requires hacking into some signal strength software. Could easily be that Cisco or Lucent, etc. would give
us an API into their software if we tell them what we are doing.
(Jeff) ?$?
-
Put the NMU "All-Sky-Cam" on the web somehow. Someone has to ask Dave Donovan about this. This is all Physics. We have no control or influence
here. (Jeff) ?$?
-
WEB PAGE SHRINKER: write code that goes out, grabs the source code for a web page, and then parses it to try to fit into a smaller window,
like that of a PDA. E.g., smaller font, margins, tables, parts of images, etc.
(Jeff)
-
VOICEMAIL TO EMAIL CONVERTER: System dials up a voicemail system, requests messages, and digitizes them into .wav files (or MP3 or whatever)
and then sends them by email to the recipient, thus avoiding using two
different systems (both audio and email) to receive messages. Could be a
useful new product. Technically feasible, as DTMF tone generators are cheap
and easy to program using the USB port. (Jeff) $
- A Concordance: Basically, you make a search engine over some text (the
bible, the Klingon dictionary, etc.) (Randy)
-
Benchmarking: Write the same few algorithms in several languages (Perl,
Java, C++) and see which is faster and which was easier.
(Randy)
-
A Quiz Maker: Given a set of questions, construct quizes. Let students take the quizes. Grade them. Put a web interface on the whole thing.
(Randy)
-
A Background Rotator for Gnome: Given a set of pictures, show each one on the background (root window) under Gnome (a Linux windowing system).
(Randy)
- INFO-WALL:
Use low-cost, off-the-shelf components to build a wall-hanging video
display panel for the department. It would consist of an LCD flat
screen (e.g, old laptop screen) and a remote CPU. The screen could
be hung on the wall, perhaps in one of our flat display cases (for
security). The CPU, which would be on the internet, would be used
to show videos and slideshows about our department, students, projects,
courses, etc. (e.g., poster sessions, robot videos, TV6 news coverage of
the programming contests, numerous photos of our student trips,
etc.) The interface for the Math/CS dept. (i.e., the ones who need
to "post" the elements of the show) should be a folder on
euclid, or perhaps a web page with a login, into which we can
"drop" the images, movies, or other files to be shown.
Perhaps there would be a way to specify the order of
presentation. (Jeff) $$$$
|