MWF 8:10am - 9:00am (A1)
M.C. Reynolds 110
Dr. Brent Yorgey
MWF 11:10am - 12:00pm (A4)
M.C. Reynolds 315
W 1:10pm - 4:00pm (L8)
R 1:10pm - 4:00pm (L9)
Dr. Mark Goadrich
Introduction to solving computational problems, including the fundamentals of computer programming. Topics include imperative programming constructs (variables, loops, conditionals, functions, recursion), basic object-oriented constructs (classes, objects), and some fundamental algorithms and data structures (dictionaries, arrays, linked lists). Student learn these concepts through studying the Python programming language.
Upon completing this course, our goal is for you to be able to:
How to Think Like a Computer Scientist: Interactive Edition
CheckiO Python Practice
[Adapted from Spencer Bagley and David Clark, via Robert
CSCI 150 uses a real-world policy on due dates—but this may not
mean what you think! In the real real world, due dates exist but
they are often not ironclad. The purpose of deadlines is usually to
help motivate you to complete the task, but if you need more time to
get the job done well, you email whoever set the deadline to ask if
you can have more time. Studies have shown that deadline extension
requests—in moderation and when truly needed—often lead to
better employee evaluations (not to mention better work). [See Go
Ahead and Ask for More Time on that
by Ashley Williams.]
If you need an extension on a due date, email me and explain what
you need, and it will probably be fine. It helps if you propose a
concrete new deadline (e.g. “I can get it done by 5pm on
Wednesday”). If you ask for lots of extensions, we’ll work together
to find a way to help you keep up. Note, however, that late
submissions may not receive feedback as quickly as on-time
If you have significant extenuating circumstances that cause you to
miss multiple deadlines, please come to office
hours to discuss broader accommodations. I’m
happy to be flexible, but it helps to know what you need so I can
figure out the best way to help.
Each student should schedule and attend at least two office hour
meetings with either their lecture or lab instructor at some point
during the semester.
There will often be short homework assignments to be completed,
typically assigned on Friday and due Wednesday. Homework with coding
practice problems will be submitted electronically. By-hand homework
should be submitted on physical paper at the start of class time –
you can write (neatly) or type and print such solutions.
Wednesday Lab Code of Conduct
Much of your experience with programming in this course will be through weekly labs. Each lab will be assigned in lab with time allotted to work through the materials, and will be due by the start of the following lab.
On these labs, you will work with a partner on the lab assignments. Their name must be listed on any code you hand in as joint work. A partnership should only turn in a single copy of the assignment.
Lab attendance is required. Labs take place in the Snoddy Computer Lab, in the Bailey Library. As you go through the exterior door of the library, turn immediately to your left and enter the Snoddy Academic Resource Center. Continue through the door at the far end of the hall into the first computer lab, and then enter the second lab at the back.
You will have three projects in this course. These projects will cover concepts we have discussed in class and in labs, and will be due approximately two to three weeks after they are assigned.
You must work individually on the projects. You may discuss concepts and ideas with your classmates, but the code you turn in must be your own. You will be graded not only on correctness, but also technique, documentation and evaluation of your solution. Further details on the grading standards and handin instructions for each project will be given when they are assigned.
There will be three exams. Each exam will have two parts:
Take-home part: At the end of the written exam will appear some Python coding problems, the solutions to which are to be
submitted by the start of the next class period.
There is no final exam; you will complete a final project instead, as
described above under Projects.
Each assignment is assessed as Complete, Partially Complete or Incomplete.
Criteria for the first two categories will be specified for each assignment. Final course
grades are earned based on cumulative assignment outcomes:
If a submitted assignment receives a Partial assessment and the student seeks a Complete assessment:
If a submitted assignment receives a Incomplete assessment, a similar list of requirements will be provided. In most cases, an Incomplete assignment can only be upgraded to Partially Complete, but the instructor reserves the right to allow students to achieve Complete on a case-by-case basis.
Although you and I play different roles in the course, we both have
your learning as a common goal. There are things I expect from you as
a student in the course, but there are also things you can expect of
me as the course instructor and facilitator.
If I am not fulfilling my responsibilities outlined below, you are
welcome (and encouraged!) to call me out, perhaps via the anonymous
feedback form. I will also
initiate a conversation if you are not fulfilling yours. However, none
of us will meet all of the expectations perfectly—me included!—so
it’s also important that we have grace and patience with one another.
Attendance in this class is not required as part of your grade.
However, I do expect you to attend and appreciate knowing in advance
if you will need to miss class.
If you have a documented disability or some other reason that you
cannot meet the above expectations, and/or your learning would be best
served by a modification to the usual course policies, I would be
happy to work with you—please get in touch (via Teams or email)! The
course policies are just a means to an end; I don’t care about the
policies per se but I do care about you and your learning.
It is the policy of Hendrix College to accommodate students with
disabilities, pursuant to federal and state law. Students should
contact Julie Brown in the Office of Academic Success (505.2954;
email@example.com) to begin the accommodation process. Any student
seeking accommodation in relation to a recognized disability should
inform the instructor at the beginning of the course.
Hendrix College values a diverse learning environment as outlined in
the College’s Statement on Diversity. All members of this community
are expected to contribute to a respectful, welcoming, and inclusive
environment for every other member of the community. If you believe
you have been the subject of discrimination please contact Dean Mike
Leblanc at firstname.lastname@example.org or
501-450-1222 or the Title IX Coordinator Jennifer Fulbright at
email@example.com or 501-505-2901. If
you have ideas for improving the inclusivity of the classroom
experience please feel free to contact
me. For more information on
Hendrix non-discrimination policies, visit
Hendrix recognizes that many students face mental and/or physical
health challenges. If your health status will impact attendance or
assignments, please communicate with me as soon as possible. If you
would like to implement academic accommodations, contact Julie Brown
in the office of Academic Success
(firstname.lastname@example.org). To maintain
optimal health, please make use of free campus resources like the
Hendrix Medical Clinic or
Counseling Services (501.450.1448). Your health is important, and I
care more about your health and well-being than I do about this class!