Academic Integrity

CSE Department Academic Integrity Policy:

UB Academic Integrity Policy:

All submitted work must be of your own creation and you must not share your submission with anyone else. If any submission is very similar to code that has been submitted by another student or can be found online, it is in violation of this courses academic integrity policy and all students will be penalized whether they were copying or sharing their code with other students so they can copy. If two submissions are similar beyond what is likely if the students worked independently, then both students are in violation of the academic integrity policy.

All violations will result in: 

An F in CSE115.

It is your responsibility to understand what constitutes an academic integrity violation. If you have any question whether something you are doing is a violation or not, ask for clarification before receiving an F in the course. I will not entertain excuses after you have been caught.

Examples of acceptable behavior:

  • Discussing an assignment with your classmates and brainstorming abstract solutions, then writing code independently.
  • Discussing the Friday pre-lab with your classmates.
  • Searching the Internet for supplementary material on the course topics.
  • Asking the teaching staff for clarification on a homework question.

Examples of unacceptable behavior:

  • Submitting code that you did not write.
  • Allowing another student to see your code for an assignment.
  • Collaborating with another student to write code together for an assignment.
  • Allowing another student to access your code. (Examples: Do not host your code in a public repository. Allowing your roommate to access you laptop)
  • Copying a large amount of code found on the Internet into your submission.
  • Attempting to access the grading code on AutoLab.

If you plan on cheating, plan on taking this course again.


There is no curve for this course. There will be no changes to the grading policies or grade cutoffs throughout the semester.

There are 3 different different assignment types:

  • Problem Sets
  • Labs + Final Exam
  • Projects

Letter grades will be determined by the following requirements. All three requirements must be met to earn a grade.

Letter Grade Problem Set Level Labs Complete Project Objectives
A 15 12 15
A- 15 11 13
B+ 14 10 12
B 14 9 9
B- 14 8 6
C+ 13 7 3
C 13 6 3
C- 13 5 3
F Did not meet all C- requirements

Problem Sets

This course features a random problem set generator allowing you attempt as many coding problem sets as you'd like. Each problem set contain 5 randomly generated coding questions. Complete problem sets to earn points and gain levels. Each new level introduces new course concepts into the question pool.

There is no penalty for getting a question wrong. Just check out a new problem set and try again. Each problem set can only be submitted once for credit, but can be resubmitted additional time for feedback allowing you to understand your mistakes before checking out a problem set.

Problem sets may be submitted until: May 18th @ 11:59 pm


Lab attendance is required.

There are no labs during the first week of classes.

A new lab will be introduced each Friday in lecture for the first 12 weeks of the semester. In your lab section you may attempt any lab has been introduced and labs can be repeated in later weeks. There is no partial credit for labs, it is either completed or not and labs must be completed during your lab section. If you don't complete a lab, you receive no credit, however you can attempt the same lab again in a later week.

If you complete a lab early, you may attempt one additional lab in the same lab session. You may attempt a maximum of 2 labs per session. This allows you to catch up on labs if you have to miss a session for any reason. In addition, there is no new lab introduced for the last week of classes allowing another opportunity to make up past labs.


There are 3 mini-projects in this course each divided into 5 objectives. These objectives will be reveled throughout the semester. After completing all 5 objective for a project you will have written a fairly large piece of software with real-world functionality. Any student who can complete all 3 mini-projects will be well prepared for success in an age based on computers.

Final Exam

There will only be one exam in the semester and it is scheduled during finals week. This exam will provide an opportunity earn 3 lab completions. Note that all lab completions are earned through timed assessment under the watch of the course staff.

Contact Information

Instructor: Dr. Jesse Hartloff
Office: Davis 344
Office Hours: Tuesday 1:00 PM - 3:00 PM


There is no required textbook for this course.

Recommended books: 

How to clone a git repository in eclipse:


Advice from alumni to incoming STEM majors: