Due to the COVID-19 outbreak we are adjusting the syllabus. This page is the adjusted syllabus.
The old syllabus is here just for reference.
|
|
|
|
|
|
|
|
![]() |
![]() |
![]() |
![]() |
Belanie Nagiel |
Megan Phibbons |
Charles Lyu |
Daniel Hwang |
Arushi Bhatia Carolyn Chen Karen Chen Vanessa Chen Jacob Cimerberg Kevin Deng Cooper Edmunds Zack Freid Josh Geden Doherty Guirand Angelo Guo Jeff Kim Shruthi Kumar Laura Li Tess Lipsky Julia Long Rachel Ma Merrill O'Shaughnessy (1/2 the semester) Jessie Ou Sanna Symer Cathy Wang Cady Zhou
Bryan Center Griffith Theater, now Virtual
On the lower level
|
|
|
In each class the lecture is designed to provide important and
useful information that will allow you to learn concepts and complete the
assignments that you are working on (APTs and programming
assignments). Lecture videos typically include WOTO questions that you
should try to complete
before the lecture meeting time if possible.
Here are some of the topics we will cover, not in particularly any order.
List of Discussion Sections:
Discussion sections are now virtual. Discussions are still on Mondays. You should try to attend your discussion section. If your discussion time is not at a good time for you, you can attend another discussion section. We will have a few discussions at new times for those in a different time zone. For those of you who are not able to attend any discussion section, we will post one video of one of us going through the discussion problems. More on how Discussions will work is below in another section.
Our original discussion sections are listed below. You will still have your
discussion section graded by your Discussion leaders from your original
discussion section.
Sections | Day/Time | Room | UTA |
---|---|---|---|
01D/19D | Mon 10:05am-11:20am | Gray 228 |
Belanie Nagiel Cooper Edmunds |
13D | Mon 10:05am-11:20am | Gross Hall 104 |
Laura Li Daniel Hwang |
02D | Mon 11:45am-1:00pm | BioSci 154 |
Jake Cimerberg Jessie Ou |
10D | Mon 11:45am-1:00pm | Old Chem 003 |
Zack Freid Doherty Guirand |
17D | Mon 11:45am-1:00pm | Allen 103 |
Megan Phibbons Kevin Deng |
03D | Mon 1:25pm-2:40pm | BioSci 063 |
Vanessa Chen Tess Lipsky |
14D/15D | Mon 1:25pm-2:40pm | LSRC D106 |
Arushi Bhatia Jeff Kim |
04D/20D | Mon 3:05pm-4:20pm | BioSci 155 |
Sanna Symer Angelo Guo |
05D | Mon 3:05pm-4:20pm | Old Chem 201 |
Rachel Ma Josh Geden |
08D | Mon 3:05pm-4:20pm | Perkins Link 065
Classroom 2 |
Shruthi Kumar Carolyn Chen |
09D/12D | Mon 3:05pm-4:20pm | Physics 235 |
Karen Chen Merrill O'Shaughnessy |
11D/16D | Mon 3:05pm-4:20pm | Allen 318 |
Julia Long Cathy Wang |
06D/07D/18D | Mon 4:40pm-5:55pm | LSRC A156 |
Cady Zhou YongXin Tan |
If you have not added yourself to the piazza site, the link to add the course add yourself is in a Sakai announcement.
Note that you can post anonymously. We also encourage students to answer other student's questions and we will endorse correct answers!
The textbook is strongly recommended for those who do not know Java. Consider it required in that case, and completing questions in the book earns points. This book is $54.
This is an alternative book, Java for Python Programmers, that is not nearly as detailed as the other book. This book is a very short ebook for Python programmers to learn some Java.
These books cover our data structure topics such as maps, linked lists, etc. There are interactive parts to the book.
The table below shows how the categories of work done in class are used to calculate your grade in Compsci 101. Grading is done on an absolute, but adjustable scale. This means that there is no curve. Anyone earning 90% or more of the total number of points available will receive a grade in the A range, (A+,A is 94%, A- is 90%); 80% = B range, 70% = C range, 60% = D. This scale may go down, i.e., we could make the A- cut off at 88%. However, the scale will not go up. So if everyone gets 90% or above, then everyone will get an A- or above.
Discussion Sections | 6% |
Programming and analysis assignments | 23% |
WOTOs(75%)/Reading(25%) | 5% |
APTs | 6% |
APT Quizzes (2) | 10% |
Exam grade: Exam1, Exam2 and Final Exam | 50% |
The first exam was closed-book. The second exam and final exam will be open-book, open notes.
NEW: The 50% for the exam grade of Exam1, Exam2 and Final Exam will now be the maximum of the three grades.
NEW: The 10% for the two APT Quizzes will be the maximum of the two apt quizzes.
Exams will be held online.
Discussion sections will be held every Monday. Discussions may include warm-up problems to be completed prior to discussion and individual and group work during section. As of March 20, attendance is strongly encouraged but not required for the remaining discussion sections. Participation is encouraged and will be a chance to hang out with your discussion mates. Each discussion will consist of one or two parts: pre-discussion (if any) will be one point. Discussion will be three points (if there is a pre-discussion), four points if there is not a pre-discussion.
You will need to submit the pre-discussion and discussion forms for credit. Discussion reflect document must be completed by 11:59 pm Eastern time on the Wednesday after the Monday discussion.
If you need a few more days, then fill out the extension form on the forms tab and take the extra days. Try not to get too far behind.
Points on assignments will vary. Assignments typically take more time and require more thought and analysis as the semester progresses.
If you're having trouble, be sure to see a UTA/TA and preferably the professor as far before the due date as possible. Don't give up, PLEASE ask for help.
Algorithmic Problem-solving Testing problems (APTs) will be given throughout the semester. You'll be given a description of a problem and asked to write code to solve it - testing the code online and seeing the results of the automated tests. You'll submit the code for grading when you decide you're ready. We don't look at the source code when grading, we run it and test it. However, we may discuss alternative solutions to help you be effective programmers. It is explicitly forbidden to write code that looks for specific test cases -- such code will receive a grade of zero. APTs should be submitted by 11:59 pm on the due date. A one day grace period allows you to turn in APTs until 11:59 pm after the day they are due. If you need a few days extension, fill out the extension form on the forms page. Keeping up with APTs ensures you understand the topics we're discussing in class.
There will be two APT quizzes during the semester. For APT Quiz 2, quiz, you'll have 5 hours to complete it. You'll have a three to four day window to block out the time you have to complete APT quiz problems. Typically this window will include a weekend.
Doing APTs beyond requirements can earn bonus points. In general, bonus points are useful for students close to the boundary between grade cutoffs, e.g., B-/B or A-/A or B+/A- and so on . We may use bonus points to move students who are slightly below a cutoff to slightly above.
There is absolutely no collaboration allowed on quizzes and tests/exams. This applies to APT quizzes, Midterm Exams, Final Exam, and any other quizzes and tests given during the semester.
In general we expect that you are taking 201 to learn and master topics in computer science. You cannot do this without doing work. However, we want to ensure that you are able to use best practices in learning. These practices include collaboration and finding online resources, but there is clearly some tension in learning material on your own and collaborating.
In no case may you ever show your code to someone as a way of helping them. You may ask for help with your code, e.g., in debugging it. However, you should never show your code to someone with the intent of helping them with their own questions. There is clearly a hard-to-enforce guideline here. We include this guideline to make it clear what we hope you will do as far as your own work.
For APTs, we allow collaboration while you are adhering to the "show no code" guideline above. You may find solutions to some APTs online. You will not learn how to solve APTs by using these solutions, and if you use code found online we ask you to document that in an APT reflect form as well as in comments in the code you write. Failure to document your collaboration and any online code you use can result in a grade of zero for the APT assignment.
For assignments, we sometimes allow partners. In general we encourage collaboration subject to the "show no code" guideline -- you may ask for help in debugging your own code for example. If you find code online, you should note this in the assignment reflect. If you don't document code you use, and we determine that you've external sources, we will use Duke's office of student conduct policies and you may receive a zero on the assignment.
You must adhere to the Duke Community Standard.
We will use several course web sites for this course.
Web Sites This Course uses
The syllabus, class notes, readings, assignments, apts, labs and other
resources are available here.
Grades, reading/knowledge quizzes and announcements will be here.
If you have any questions about the course, post your questions here
because it is seen by all the course staff as well as all the students.
This site is a useful
tool for seeing exactly what your program is doing when it is run.
Additionally, you may want to paste
your code there to help debug more complex issues --- always make sure your most current version is saved on your computer within Eclipse. Emergency Procedures
See
this link about what to do if there is an emergency during class.