Quick links

Guidelines and Useful Information

Guidelines and Useful Information

COS Independent Work Requirements

AB students are required to participate in a Junior Research Workshop (JRW) in the fall of junior year, a separate semester of independent work (IW) in the spring of junior year, and a two-semester thesis in their senior year. 

BSE students majoring in Computer Science are required to do at least one semester of independent work.  They indicate their intention to do independent work by enrolling in 397, 398, 497, or 498 and filling out the IW Sign Up form. BSE students may take as many semesters of IW as they wish, but only one additional semester of independent work may be counted as one of the departmental courses.

BSE seniors have the option of doing a two-semester thesis.  This is done by signing up for both 497 and 498 and selecting the thesis option on the IW Sign Up Form.  If you choose this option, you will receive a single grade for the entire year (you'll temporarily receive an "incomplete" on your transcript in January, which will be filled in with the correct grade in May).

A note to sophomores: If you are majoring in COS, you may sign up for 398 as a sophomore and do a one-on-one IW project. Normally, however, this will count simply as a course and will not satisfy your IW requirement. In particular, for AB students, this will just be another course for you, and will not exempt you from any of the IWs that you need to do during your junior and senior years. For BSE students, you will not be able to use IW done sophomore year to satisfy your one-course IW requirement for the BSE program.


Independent Work Seminars

The IW seminars provide a way for students working on similar projects to have more interaction, assistance, and feedback from peer students.  With individual advising, students working on related problems rarely interact with one another. They each meet with their advisers separately, and don’t hear much about what other students are doing.

The IW seminars bring together groups of students working on related problems.  Each student chooses and works on his/her own project, just as any other IW. The only difference is that meetings occur with faculty and other students in seminar-style once per week at a scheduled time.   During the meetings, the students discuss what they are doing, provide feedback to other students, and generate ideas for future work.  The seminars provide a great forum for honing small-group presentation and discussion skills that will be essential after graduation.  Individual meetings with the faculty adviser are also possible by arrangement. 

Within these seminars, it is possible for groups of 2-3 students to work on different parts of the same large-scale project.  As an example, a few students might work together on a system for collaborative grading of assignments in MOOCs (massive open online courses) with one student developing the user interface, another designing the algorithms for assigning problems to graders, and a third implementing a system for integrating grader responses in the back-end server.  Every student is responsible for writing a paper and making presentations individually, but it might be possible to achieve much more with a collaborative effort than with a set of individual ones (the whole is greater than the sum of parts).  In any case, team efforts could be more fun and engaging for the participating students.  

The titles, faculty advisers, expected meeting times, and abstracts for the IW seminars offered next semester are listed here, and detailed descriptions can be found here


Selecting Good Projects

Selecting a good project is usually the most important and trickiest part of the IW process. 

There are many types of projects.  Independent work in COS may require a significant programming effort, a theoretical study involving the design and analysis of algorithms, or an applications problem in some other field.  No one set of guidelines applies perfectly to projects of all types.  However, that said, here are some guidelines to consider when choosing your project:

  • Choose something you are passionate about.
  • Choose a project with some aspect of novelty (a new app, a new algorithm, etc.).
  • Choose a project with easy, medium, and hard milestones.
  • Choose a project that you can complete in one semester even if things go wrong.
  • Think about how you will evaluate your results before starting the project.
  • Listen to your adviser when he/she suggests changes to the scope of your project.
  • Do not choose a project with unresolved dependencies (e.g., data sets, software licenses, etc.).
  • Again, choose something you are passionate about.

For more details and sage advice, look at Brian Kernighan’s “unsolicited advice on IW.”


Giving Good Talks

Giving a good talk about a project is much harder than you might think and probably more important than you might think. No matter how smart you are or how hard you work, you will not become a great scientist/engineer until you can communicate your ideas effectively.

There will be a special session on "How to Give an IW Talk" around the eighth week of the semester.   That session will cover how to organize your talk, what content to include, how to format your slides, and many other valuable bits of information.   The session is mandatory for all first-time IW students.

There are also many resources about how to give effective talks on-line.  Here is a talk about how to give talks. Here is a video of Simon Peyton Jones giving the talk on how to give talks Note that this talk is about how to give a talk after you have done a bunch of research. Here is a talk David Walker gave to Princeton's industrial affiliates. Your talk will be shorter, but this is a good example of a research talk. Notice that slides 2-15 explain that there is lots of "ad hoc data" but no standard programming tools to manipulate it easily -- that is the problem the PADS technology will address. Slides 16-22 describes what research was done -- it describes the main components of the PADS system; it gives pictures to describe the software architecture; it shows (some of) the results of using one of the PADS tools. Slide 23 explains some future research. Slides 24 and 25 recap and conclude. Once again, this talk was given after a bunch of research was done. It is probably a better guide for the final presentation talk than the proposal/progress report, but we hope it helps you see the general style of a research talk.

You are heavily encouraged to ask your adviser to review the content of your talk in advance of the presentation and to take their suggestions for improvement seriously. To improve your presentations, you should practice them, both alone and in front of others, before giving it during your allotted time slot. And take feedback on your posture, eye-contact, style and energy seriously as well as the structure, organization and content of your talk. You should imagine that the audience you are attempting to communicate to is a group of senior Princeton undergraduates in computer science. Since they are Princeton seniors, they are smart and have quite a bit of knowledge about computer science in general, but will not know the specifics of your particular research problem or area. Therefore, you need to introduce the problem and the reason you are doing your research clearly. You cannot depend upon your audience knowing specific jargon, nonstandard mathematics, the nuances of particular programming languages or the specifics of certain software packages. You also need to be a bit of a salesman or saleswoman -- you need to convince your audience that your ideas are useful or intriguing or ingenious or astonishing. You want to try to leave your audience impressed by what you have accomplished and hoping to hear more about it at a later time. If your talk depends upon research or results done by other people then, as usual, you need to cite those other people or papers or software products in your talk.

The McGraw Center for Teaching and Learning 

The McGraw Center for Teaching and Learning will have a representative in the E-Quad for Independent Work Learning Consultations.To schedule an consultation, please visit https://mcgraw.princeton.edu/undergraduates/learning-strategies-consultations-undergraduates/schedule-consultation. Sign up for a one-to-one session in the McGraw Center (328 Frist) at the link listed above or email mcgugrad@princeton.edu. The McGraw Center can also help with:

  • Self-regulation and time management
  • Avoiding perfectionism and overcoming procrastination
  • Dealing with large projects
  • Engaged and active reading
  • Advanced problem-solving
  • Effective note-taking
  • Exam preparation


BSE Thesis Option

It is possible to do a senior thesis if you are a BSE. Like AB senior theses, a BSE senior thesis will take 2 semesters and the final report is expected to be about twice as long as an ordinary single-semester Independent Work project. Note that on your fall transcript you will receive a "INC" for COS 497 and this will be changed to your thesis grade when COS 498 is completed in the spring.

If you would like to do such a thesis you must follow the following steps:

  • You must sign up for COS 497 in the fall and COS 498 in the spring.
  • You must indicate that you plan to do a thesis on the IW Sign Up form.

If you change your mind about wanting or not wanting to do a thesis during the fall semester, keep the following in mind:

  • If you decide that your thesis topic is not working out and want to switch into a normal single-semester IW project then you may do so with the agreement of your adviser by logging into the IW portal and changing your thesis to single semester independent work before the mid-semester checkpoint deadline. In your mid-semester checkpoint form, explain the reason for deciding to change from a thesis to a single-semester project.
  • If you are signed up for an ordinary single-semester IW project and your project is going very well, you may switch to doing a thesis by logging into the IW portal to make the change from single-semester to thesis.  You must have the agreement of both your adviser and the independent work coordinator to do this.   You will only be allowed to switch into a thesis if you have demonstrated substantial progress on your topic. The deadline for switching is also the mid-semester checkpoint.  Again, in your mid-semester checkpoint form, explain the reason for deciding to change from a single-semester project into a thesis.
  • An alternative to formally switching to a thesis is simply to do two consecutive semesters of independent work. In this case, the two semesters are treated like two individual courses. Each semester, you must satisfy the requirements for single-semester independent work. That means doing two written proposals, oral presentations, and papers (but no February draft paper and no Final Presentation and your two papers will be shorter than a thesis). The second semester may build directly off the work done in the first semester.

Grading Policy

Grades for independent work will be determined by assessing
  • the creativity, originality, thoughtfulness and impact of student ideas
  • evidence of research skills including analysis of research literature, the ability to learn new techniques and ideas individually, and the ability to accomplish research tasks, the ability to adjust to unforeseen obstacles during the course of research
  • the quality, impact and originality of the project results
  • the thoroughness of results evaluation
  • the content, clarity and polish of presentations, including the oral progress presentation
  • the content, organization, clarity, quality and writing of the project proposal and final report
  • time management skills and on-time execution of checkpoints, presentations and reports

Final grades will be determined jointly by the adviser, second readers (for thesis writers) and the Independent Work Coordinators. Additional Computer Science Department faculty may read student final reports and help assess presentations.


Collaboration Policy

The collaboration policy for IW projects is the same as for COS 333 projects.  All worked claimed as part of the project must be your own.  Sources and collaborations must be cited.  See the COS 333 web page for details. 



AB students can apply for IW project/senior thesis research funding by accessing the online application in the Student Activities Funding Engine (SAFE).   Please refer to the Office of Undergraduate Research calendar for deadline dates for funding.

BSE students will receive an email from the School of Engineering and Applied Sciences regarding funding at the beginning of the semester. 

IW Students are also encouraged to review the Independent Work Equipment List for materials for their upcoming project.   All equipment/materials must be returned at the conclusion of the project.



The IW coordinator(s) are responsible for overseeing the processes of the IW program and assuring their academic integrity.  The IW coordinators also determine the final grade with input from your adviser and other members of the faculty. Only the IW coordinators can approve any changes to deadlines, etc., so please do not ask anyone else to grant extensions or allow you to skip required components of the IW. Your research adviser is the person with whom you will most closely work over the course of your research. It is up to you to find your own adviser and mutually agree on a research topic. It is your job to meet all the deadlines for the course -- your research adviser may not even be aware of them. Do not ask your research adviser to grant extensions for the course -- even if they agree, it will not be honored by the IW coordinators.

Mikki Hornstein, the Independent Work Administrator, serves as the administrative contact for the course and handles many of the logistics. 

To contact the IW coordinators and IW administrator for questions of general interest to students about IW, please use the piazza COS IW site.  


Example Single-Semester Projects from Previous Years

Spring 2019

Richard Du, "Improving Interactive Image Segmentation with Image Preprocessing" | Adviser: Jia Deng

Paulo Frazão, "Applying Regression Methods to University Financial Aid Data" | Adviser: Xiaoyan Li

Lauren Johnston, "Predicting Crop Yield and Disease Trends in Central New Jersey Farms" | Adviser: Barbara Engelhardt

Maia Hamin, "'don't ignore this:' Automating the Collection and Analysis of Campaign Emails" | Adviser: Arvind Narayanan

Jackson Neus, "Bookish v2: Humanities Research at Scale" | Adviser: Brian Kernighan

Pulkit Singh, "Integrating a Gaussian Classifier into a CNN" | Adviser: Thomas Griffiths

Khanh Vu, "Coffee Delivery Robot: Collision Avoidance, Motion Fine-Tuning, and Fine-grained Localization" | Adviser: David August

Austin Wang, "Improved Transformer Architecture for Sequence to Sequence Translation" | Adviser: Karthik Narasimhan

Alice Xue, "An Acoustic Automated Lie Detector" | Advisers: Hannah Rohde (University of Edinburgh), Adam Finklestein

Yanjun Yang, "Comparing Formalizations of Proofs about Programming Languages" | Advisers: David Walker, Matthew Weaver

Example Senior Theses from Previous Years

You can download all previous senior theses from Princeton's DataSpace.


Frequently Asked Questions: 

I have a great independent work idea that will make me rich and famous. Does the university own it?


According to the University's rules, you own the copyright in the software you write (and your research papers and works), except in circumstances that rarely apply to undergraduates, such as support by federal research grants. Having said that, it is uncommon for "independent work" to be completely independent -- students are advised by a faculty advisor and that advice often helps shape the products developed.  Moreover, the faculty advisor is an employee of Princeton and has different IP obligations to the university than the student.  I think the bottom line is that as far as we know, the university has never claimed ownership of any independent work done by undergrads.  Having said that, this page is an informal guide.  It is not a legal document, is not written by someone who is a lawyer or knows copyright or patent law, and cannot be taken as official university policy.  It should certainly not be taken as sound legal advice.

Can I continue my summer project at Yagoosoft Corp as independent work?


We strongly discourage undergraduates from undertaking independent work that is subject to confidentiality agreements with third parties or other similar restrictions, because it may violate University policy and it might limit the scope or nature of your future research at Princeton and elsewhere. Before entering into any such agreement, you must get an opinion about the intellectual property issues from the General Counsel's office and the Office of Technology Licensing.

Follow us: Facebook Twitter Linkedin