This is the last project assignment for the course. We will meet 11/30 and then 12/14 -- the final day of class -- so there's not much more project left. The final topic for project is graph algorithms, but we won't cover these in class until 11/30. Your choices at the moment are:

- Identify some interesting data that has interconnections. These might include web pages in a highly interlinked part of web space; FOAF (friend of a friend) records from the web; Amazon book pages including "those who bought this book also bought..." recommendations; Olin student information, including committee membership or roommates or....; or come up with some of your own. Build some code to extract/manipulate this data set (as an abstract data type) that you can use as the basis for some graph algorithms in December. (You can write code for shortest path, spanning set, graph layout .... eventually.)
- Build a universal Turing Machine. Investigate Hopcroft, Motwani, and Ullman's TM programming techniques. Write some seriously interesting TM programs.
- Finish a project from earlier this semester that is still crying out for attention.
- Take the week off. Finish the exam. Build some graph stuff after Thanksgiving. Eat Turkey now.
- Do something else; just let me know.

You are expected to produce one more significant piece of work by the end of the semester. If you have a project that is crying out for you, by all means pursue it. If not, the first bullet above is the suggested graph algorithm project, but you will likely not actually program the graph manipulation piece until December. The part that makes sense to work on now is data extraction. The TM programming project (second bullet) is a reasonable alternative.

Finally, you should plan to put at least one assignment from FOCS Project into your portfolio. Now would be a reasonable time to investigate the portfolio system (if you haven't already) and to select an assignment for inclusion. That way, if you want to tweak it a bit more before you put it in, you have some time. (You are welcome to include more than one assignment, of course!)

Please turn in:

- Your last project as well as any other projects that you may not have turned in. An English writeup is critical; comprehensive code is not.
- A "table of contents" of what you've done in project this semester, so that I can be sure that I have everything.
- Any thoughts on assignments that are particularly useful/relevant and should be continued or absorbed into FOCS proper in future versions of the course.
- The reflection accompanying your portfolio entry.

Everything is due by 5pm Tuesday 14 December. Thanks!!