We have posted the final exam information page, including exam logistics, topics emphasized, and practice materials. Click on the "final exam" link in the left sidebar for more information.
UPDATED: We have added an additional practice final exam, and have also listed the location of the final exam (which depends on your last name).
As we wrap up the quarter, we will be offering our last round of help hours this week. Specifically, LaIR helper hours will end after Tuesday, 8/15. Nick and Rishi will hold their usual office hours this week, and SCPD office hours will be offered as normal this week as well.
Additionally, there are no discussion sections this week.
This week, we will be hosting "CS 106A lunches"! These are informal lunches with the course staff to give you a chance to get lunch, hang out, and ask any questions you may have (about anything!). Rishi and Nick will be attending, as well as various Section Leaders from both 106A and 106B (the followup course to CS 106A). The lunches will be at the following times and locations:
Students must swipe themselves in, but anyone is welcome, even those without meal plans. If you have any financial concerns about attending, please contact Nick or Rishi. Please meet at the entrance in each dining hall where you swipe in.
If you are planning on coming, we would appreciate you filling out this form so we can get a sense of how many students are interested (though this is not required to attend). We hope to see you there!
If you're interested in exporting your Eclipse projects as runnable programs to share with family and friends, see the handout on "JAR Files" linked to from the Handouts dropdown above. If you export your program as a JAR file, you can run it without Eclipse, just by double-clicking on it.
We apologize for the short notice, but Rishi needs to shorten his office hours tomorrow morning (8/10) to be from 9:30-10:30AM instead of the normal 9-11AM. As a makeup, Rishi will hold an additional office hour on Friday from 1-2PM in the usual room (Gates B02).
Next week on Wednesday, 8/16 @ 12PM and Thursday, 8/17 @ 12PM, we will be hosting "CS 106A lunches"! These are informal lunches with the course staff to give you a chance to get lunch, hang out, and ask any questions you may have (about anything!). Rishi and Nick will be attending, as well as various Section Leaders from both 106A and 106B (the followup course to CS 106A). Each lunch will be at a different dining hall on campus, and details will be announced early next week. If you have any financial concerns about attending, please contact Nick or Rishi.
As mentioned in class today during the Honor Code discussion, if you wish to retract any of your assignments for any reason whatsoever, please send Nick an email (email at left) saying which assignment(s) you wish to retract. We will, no questions asked, retract that assignment and give you a 0 for that assignment. In particular, if there were any Honor Code issues with that assignment, retracting will remove it and we will no longer consider it an Honor Code issue. Note that you may not retract just parts of assignments, and we do not provide an opportunity to redo that assignment. The deadline to retract an assignment is Tuesday, August 15 @ 1PM.
If you have any questions about the Honor Code, please see the Honor Code handout under the "Handouts" tab. Also feel free to come talk to us if you have any questions about the Honor Code, retractions, or anything else.
For your sixth assignment, you will implement a baby name graphing program that will give you practice with data structures, classes and interactors. See the assignment page for more details. The assignment is due Tuesday, August 15th, but make sure to get started early! Additionally, no late submissions (free late days or otherwise) will be accepted on this assignment.
The midterm exams have been graded, and individual scores have been released via Gradescope, an online course grading website. Please see the midterm webpage for more information about exam regrades, statistics and scores. Regrades will be accepted until 1PM on Wednesday, August 9, 2017.
For your fifth assignment, you will implement the algorithms for an image editing program. This assignment will give you practice with concepts like 1D arrays, 2D arrays, and image manipulation. See the assignment page for more details. The assignment is due Monday, August 7th, but make sure to get started early!
Thanks to everyone who came to the midterm review session today! A recording of the session is now available at the "Lecture Videos" link to the left. A copy of the slides from today are also available on the Midterm page under "Practice Materials".
For your fourth assignment, you will implement the classic arcade game Breakout. This assignment will give you practice with concepts like graphics programs, events, animation and instance variables. See the assignment page for more details. The assignment is due Monday, July 31st, but make sure to get started early!
In particular, the material covered by this assignment is also covered by the midterm, so starting this assignment before the midterm can give you extra practice with graphics, events, animation and instance variables.
The midterm is coming up Monday, July 24 7-9PM PST in Hewlett 200, and a recorded review session will be held on Friday, July 21 3:30-4:50PM PST in Gates B03. For detailed information, including material to study, exam policies, and practice material, please see the midterm info webpage, linked to in the sidebar at left.
For your third assignment, you will write a console program to play the game "Hangman". This program will give you practice with methods, parameters, return, Strings, and file-reading. See the assignment page for more details. This assignment may optionally be completed in pairs. The assignment is due Thursday, July 20th, but make sure to get started early!
IMPORTANT NOTE: In the original version of the starter code, the required methods were included in the
Hangman.java file, but mistakenly labeled
public instead of
private. This has been fixed in the updated starter code. If you previously downloaded the starter code, unfortunately you cannot simply change
private in your code, as you will get a compiler error. Instead, you can do the following:
Hangman.javafile from your old project's
srcfolder into your new project's
We sincerely apologize for the inconvenience. Please feel free to stop by the LaIR or Office Hours or email your Section Leader if you have any questions.
Thank you to everyone who has given feedback on some or all of their 2 assigned lectures this quarter (if you have not been emailed yet, your assigned lectures have not come up yet). We really appreciate your feedback and have been working to incorporate it as much as possible. If, at any point, you would like to provide quick feedback on a lecture besides the days to which you are assigned, please feel free - we would greatly appreciate it! The feedback link can be found in the "Lectures" dropdown at the top.
For your second assignment, you will write a series of Java console programs. These programs will give you practice with concepts like variables, methods, control flow, and more. See the assignment page for more details. The assignment is due Wednesday, July 12th, but make sure to get started early!
As a reminder, because of the July 4 holiday, we will not have lecture tomorrow. Additionally, there will be no helper hours or office hours tomorrow; they will resume on Wednesday 7/5.
Since we did not have much time to cover the Eclipse debugger during lecture on Wednesday, we have posted instructions and a handout walkthrough to help you get more familiar with debugging using Eclipse. There are two new resources that may come in handy:
We highly recommend you read through both of these resources to help you when working on Assignment 1. Knowing how to use the debugger is a valuable skill that will help you find and fix bugs more quickly. Moreover, if you run into bugs, you should try finding and fixing them yourself first before reaching out for help at the LaIR or office hours; in particular, at helper hours we will ask what you have first tried on your own to fix the issue you are having.
Good luck working on Assignment 1!
As a reminder, LaIR helper hours and office hours started yesterday, and are available if you need help on your first assignment, or if you have any questions about the material. The LaIR is in the first floor of Tresidder Union (in the food court area - sign up for help at the computer in the back) and is open Sun - Wed 7PM-11PM. Rishi and Nick's office hours times are listed in the sidebar to the left.
If you visit the LaIR, you will have the option to sign up for 3 different queues to most efficiently get help:
For your first assignment, you will write a series of Karel the Robot programs. See the assignment page for more details. The assignment is due Wednesday, July 5th, but make sure to get started early. Though Karel is a fun, simple robot, some of the questions can be tricky!
Regular section signups have concluded, and we have finalized section assignments; you should receive an email from your section leader this evening.
If you missed regular section signups, you may sign up using the late signup form in the "Section" dropdown at the top. Any SCPD students who missed the opportunity to sign up for a grader should do so also via the "Section" dropdown at the top.
If you would like to request a section swap, please carefully follow the instructions below. The deadline to request a section swap is Wednesday, 7/5 @ 3PM PST:
As mentioned in lecture today, as a small portion of your section participation grade we are asking each student to provide brief feedback on 2 assigned lectures throughout the quarter. The feedback should only take a few minutes, and will be used to understand how the course is going, and to help make it better. You will receive an email with a link to the feedback form before lecture on each day to which you are assigned. We greatly appreciate any feedback you have to improve the course!
Section signups are now open! Click on the "Section" dropdown at the top and select "Sign up for section" to submit your preferences. As a reminder, signups are not first come first serve. As such, you may modify your preferences any time up until the Monday 11:59PM deadline. We will notify you of your section assignment by Tuesday afternoon, 6/27. Sections start this week!
Note: Remote SCPD students (if you are an SCPD student but able to attend a section on campus, you may disregard this message) should not sign up for a section; instead, register through the SCPD signup link in the "Section" tab.
Welcome to CS 106A! We are looking forward to a fun quarter. Class starts Monday, June 26th at 11:30AM in NVIDIA Auditorium. Please see the "Handouts" dropdown above for the General Information handout, as well as the Honor Code handout. SCPD students should also read the SCPD Information handout.