For course schedule, click here .

Course Logistics

Lecture
Monday, Tuesday, Wednesday, and Thursday 2:00 PM - 4:20 PM
Location: Barnard Hall 126 (Lecture)

The "lab" portion of the class will take place in Barnard Hall 254 (CS computer lab)

I will likely lecture for only 60 - 90 minutes, and leave the remaining time as "lab section" time, where you can work on any assignments (labs/programs). Attending lab is optional.

NOTE: This is a 16-week course condensed into a 6-week course. This course moves fast, and there will usually always be 1-3 assignments due every week. This is NOT a good course to ignore or slack off in. It's important that you keep up with class and check the course website every day. You should expect to put several hours into this class every week. I promise it won't be miserable. I will always be here for you, and if you are struggling/need more time, I am always happy to help in whatever way that I can.

This class can be taken fully remotely if needed. All lectures will be recorded and put on this website (hopefully by 3:30 PM MST), as well as all other class material (notes, code, assignments, etc). If you are taking this class fully remotely, you will need to meet with me virtually once during the summer (see the "Grading Breakdown" section below)

Starting this Summer, Montana State University will start using Canvas (https://ato.montana.edu/canvas/) as their learning management system. Brightspace/D2L is no longer being used. You will be uploading your assignments to Canvas, and we will be posting grades to Canvas.

Instructor


Appointment Scheduling: You can schedule a appointment with me throughout the Summer (in fact, I will require you to do it at least once). Appointment scheduling can done through NavMSU with this link: https://montana.campus.eab.com/pal/8IuEeE9P5U. My availability is very flexible throughout the Summer. I can do same-day appointments, but you will need to send me an email or Discord DM instead of NavMSU.

Grader

Textbook

Other Required Materials

Other Resources

Catalog Description

Note from Reese: Before taking this class, you should feel comfortable basic Java programming, be comfortable using the following data structures: arrays, linked lists, stacks, queues, be comfortable with basic recursion, and how to analyze an algorithm using big-O notation

Course Outcomes

By the end of this course, students should be be able to:

Grading

30% - Labs (8 @ 4.3% each, I will drop your lowest lab grade)
40% - Programs (4 programs, 10% each)
20% - Quizzes (Online) (3 quizzes @ 6.67% each)
10% - Participation/Check-In

Grading Breakdown

Grading Scale

Q: Do you curve exams or final grades?
A: Maybe, but probably not. If exams or final grades are lower than I anticipated, then I may apply a curve. For final grades, if you are within 1% of the next letter grade, I will bump you up.

Late Assignment Policy


Grading Deductions

A major emphasis this Summer will be to submit code that compiles. If you submit an assignment, but the TA is unable to compile it due to errors, you will receive an automatic zero. You can fix this later on, but we will not grade any code that does not compile. If you can't get your program working properly, that's fine, but you need to fix/modify your program so that it at least compiles.

ANOTHER NOTE FROM REESE- I want you to be able to enjoy your Summer, without being bogged down by the workload in this class. If you have a legitimate reason (Summer plans, travel plans, work plans, etc) and you need more time on an assignment, I am usually ok with giving you an extension, just send me an email or Discord DM. Please do not take advantage of my generosity.

Getting Help and Succeeding

If you get behind or confused early on, it will make the rest of the class very difficult. This course IS NOT a good class to slack off/mentally check out in and it is NOT nice to people that don't ask for help if they need it. I (reese) am also here for you and I want to help you in whatever way that I can to help you succeed. You can always email me or send me a discord message, and I will respond as soon as I can. You should always give yourself enough time to complete the assignments, and you should never start programs the night they are due (remember that bugs and issues will likely come up as you are coding!!!).

Collaboration Policy

All students should read the MSU Student Conduct Code.

For programs, you are allowed to work with onepartner. Each partner should submit to D2L (but make sure you indicate in your submission who your partner is).

When it comes to programs, you may

You may NOT

Failure to abide by these rules will result in an "F" for the course and being reported to the Dean of Students.

Bots and AI

You should not use any bots or AI to develop your solutions on labs or programs. If it is found that you used such a tool, you will receive a zero on the assignment.

Plagiarism

You may not copy or modify solutions that are not your own (e.g. from the Internet, classmate, ...) for any graded material. Copying and pasting very small snippets of code is acceptable, however copying/pasting or stealing entire solutions from an external source is prohibited. I know how to use the Google and I have a Chegg membership, so If you find something, I will too! It is easy for me to tell if you copy and pasted code from the Internet, so please do not engage in such academic misconduct. If I find a student engaging in plagiarism, I will have to report you to the Dean of Students.

Copyright

Course Materials: The syllabus, course lectures and presentations, and any course materials provided throughout this term are protected by U.S. copyright laws. Students enrolled in the course may use them for their own research and educational purposes. However, reproducing, selling or otherwise distributing these materials without written permission of the copyright owner is expressly prohibited, including providing materials to commercial platforms such as Chegg or CourseHero. Doing so may constitute a violation of U.S. copyright law as well as MSU’s Code of Student Conduct.

More Helpful MSU Resources