Syllabus#
updated January 13, 2025
Course Information#
- Name
Every Boilermaker Engineer Codes: Entry-Level Programming in Python
- Number
EBEC 101
- Semester
Spring 2025
- Modality
Asynchronous Online
- Prerequisites
Intermediate Algebra
- Credit hours
0 (this course will not appear on your transcript)
Teaching Team Contact Information#
This course is served by a teaching team that includes one instructor and multiple Peer Teachers (usually undergraduate teaching assistants). See the Meet the Team section of the EBEC website for the latest contact information. For answers to administrative questions, or to schedule a one-on-one appointment, contact the teaching team via Campuswire.
Instructor#
Name |
Office |
Phone |
|
---|---|---|---|
Dr. John Cole |
DUDL 2566 |
(765) 496-2653 |
Graduate Teaching Assistants#
Name |
|
---|---|
AJ |
Peer Teachers#
Name |
|
---|---|
Steph |
|
Lili |
|
Jeremy |
|
Kanari |
|
Tyler |
|
Casey |
|
Kiley |
|
Ruth |
|
Trang |
|
Jack |
|
Emily |
|
Leo |
|
Micah |
|
Nathan |
Response Times#
You can expect responses as follows:
Campuswire posts: within 24 hours, historical average is less than 1 hour.
Email: within 3 days (maybe never)
Assignment grades: within 1 week after due date.
Course Description#
This course uses Python to introduce fundamental procedural and object-oriented programming concepts. Amongst the many topics covered are such diverse elements as variables, data structures (lists, tuples, dictionaries, and sets), file handling, decision structures, loops, functions and modules, as well as classes and objects, data attributes, and methods.
Learning Resources, Technology, & Texts#
Access to the following resources is required to complete this course.
- Course Website
The course website hosts the syllabus, schedule, learning materials and exercises.
- Brightspace
The course Brightspace page will host the lecture videos, and quizzes. A new unit will be unlocked each week.
- Campuswire
Course communications, Q&A, and discussions will take place on Campuswire. Invitations will be sent by email. Please add team@campuswiremail.com to your email safe list to make sure important notifications aren’t sent to Spam.
- Zoom
Virtual office hours will be held using Zoom. You must be logged in with your Purdue provided Zoom account to access virtual office hours.
- Gradescope
Programming exercises will be submitted for grading via Gradescope.
- Textbook
Free digital access is available via Purdue libraries.
Python Crash Course: a Hands-On, Project-Based Introduction to Programming, by Eric Matthes
Publisher: No Starch Press; 3rd Edition (December 2022)
ISBN-13: 9781718502703
- Personal Computer
This course requires a computer on which you can installation of free software.
- Software
Specific installation instructions can be found here.
A screenshot utility capable of producing .PNG images of your screen. The default tool on most systems will work.
Learning Outcomes#
Upon successful completion of this course, the student should be able to:
Identify high-level language programming concepts.
Implement computational solutions to engineering problems.
Apply data analysis techniques including reading, writing, and plotting data.
Produce high-quality technical plots.
Design programs using structured programming.
Implement object-oriented programming techniques.
Assignments#
Your final grade in this class reflects the sum of your achievement throughout the semester. You will accumulate points in each of the assignment categories described below. At the end of the semester, your final grade will be calculated by adding the percentage of points earned in each category according to that category’s percentage weight.
- Homework (50%)
Programming exercises (3 to 6 per unit) to be submitted to Gradescope. The lowest 2 exercise scores will be dropped. Each exercise has an automatically graded component (typically worth 90 points) and a manually graded component (typically 10 points). Your grade for the automatically graded portion will be available within a minute or two after each submission. You many resubmit each exercise as many times as you want before the due date, so use the automatic feedback to improve your program as much as you can before it is due.
- Quizzes (25%)
Multiple choice conceptual quizzes (1 per unit) to be submitted in Brightspace. The lowest quiz score will be dropped. Your quizzes are automatically graded, and your score will be available immediately after completing each quiz.
- Final Project (25%)
A multi-week programming project to be submitted in Gradescope. As with the programming exercises, the autograder will provide feedback with a few minutes of each submission, and you may resubmit as many times as you would like before the due date.
Important Dates#
Due dates for programming exercises (homework and the final project) are listed on Gradescope. Due dates for quizzes are listed on Brightspace. These dates are subject to the following early and late submission policies.
Assignments are released on Sundays at 12:00 AM.
Exercise submissions completed by 10:00 PM on the first Thursday after being released will be awarded a 5% bonus.
All assignments are due by 10:00 PM EST on the due date listed in the course schedule. This is typically 8 days after being assigned.
Quizzes completed within a 2-hour grace period after the due date will be accepted.
Exercise submissions completed within a 2-hour grace period after the due date will be accepted with a 5-point late penalty.
Exercise submissions completed within a 1-week grace period after the due date will be accepted with a late penalty that increases by 5% for each day the assignment is late.
In general, after the grace period has passed, assignments will not be considered for grading. Each assignment and all the material necessary to complete it, will be issued at least one week prior to its due date. The week-long grace period is intended to be used in special circumstances when you might otherwise have needed to ask for an extension. As such, emergencies occurring within 1 week prior to the due date are not sufficient to justify an extension. To avoid unnecessary stress, please complete assignments as early as possible.
Grading Scale#
When taken for credit, each student’s letter grade is assigned based on their final score. The range of scores corresponding to each letter grade are shown in Table 4. All students taking this course who achieve an overall final score of 70% or higher, and at least a 50% in each grade category, will earn a certificate of achievement. The certificates are issued by the College of Engineering and are delivered to recipients Purdue email address. Each certificate is hosted in perpetuity at engineering.purdue.edu, and may be printed or linked to directly in your resume or on social media.
Letter |
Score Range |
---|---|
A+ |
[97% – 100%] |
A |
[94% – 97%) |
A- |
[90% – 94%) |
B+ |
[87% – 90%) |
B |
[84% – 87%) |
B- |
[80% – 84%) |
C+ |
[77% – 80%) |
C |
[74% – 77%) |
C- |
[70% – 74%) |
D+ |
[67% – 70%) |
D |
[64% – 67%) |
D- |
[60% – 64%) |
F |
[0% – 60%) |
Academic Integrity#
You are a member of the Purdue community — a community that values integrity. You are expected to be familiar with and to abide by the university policies and procedures. Academic integrity is critically important and is as essential in virtual learning as in traditional classrooms. Your experience in this course depends on the effort you put into the class. Plagiarism and cheating degrade the skills you will develop that will help you succeed.
You are also expected to take and abide by the Purdue Honor Pledge:
As a Boilermaker pursuing academic excellence, I pledge to be honest and true in all that I do. Accountable together – We are Purdue.
Academic dishonesty is defined by Purdue as “cheating, plagiarism, or knowingly furnishing false information to the University.” Academic dishonesty includes, but is not limited to, the following:
Collaborating with others, either in-person or online, when not explicitly permitted to do so.
Submitting homework obtained in whole or in part from another student.
Allowing someone else to do the work and then submitting it under your own name.
Helping someone else commit academic dishonesty, such as giving them homework to copy or allowing them to cheat from your work.
Copying word for word or lifting phrases or special terms from a source or reference without proper attribution (plagiarism).
Allowing someone else to access your Purdue computer accounts or computer files.
Turning in an exam, quiz, or assignment that has been purchased from a commercial research firm or obtained from the Internet.
While discussing homework exercises is encouraged in this course, especially through the provided course discussion tools, all work submitted for this course should represent your own personal effort and knowledge. Do not copy code, in whole or in part, from other sources. Quizzes are considered open-book and open-notes, you may use slides, videos, notes, reference material and/or test and run Python code while taking a quiz, but they must be taken without assistance from other people or AI. Individuals are encouraged to alert university officials to potential breaches of academic integrity by either emailing integrity@purdue.edu or by calling 765-494-8778. While information may be submitted anonymously, the more information that is submitted provides the greatest opportunity for the university to investigate the concern.
Be aware that your exercise submissions will be checked for academic dishonesty. This check will be performed manually and via automated code similarity tools. The minimum consequences for submitting academically dishonest work are:
A failing grade in the course.
Forfeiture of eligibility for the course certificate.
A prohibition on registering for this course in a future semester.
and may also include:
A report filed with the Office of Student Rights and Responsibilities.
Note
Code similarity reviews are not carried out until the end of the semester. As a result, students submitting academically dishonest work will not be notified that they have been caught until the end of the semester. Please do not assume that absence of consequence early in the semester means that attempts to cheat will go unnoticed.
Course Format#
This course utilizes a flipped hybrid classroom model. Lecture videos are made available to view before class. In class sessions and virtual office hours are used to provide one-on-one assistance to students working through the weekly programming exercises. Course announcements and discussions will take place on Campuswire. See the course schedule for details on meeting days, times, and topics.
You are encouraged to “mentally enroll” in this course as if it occurred on Sunday mornings. In other words, our weeks will run from Sunday to Saturday. Each new unit, including lecture slides, lecture videos, exercises, and quizzes, will be released on Sunday mornings so that when you log in on Sunday, you can begin the new week.
Class Sessions#
In-person sessions meet twice each week (except for university holidays).
Where |
When |
---|---|
WALC B074 |
Wednesday, 4:30 – 7:20 PM |
WALC B074 |
Thursday, 5:30 – 8:20 PM |
Virtual Office Hours#
Regular virtual office hours are synchronous live sessions (through Zoom) to discuss questions related to course concepts and/or assignments. To connect to a live virtual office hour session, use this link. The schedule for virtual office hours is posted on Campuswire in this post. If requested, extra virtual one-on-one meetings can be scheduled by appointment.
Attendance Policy#
If you are sneezing, coughing, or potentially contagious — do not attend class. Instead, stay home and contact the Protect Purdue Health Center (496-INFO). Attendance in the in-person sessions is strongly encouraged, but is not required. This class time is reserved for you to get one-on-one assistance when you get stuck on any assignment. To make the most efficient use of your time, please arrive on time and prepared to work on the programming exercises. Preparation normally includes completing the assigned reading and watching the topic videos.
Netiquette (Network Etiquette)#
Your instructor and fellow students wish to foster a welcoming and rewarding online learning environment. As such, you are encouraged to comment, question, or critique an idea, but you must not attack an individual. Our differences, some of which are outlined in the University’s nondiscrimination statement, will add richness to this learning experience. Please consider that sarcasm and humor can be misconstrued in online interactions and generate unintended disruptions. Working together, we can build a polite and respectful learning community. As guidelines in this effort, please abide by the following netiquette rules:
Be sensitive and reflective of what others are saying. Take a moment to think and edit before you click the post (enter/reply) button.
Ask for help or feedback when needed, and be willing to express even your minority opinion.
Give other students the opportunity to join in the discussion (i.e. don’t dominate any discussion).
Present ideas without using offensive language.
Avoid using abbreviations, acronyms, vernacular and/or slang language. This could lead to misinterpretation.
Avoid using all caps. It is the equivalent of screaming.
Avoid outbursts of extreme emotion or opinion (i.e. don’t flame).
Be forgiving. Anyone can make a mistake.
Course Schedule#
Unit |
Topics |
Assignments |
Released Sunday 12:00 AM |
Due Monday 10:00 PM |
00 |
Welcome to Class: syllabus, installing Python, and an integrated development environment. |
HW 00.x, Quiz 00 |
Jan. 12th |
Jan. 27th |
01 |
Introduction to Python: interactive mode, script mode, operators, variables, types, input and output. |
HW 01.x, Quiz 01 |
Jan. 19th |
Jan. 27th |
02 |
Boolean Logic and Decision Structures: if, if-else, and if-elif-else statements; nested decision structures, AND, OR, NOT logical operators. |
HW 02.x, Quiz 02 |
Jan. 26th |
Feb. 3rd |
03 |
Repetition Structures: while loop, for loop; loop structure applications such as counters, accumulators, running totals, average, sentinels, and techniques for writing input validation. |
HW 03.x, Quiz 03 |
Feb. 2nd |
Feb. 10th |
04 |
Functions: how to call common library functions, how to define and call users’ own functions, passing arguments to functions |
HW 04.x, Quiz 04 |
Feb. 9th |
Feb. 17th |
05 |
Turtle Graphics and Review: drawing graphics and review |
HW 05.x, Quiz 05 |
Feb. 16th |
Feb. 24th |
06 |
Modularization Techniques: how to import modules and how to create your own modules to organize code |
HW 06.x, Quiz 06 |
Feb. 23rd |
Mar. 3rd |
07 |
Sequences (mostly Lists and Tuples): using lists for array-like (one and two-dimensional) operations, such as storing objects in a list, iterating over a list, searching for items in a list |
HW 07.x, Quiz 07 |
Mar. 2nd |
Mar. 10th |
08 |
Strings and File IO: string manipulation, reading data from an input file and writing date to an output file |
HW 08.x, Quiz 08 |
Mar. 9th |
Mar. 24th |
09 |
Dictionaries and Sets: using dictionaries for table-like data manipulation and set operations including union, intersection, difference, and symmetric difference |
HW 09.x, Quiz 09 |
Mar. 23rd |
Mar. 31st |
10 |
Plotting: Installing Matplotlib, plotting line graphs, bar charts, and pie charts. |
HW 10.x, Quiz 10 |
Mar. 30th |
Apr. 7th |
11 |
Object-Oriented Programming (OOP): fundamental concepts of classes and objects such as data attributes, methods, and inheritance |
HW 11.x, Quiz 11 |
Apr. 6th |
Apr. 14th |
12 |
Final Project: Final Project and various additional topics |
HW 12.x |
Apr. 13th |
Apr. 28th |
How to Succeed in this Course#
If you want to be a successful student:
Be self-motivated and self-disciplined. I recommend scheduling time each week to work on this course outside of class.
Work through the contend sequentially, and at the same pace as the rest of the class.
Be willing to seek help if problems arise. We have multiple virtual office hours and multiple in-person sessions available every week. Please reach out as early as possible.
Be willing and able to commit to 4 to 15 hours per week per course. This course is typically requires 6 to 10 hours per week, but some students may need more time.
Be able to communicate through writing.
Be able to meet the minimum requirements for the course.
Accept critical thinking and decision-making as part of the learning process.
In contrast, here are some common behaviors that lead to failing the course.
Not watching the lecture videos before class.
Not completing the reading assignments.
Waiting until the due date to begin programming exercises.
Forgetting about deadlines.
Ignoring course communications.
Lacking familiarity with the grade book and syllabus.
Nondiscrimination Statement#
Purdue’s nondiscrimination policy can be found here.
Accessibility#
Purdue University strives to make learning experiences accessible to all participants. If you anticipate or experience physical or academic barriers based on disability, you are welcome to let me know so that we can discuss options. You are also encouraged to contact the Disability Resource Center at: drc@purdue.edu or by phone at 765-494-1247.
Emergency Preparation#
In the event of a major campus emergency, course requirements, deadlines, and grading percentages are subject to changes that may be necessitated by a revised calendar or other circumstances beyond the instructor’s control. Relevant changes to this course will be posted on the course website (Brightspace) or can be obtained by contacting the instructors or TA’s via email or phone. You are expected to read your @purdue.edu email on a frequent basis.
Purdue University has an Integrated Emergency Management Plan (IEMP). This plan includes procedures, processes, and plans for responding to an emergency. Visit the Emergency Preparedness website for more information.
When on campus, it is also important to be familiar with the emergency response procedures for your location. Procedures specific to this course’s classrooms are below:
Note
In any situation, follow instructions from emergency response personnel (police, fire department, etc.) when they are present.
Emergency#
For any emergency, call 911 (fire, medical emergency, etc.).
Fire Alarm or Evacuation#
Gather all critical personal belongings and exit the building using the stairs. When exiting the building, do not use the elevator. Once outside the building, stay clear of all emergency vehicles and personnel.
- WALC B074
Proceed up the stairs and exit the building through the north-east doorway. Meet at the southeast corner of the Potter Engineering Center (POTR). In case of inclement weather, meet inside the lounge inside the southeast corner or Potter Engineering Center (POTR).
Shelter in Place#
Could occur due to tornado, accidental release of toxic chemicals, shots fired on campus, etc. Use all communication means available to find out more details about the emergency. Remain in place until police, fire, or other emergency response personnel provide additional guidance or tell you it is safe to leave.
Tornado#
Position yourself away from glass. Be prepared to kneel facing a wall and cover your head.
Hazardous Materials (HAZMAT) Release#
Remain in or find an unaffected office or work area and close windows and doors.
Active threat such as a shooting#
If you are unable to safely leave the area, seek a safe location, preferably a room without windows. Lock the door or secure it with barriers.
Mental Health Statement#
If you find yourself beginning to feel some stress, anxiety and/or feeling slightly overwhelmed, try WellTrack. Sign in and find information and tools at your fingertips, available to you at any time.
If you need support and information about options and resources, please contact or see the Office of the Dean of Students. Call (765) 494-1747. Hours of operation are M-F, 8 AM – 5 PM.
If you find yourself struggling to find a healthy balance between academics, social life, stress, etc., sign up for free one-on-one virtual or in-person sessions with a Purdue Wellness Coach at RecWell. Student coaches can help you navigate through barriers and challenges toward your goals throughout the semester. Sign up is free and can be done on BoilerConnect.
If you’re struggling and need mental health services: Purdue University is committed to advancing the mental health and well-being of its students. If you or someone you know is feeling overwhelmed, depressed, and/or in need of mental health support, services are available. For help, such individuals should contact Counseling and Psychological Services (CAPS) at (765) 494-6995 during and after hours, on weekends and holidays, or by going to the CAPS office of the second floor of the Purdue University Student Health Center (PUSH) during business hours. The CAPS website also offers resources specific to situations such as COVID-19.
Basic Needs Security#
Any student who faces challenges securing their food or housing and believes this may affect their performance in the course is urged to contact the Dean of Students for support. There is no appointment needed, and Student Support Services is available to serve students from 8:00 – 5:00, Monday through Friday.
Material Copyrights#
Course materials (lectures, slides, exercises, videos, etc.) are copyrighted and shall not be sold, bartered, or posted on sites such as GitHub, Course Hero, Chegg, Quizlet, YouTube, Facebook or other media sources or websites, in whole or in part, without express permission from your instructor. Solutions to exercises are considered derivatives of the copyrighted exercises and shall not be sold, bartered, or posted online in whole or in part, without express permission from your instructor.
Usage of Recordings#
Course recordings are made available for students and should only be used for reviewing the content of the class. Course recordings may not be shared in whole or in part outside this course and shall not be uploaded to any external sites. During remote instruction, to facilitate engagement and interaction, the instructor may at times ask students to turn on their cameras. Any student not wishing to be recorded is not required to turn on their camera. The student is encouraged to reach out to their instructor with any concerns.
Course Evaluation#
As we prepare to offer this course in the future, your feedback will be used to guide our efforts at improvement. Near the end of the course, you will be provided with an opportunity to evaluate this course, your instructor, and the teaching assistants. You will receive an email with a link to an online evaluation survey. It should take less than 15 minutes, and your responses will be collected anonymously. Your participation is greatly appreciated, and your feedback is vital to improving education at Purdue University.
Disclaimer#
All policies stated herein are subject to change at the instructor’s discretion. If any changes are made, you will be notified through a course announcement.