Comp 151 Syllabus
Instructor Contact info
- Instructor: Dr. John F. Santore
- Office: DMF Science Center 354
- E-Mail:jsantore@bridgew.edu
- Website: http://webhost.bridgew.edu/jsantore/Fall2026/CS1
Office Hours For Fall 2026
- Monday 4:45-5:45 pm (before my night class)
- Tuesday 9:30-10:30am
- Wednesday 2-3pm
- Friday 10-11am
- or by appointment
I also will take appointments if you cannot make my other office hours, however, I generally have meetings and work prepared for a day or two ahead so plan on about 48 hours from the time I get your request to us being able to meet.
Course Description:
This is a beginning course in programming, which introduces concepts of computer organization. Problem-solving methods and algorithmic development stressing good programming style and documentation including top down and modular design will be covered. This course emphasizes problem solving with programming exercises run on the computer. Offered fall and spring semesters.
Course OutComes
At the end of the course Students will:
- Understand the fundamental syntax & computer programs
- Understand the fundamental control and loop (iteration) structures
- Program simple algorithms, such as counting, summing, and finding maximum/minimum
- Implement, test, and debug simple recursive functions and procedures
- Understand the basic data structures used in programming
- Argue effectively about the merits and possible unintended consequences of a computing implementation
- Effectively write or present about the impact of computing on society. Students should extrapolate from historic lessons learned from unintended consequences of computing to the current computer solutions.
Textbooks:
|
One required Textbook: |
|
|
Title: |
Python Crash Course 3rd Edition
|
|
Author: |
Eric Matthes |
| ISBN |
978-1718502703 |
- Project related work: 40% (coding, testing, design, etc)
- Class(homework/quizzes/participation/Comp143 in class exercises):15%
- Exams 45% : Midterm (Oct 13-14) 20% and final 25%
Class Requirements and Grading
Project Work
You can't really grok a programming language without writing lots of programs in the language, so a large part of the grade will be project work. Even in the LLm/AI era, you need to deeply understand the programs or you will not succeed. (Examples and discussion of this as the semester goes on) Project work is done individually. There will be several projects in the class. The earlier projects will be less difficult and therefore will be worth less than the later projects which will require more effort and time.
Non-Project Work
Non-project work (exams and misc assignments) are individual assignments and should not be done with any other classmates. (discussion without recording devices is always allowed for homeworks, however, exams are closed neighbor)
In Class Comp143 work
Many of the weeks during the semester, there will be in class
exercises in the comp143 section. The PAL for the class will let you
know if each exercise should be done individually or can be a
collaborative exercise. In the latter half of the semester, there
will be an in class programming quiz in the comp143 section which
will be worth quite a bit more than most of the quizzes. It will be
announced in the main class several times as we approach the quiz
which will be in November (or perhaps very early December if
something unexpected happens). All comp143 graded work will be
counted in the 15% in-class portion of the grade
Midterm Exam:
| Mon Wed Class | October 14 | In class |
| Tues Thurs Class | October 13 | In class |
Note that there is no class/office hours on Oct 12th because of the state holiday (but midterm warnings are due the next week so we need to tdo the midterm anyway.
Final Exam:
| MW 12:20 PM | Wednesday, Dec. 16 | 11:00 AM – 1:00 PM |
| TR 11:00 AM | Tuesday, Dec. 14 | 11:00 AM – 1:00 PM |
Generally when one applies for a tech job, there are both online coding challenges and offline ones (perhaps even the ubiquitous but dreaded 'white-board challenges'. For that reason, the projects require you to use a computer, but my exams are offline paper based exams; you will need to be capable of both in order to succeed in the industry.
Students with Special Needs
Anyone who has special needs should contact me in the first week of classes with their letter from the Academic Achievement center so that reasonable accommodations can be agreed on.
Academic Integrity
See the 2026-27 academic integrity policy for a complete description of the academic integrity procedure at Bridgewater.
Academic integrity will be taken very seriously in this class. All individual work must be your own. If you cheat or otherwise represent the work of others as your own. You will receive an F for the course.
Guidelines for proper academic integrity:
Discussing problems with your classmates can help you understand the problems and kinds of solutions to those problems that you will learn about in this class. In an effort to make in clear what sort of discussions are appropriate and encouraged in this class and which cross the line to academic dishonesty I use the following guidelines: You may discuss any out of class problem I assign in this class with your classmates or other so long as no one is using any sort of recording implement including, but not limited to, computers, digital recorders, pens, pencils, phones etc. This lets you talk about theoretical solutions without sharing the actual implementations. As soon as anyone in the group is typing, writing etc, all conversations must stop. You may look at someone else's program code only very briefly in order to spot a simple syntax error. As a rule of thumb, if you find yourself looking at someone else's code for more than about 30-45 seconds it is probably time to stop. If you are having trouble with your program, come to the instructors office hours for more help.
All in class exams and quizzes are closed book and closed neighbor. If you are found using a data storage device of any kind during one of these evaluations, you will be failed for the course.
If you need to
LLM/AI and Academic Integrity in my comp Comp151 sections:
While this current
generation of LLM is a valuable tool, it is one that you need to
guide. They can do nearly everything in this class, but in higher
levels they make many mistakes, so it is vital that you understand
this material to be able to use these tools successfully in later
work. For that reason, in this class, we will only allow the built
in AI in the Pycharm editor. (If you are a CS major and meet me
again in my 400 level classes the expectations/rules will be very
different). Any other AI/LLM use in this class will be considered
cheating.
Standards for in class behavior:
You are all adults and are expected to act as adults in this class. While questions are encouraged in this class, if a particular line of questioning is taking us too far afield, I will ask the student to come by my office hours or to see me after class.
Cell phones, pagers, electronic organizers and other devices should be silenced while in class. If you work of EMS or something similar, please turn your cell phones/ pagers etc to vibrate mode so that you are not disrupting others in the class.
In the unlikely case of trouble makers in the class, those who are simply attempting to disrupt the class will be asked to stop; those who will not, will be referred to the college for appropriate action. The BSU statement of class behavior can also be found at the 2026-27 academic integrity policy
Tentative Schedule
I may well rearrange some of the later material based on classroom interaction. The pace might be more aspirational than achievable, but this is my ideal.
|
Week |
Topic |
|
Week 1 |
Introduction to the class |
|
Week 2 |
Git and Github |
|
Week 3 |
lists and iteration |
|
Week 4 |
working with external libraries |
|
Week 5 |
selection, the rest of repetition, and files |
|
Week 6 |
functions |
|
Week 7 |
dictionaries and working with more data |
|
Week 8 |
review and midterm |
|
Week 9 |
Merits and consequences of computing |
|
Week 10 |
files and exceptions |
|
Week 11 |
Using python to do something useful |
|
Week 12 |
Simple Algorithms |
|
Week 13 |
recursion in python |
|
Week 14 |
Social consequences of computing |
|
Week 15 |
review and final |