CSci 284 Course Syllabus
TR 11:00 am, Linux Lab (Woods 136)
|
Prof. Stephen P. Carl
|
Office: |
Woods 133 |
Availability: |
Tues 2:00-4:00, Wed 3:15-4:00
Also by appointment, using Calendly
|
E-mail: |
scarl @T sewanee D0T edu |
Phone: |
931.598.1305 |
|
Overview
In this course you'll learn how to work with relational databases:
how they are created, queried, and structured, and some foundational
theory behind their operation. Then you'll learn to develop server-side
logic using a Python framework to develop and deploy web apps
that generate webpages programmatically using the results of database
queries.
Course Objectives. Students will
have an understanding of:
- the basics of relational database theory
- how to use the Structured Query Language (SQL) and mySQL database
administration
- how web applications are structured and how the various components
communicate
- the basics of front-end development using HTML, CSS, and other web
technologies
- how the Python framework Flask connects the front-end components with
the database
Grading
Workload |
Points |
Homework Assignments (6 @ 5pts
each) |
30 |
Semi-Weekly Class Exercises (12
@ 2pts each) |
24 |
Ethics Reading Paper |
06 |
2 Exams (10 pts each) |
20 |
Final Project and Demo |
20 |
Texts
- No required textbook
- MySQL
Tutorial (online)
- Learning PHP, MySQL & JavaScript (6th Edition) by Robin
Nixon, O'Reilly Media, 2021 - library reserve
- Course website: https://scarl.sewanee.edu/CS284/
- This syllabus, the course schedule, assignments, lecture notes and
more are posted on the course website.
- BrightSpace
- Some course materials will be available on BrightSpace
(Sewanee's Learning Management System), such as special readings, video
examples and supplemental lecture materials, and selected solutions.
Assignments will typically be turned in using BrightSpace.
- Course Administration
- This class uses a combination of lecture, active learning, and the
occasional "flipped classroom" method of instruction. There will be an
in-class exercise most weeks, as one of the best ways to learn is by
trying out new concepts yourselves. Anything not completed by end of
class will generally be due by the next class period.
-
- In the "flipped classroom" model, I sometimes post videos covering
lecture materials for a particular topic. It will then be your
responsibility to watch the video before the next class meeting, as it
will cover material for the class exercise that day. During class I will
review and answer any questions on the new material.
- Attendance for all class sessions, whether we are remote or in
person, is an important factor in succeeding in this course. Students
are allowed three unexcused absences per semester. Subsequent
absences may be reported to the Office of the Dean of Students. The
student is responsible for making up any work missed due to absence;
exceptional circumstances will be given wide latitude.
- Homework assignments are worth 30% of the semester grade. Late
work is penalized 10% for each day late, but every student has 3
grace days for the semester, covering such things as schedule
crunches, travel for athletics, and illnesses. Save these as long as
possible. Barring exceptional circumstances, assignments will not be
accepted more than 4 days after the due date. Students are
expected to work independently on homework assignments unless group work
is specifically indicated. Each assignment will specify how and when it
is to be turned in.
- Exams. There will be two semester exams during the year. Any
student missing an exam must present a documented excuse explaining the
absence, preferably in advance, if they are to make it up.
- Final Project. Students will bring everything learned over the
semester to do full-stack development of a non-trivial website. This
project can be done individually or in groups of up to three colleagues.
Project proposals must be accepted by the instructor before
implementation; projects will be "real" in the sense that they use a
non-trivial amount of data they, contain interesting and/or helpful
information for users, and are pro bono publico - think charity,
service, professional or little known areas. The idea is to pick a topic
team members will enjoy learning more about, rather than an inventory
of personal interests / hobbies. Projects will be due by the class
Final Exam period scheduled by the Registrar during the last week of the
semester.
- The Honor Code applies to all exams, programs, and
assignments; you agreed to follow the Honor Code when you matriculated.
Affixing your name to another's work is considered academic
dishonesty and a violation of the Honor Code. Here,
"another's work" includes Internet sources and responses from artificial
intelligence processing programs (for example, ChatGPT). Students may
discuss ideas for solving an assignment among themselves:
concepts and design issues, how to use software tools, how to fix errors
in programs. However, each assignment must be your
own work unless collaboration is specifically allowed. Turning
in any portion of work written by another is an Honor Code violation
and grounds for disciplinary action as allowed by University policy.
You should not copy a file, supply a copy of a file, coach another
student in writing code line by line, or look at another student's code.
A good rule of thumb: talking over a problem verbally is fine,
fixing a problem with someone else's program is not.
- Policies for Remote Learning
- If you are unable to be on campus or attend class for an extended
period of time, please let me know as soon as you can, and read
Information
for Students Studying Remotely.
- Scheduling Office Hours
- Students are welcome to drop by my office in Woods 133 with any
questions during posted office hours. If you need an appointment for
some other time, schedule a meetup using the
Calendly app. See their
video for a quick introduction. Calendly gives the option of
meeting in person or over Zoom.
- Participation and Extra Credit
- Students can support the intellectual life of the university and earn
extra credit by attending lectures/talks outside of the formal
classroom experience and writing a summary
of the ideas presented. For example, later this semester our department
will sponsor the annual Ebey Lecture. Attend that or another lecture on
campus, any "virtual lectures" on Zoom sponsored by the university, or
find technical presentations at approved on-line sources, such as the Heidelberg
Laureate series, the Strange
Loop conference, and other computing-related meetings for
researchers or software developers. In this case, choose lectures whose
duration is 35-60 minutes.
You may attend or watch up to two
such presentations and submit a 1-2 page summary
for extra credit.
- Statement on Health and Safety
- Please follow these important health guidelines while in class:
-
- If you are feeling unwell, please do not attend class. Inform the
instructor and seek care at the Wellness Center as soon as possible.
- Follow University and Wellness Center guidelines if you are
diagnosed with COVID-19 or other infectious respiratory illness.
- Let me know right away if you expect to miss more than 2 classes.
- ADA Statement
The University of the South is committed to fostering respect for the
diversity of the University community and the individual rights of each
member of that community. In this spirit, and in accordance with the
provisions of Section 504 of the Rehabilitation Act of 1973 and the
Americans with Disabilities Act (ADA), the University seeks to provide
students with disabilities with the reasonable accommodations needed to
ensure equal access to the programs and activities of the University.
Any student with a documented disability needing academic adjustments is
requested to speak with Student Accessibility Services (SAS) as early in
the semester as possible. If approved for accommodations, the student
has the responsibility to present their instructors with a copy of the
official letter of academic accommodations. Please note: Accommodation
letters should be dated for the current term; accommodations will not be
provided without a current accommodation letter; and accommodations
cannot be applied retroactively.
- SAS is located in the Office of the Dean of Students (931.598.1229).
Additional information about accommodations can be found at https://new.sewanee.edu/campus-life/playing/wellness-commons/university-wellness-center/student-accessibility-services/.
Students who have questions about physical accessibility should
inform their instructors so that we can ensure an accessible, safe, and
effective environment.
scarl AT sewanee D0T edu