Course Syllabus ENGR 131, Introductory Programming for Engineers, Winter 2023#

0. Instructor Information#

Instructor Names: Prof. Capps and Prof. Agar

Office Hours: TAs: 1:00 pm - 6:00 pm on Thursdays and 9:00 am -12:00 pm on Fridays in Main 005 or Zoom

Prof. Capps: 11:00 am - 12:00 pm on Wednesdays in Room 209 of 3101 Market Street

Prof. Agar: 11:00 am - 12 pm on Thursdays Location Curtis 261C

Contact Process:

Class Forum

This term we will be using Piazza for class discussion. The system is highly catered to getting you help fast and efficiently from classmates, the TA, and Professors. Rather than emailing questions to the teaching staff, I encourage you to post your questions on Piazza.

Find our class page at: https://piazza.com/drexel/winter2023/engr131/info

Homework:

Lab: Learning Assistant or Teaching Assistant for your lab section

Exams, Regrades: engr131.w23@drexel.edu (monitored by the Instructors)

1. Student Learning Information#

a. Brief description of the content of the course (Course Catalog Description): An introduction to the fundamentals of programming and algorithmic problem solving with applications in engineering. Emphases include (a) producing clear, robust, and efficient code, and (b) conceptualizing and designing computational algorithms to solve engineering problems. Upon completion, students will possess the programming skills necessary to perform computational analysis in any engineering discipline. This course is designed for students without any prior programming experience.

b. Pre-requisites or Co-requisites: None.

c. Course Purpose within a Program of Study: This course teaches students the skills necessary to take a computational problem in their engineering discipline, break it down into sub-problems, write an algorithm that solves a specific problem, and finally translate that algorithm into a clear and efficient program in a specific programming language. Therefore, the course addresses necessary skills for all engineering disciplines.

d. Statement of Expected In-Person Engagement: This course consists of one 2-hour class session and one 2-hour lab session per week.

Course Outcomes#

Upon completion of this course, students will be able to

a. Develop algorithmic computational skills for problem-solving in a variety of engineering disciplines.

b. Design code, including syntax, modular design, conditionals, branching, data structures, and object-oriented programming.

c. Implement computer programs to solve engineering problems and visualize results.

Drexel Student Learning Priorities#

a. Creative and Critical Thinking: Uses divergent (e.g., generation of novel ideas, thinking out of the box, brainstorming) and convergent thinking (e.g., critical thinking, evaluation of ideas, quantitative and qualitative analysis, scientific reasoning) to generate novel and relevant ideas, strategies, approaches or products.

b. Technology Use:Make appropriate use of technologies to communicate, collaborate, solve problems, make decisions, and conduct research, as well as foster creativity and life-long learning.

2. Course Materials#

Required Textbook: The required textbook for this course is ENGR 131: Introductory Programming for Engineers by zyBooks, which is an interactive, online resource.

  1. Sign in or create an account at learn.zybooks.com.

  2. Enter zyBook code: DREXELENGR131CappsWinter2023

  3. Subscribe for $58.

You may begin subscribing immediately and must complete the first reading by noon on Monday, January 9. Subscriptions will last until Apr 07, 2023.

If subscribing to zyBooks is a financial burden, please explain briefly to the Instructors at engr131.w23@drexel.edu by Monday, January 9.

Optional References:.

3. Course Schedule#

The following outlines the course coverage by term week:

Week

Concepts

Reading Exercises (due 12:00 pm Monday)

Class Session

Homework (due 12:00 pm Friday)

Lab (due 12:00 pm Monday)

1-1/9

Beginning & Variables

Ch. 1

application

HW1 (Workflow)

Lab1 (Screencast Training, Commenting Randomization Code: Variables)

2-1/16

Expressions & Modules

Ch. 2,3

No Class

HW2 (Mathematical Calculations)

Lab2 (Commenting Randomization Code: Modules)

3-1/23

Types & Strings

Ch. 4,5

application

HW3 (Types)

Lab3 (Scrabble)

4-1/30

Functions & Recursion

Ch. 6,7

application

HW4 (Functions)

Lab4 (Image Processing)

5-2/6

Branching & Loops

Ch. 8,9

application

HW5 (Branching)

Lab5 (Rock, Paper, Scissors)

6-2/13

Flow Control & File Handling

Ch. 10

application

HW6 (Loops)

Peer Review Video

7-2/20

No Class

No Reading

Midterm

No HW

Lab6 (DNA Analysis)

8-2/27

Lists & Dictionaries

Ch. 11

application

HW7 (Strings)

Lab7 (Audio Signal Processing)

9-3/6

Classes

Ch. 12,13

application

HW8 (Triangulation)

Lab8 (Pollutant Tracking)

10-3/13

Visualization & Exceptions

Ch. 14,15

application

No HW

Peer Review Video

11-3/20

Final Exam at 8 am on Monday, March 20


Week

Concepts

detailed topics

1-1/9

Beginning, Variables, & Modules

Course introduction, general review of computer organization, program execution, importing packages, working in JupyterHub, objects and variables

2-1/16

Expressions & Modules

Assignments, name binding, numeric types, string introduction, module basics, finding modules, importing specific names from a module, execution modules as scripts, reloading modules, packages: bundles of modules, the standard library, high performance arrays using Numpy

3-1/23

Types

String basics, String formatting, List basics, Dictionary basics.  Container types, string slicing, advanced string formatting, strings as anonymous/nameless objects, string methods, splitting and joining strings, the string formatting method

4-1/30

Functions

User-defined functions, function parameters, returning values from functions, dynamic typing, functions as objects, scope, namespaces, function arguments, keyword arguments, defining default function parameter values, arbitrary argument lists, multiple function outputs

5-2/6

Branching & Loops & Exceptions

Code blocks, if-else statements, relational and equality operators, boolean operators and expressions, conditional expressions; while-loops, iterators, for-loops; handling exceptions using try-except, multiple exception handlers, raising exceptions, exceptions with functions.

6-2/13

Flow Control & File Handling

Multiple if-else statements, membership operators, iteration using the built-in range() function, while-loops vs for-loops, nested loops, modifying iteration using break and continue, iteration using by both index and value using enumerate()reading files; writing files, interfacing with the operating system and file systems, handling human-readable data, handling binary data, passing files via command-line arguments, using the with statement to create safe file handling contexts, parsing Comma Separated Value (CSV) files

7-2/20

No Class

Review prior concepts

8-2/27

Lists and Dictionaries

Lists, list methods, iterating over a list, nested lists, list slicing, loops that mutate lists, list comprehensions, sorting lists, command line arguments. dictionaries: dictionary methods, iterating over dictionaries, nested dictionaries

9-3/6

Classes

Intro to Object Oriented Programming (OOP), grouping data with classes, class methods, class and instance object types, class constructors, class interfaces, operator overloading and using classes to build complex custom numeric types

10-3/13

Visualization

Introduction to Matplotlib, plotting and visualizing data, styling plots, text and annotations

4. Earning Credit#

Activity

Hours Weekly

Credit

Due Date

Goal

Pre-class Reading

1.5

15%

12:00 pm Mondays

Familiarize yourself with concepts

Class Session

2

0%

Mondays

Identify and address misconceptions; appreciate applications

Homework

2.5

25%

12:00 pm Fridays

Develop individual mastery of skills

Lab Participation

2

10%

lab time slot

Collaborate to apply skills to creative problems

Lab Completion

1

15%

12:00 pm Mondays

Collaborate to apply skills to creative problems

Midterm

n/a

15%

8:00 am on Wed., Feb. 22

Demonstrate mastery; connect diverse skills

Final

n/a

20%

8:00 am on Mon., Mar. 20

The mapping between the percent grade (rounded to the integer) and the final letter grade will be assigned as follows:

Letter Grade

Points

A+

97-100

A

93-96

A-

90-92

B+

87-89

B

83-96

B-

80-82

C+

77-79

C

73-76

C-

70-72

D+

65-69

D

60-64

F

0-59

Expectations of Students#

We expect all students to fully participate in all aspects of the course. Each activity and assignment are designed to encourage learning and success in the course.

a. Pre-Class Session Readings

Prior to class all students are expected to complete the reading and learning activities within ZyBooks. This content is selected to familiarize you with the core concepts that will be built upon in class sessions. Completing these assignments prior to class sessions will ensure you are able to use class sessions to begin applying the concepts and identifying misconceptions.

b. Class Sessions

We will have 2-hour class sessions once a week. Class sessions will be used to expand upon the material learned in Zybooks. In class sessions, you will work with your peers to apply the concepts learned in Zybooks.

c. Homework

Every week you will be expected to complete an individual homework assignment. These assignments will be designed for you to demonstrate independent mastery of the material covered in pre-class session readings and class sessions. These assignments are designed so you can wrestle with the concepts to build a strong understanding. While it is allowed, and expected that you talk with your colleagues about the homework, your submitted work should be completed independently. When completing homework, it is acceptable to talk about code, or even look at each others’ code; however, it is not acceptable to share or copy sections of code from one another or any other source.

d. Lab Participation

Every week we will have a lab. The lab provides an opportunity for you to challenge yourself on more complex problems. Through teamwork with your peers, you will build confidence by tackling these challenging problems. Additionally, you will build communication and teamwork skills while at the same time reinforcing concepts. “learning by teaching,” also known as the Protégé Effect, is the most powerful way to build knowledge of a topic. Attendance is an essential part of lab participation. If you miss lab your score will be 40 points lower than your team’s score.

d. Midterm and Final

The midterm will be designed to demonstrate individual mastery and connections between concepts taught. This will be a common exam at 08:00 am on Wednesday, February 22, which will be completed on paper with pen or pencil only.

The final exam will be a practical exam at 8:00 am on Monday, March 20. The exam will demonstrate your ability to write efficient, well-commented, and error-free code.

5. Academic Policies#

Course-Specific Policies#

a. Homework and Lab Assignment Policy:

Homework is always to be submitted on or before the date on which it is due. Homework and labs submitted after the due date will not be accepted. Homework must be submitted using Black Board Learn unless otherwise instructed. Assignments submitted using another mechanism will not be graded.

b. Examination Policy

All written exams in the course are closed-textbook and closed-“reading assignment material.” Use of other books or any other material (such as solutions to homework assignments), however, is not permitted. Use of cell phones, laptops, tablets, PDAs, or any other device capable of wireless communication is prohibited, unless instructions otherwise are provided. Exams will cover material discussed in the class sessions, homework assignments, or textbook sections given as reading assignments. For example, the exams may include questions on material covered in class sessions or homework but not specifically covered in the textbook. Similarly, the exams may include any material covered in a section of the textbook given as a reading assignment but not specifically covered in the class sessions or homework.

c. Absentee Policy

Absence from labs and examinations will be excused only under extraordinary circumstances such as medical or family emergencies. A missed lab or examination without prior approval and without legitimate reason will be graded at zero points (participation portion of lab grade). An absence will be excused only if the student is able to provide legitimate documentation. Special examinations will not be held earlier or on later dates to accommodate, for example, flight schedules for overseas vacations.

University Academic Policies#

a. Missed Classes:

It is essential to your success in this course that you attend each class and laboratory session and participate in the activities and discussions. Therefore, you are expected to attend each class session and to show up on time. If you miss a class session for a University-approved reason, the professors will make reasonable efforts to provide missed material.

For futher details refer to the University’s absence policy. Please review the link below.

b. Academic Integrity, Plagiarism and Cheating Policy:

Each student is expected to complete all assignments independently unless otherwise explicitly instructed. It is unacceptable to copy another student’s work or solutions from any other source. Submitted assignments will be checked for plagiarism using Stanford’s MOSS plagiarism detection system (https://theory.stanford.edu/~aiken/moss/). Violators of this policy will be reported to the Office of Student Conduct and Community Standards (SCCS). Academic integrity violations could result in failure for the course or the assignment among other sanctions determined by the instructor. A second violation of the academic integrity policy will likely result in suspension. Please review the University’s policy regarding academic integrity at:

http://drexel.edu/provost/policies/academic-integrity/

http://drexel.edu/studentlife/community_standards/studentHandbook/

c. Regrade Policy:

If you are of the opinion you deserve more credit than provided to you for an assignment, email to engr131.w23@drexel.edu an explanation of why you are of the opinion you desire additional credit within one week of receiving the graded assignment. You are welcome to discuss homework questions or concerns with the Professors or TAs prior to submitting request for regrading. Grade modifications will only happen after a formal request is submitted.

d. Students with Learning Differences:

Profs. Capps and Agar welcomes individuals with learning differences and is committed to ensuring equal access so that all students can live, learn, and lead at Drexel. To request accommodations, a current Accommodations Verification Letter (AVL) in the ClockWork database is required before accommodations can be made. These requests are received by Disability Resources (DR), who then issues the AVL to the appropriate contacts. For additional information, visit the Disability Resources website, or contact DR for more information by phone at 215.895.1401, or by email at disability@drexel.edu.

Students who are approved for accommodations at Drexel should share this letter and discuss their accommodations and learning needs with instructors as early in the semester as possible. Profs. Capps and Agar will do everything possible to accommodate students needs. If you feel that your accommodations are not being met, please make sure to contact engr131.w23@drexel.edu.

The instructors understand that there are inequities in access to testing required to get approved for accommodations. If you feel that you have learning difference that influence equity in your classroom performance please reach out to Profs. Capps and Agar at engr131.w23@drexel.edu. They will work with you to try and accommodate your learning differences.

e. Course Drop Policy::

http://drexel.edu/provost/policies/course-add-drop/

f. Course Withdrawal Policy:

http://drexel.edu/provost/policies/course-withdrawal/

g. Course Change Policy:

The instructors reserves the right to modify the course, as necessary, during the term: including policies, evaluations, due dates, course content, schedule, assignments or requirements. All changes will be communicated in class sessions and/or via the course DrexelLearn page.

h. Weather, Emergencies and University Closing:

University closing or delayed opening information will be posted on www.drexel.edu. In the event of the need to close or delay the daily opening of a campus, the University will provide notice via Web, telephone, and the DrexelALERT system. Closing or delayed opening information will be announced at 215-895-MELT (6358). The University determines whether to close or delay opening due to inclement weather, not the instructor. Therefore, please do not contact the instructor for this information.

i. Religious Observances:

Profs. Capps and Agar extends hospitality to all persons regardless of race, religion, ethnicity, sexual orientation, economic or social background.

Profs. Capps and Agar honors the free exercise of religion. People from a wide variety of religious traditions live and work at Drexel, and the demands of religious observance in some traditions may cause conflicts with classroom and work schedules.

Profs. Capps and Agar will exempt any person who requests an absence due to the demands of religious holiday observance. Of course, nothing exempts a student from meeting course requirements or completing assignments, so the student will have to work with the instructor any make-up work.

Accommodations are to be dealt with on the basis of individual requests from students. Recall that religious holidays are numerous, and no holiday is privileged above another.

If you encounter a schedule conflict with your course work due to the demands of religious observance, here is what you should do:

  • Email engr131.w23@drexel.edu, and indicate that you will be absent from class due to observance of religious holidays.

  • Arrange with the instructor to complete assignments.

For any further questions please refer to Drexel’s Religious Accommodation Policy

j. Extended Absences:

In the event of extended absence where several classes have been missed, students should explore options other than those described above, such as requesting an Incomplete grade (please reference the Incomplete Grades Policy) or withdrawal (please reference the Course Withdrawal Policy). It is strongly recommended that students consult with their academic advisor to determine the best course of action given the circumstances, academic progression, and goals.

In the event of an extended absence due to a chronic medical condition or disability, students are strongly advised to contact (1) the Office of Disability Resources to explore potential accommodations that may be available and (2) their academic advisor to explore possible academic options. A student’s academic advisor can review policies governing such options as withdrawal or incomplete grade and discuss the potential impact of electing these options.

k. COVID-19:

We are in the midst of an unprecedented pandemic. We want to ensure the safety of our community. As a result, if you feel as if you are exhibiting COVID-19 symptoms, please follow the appropriate procedures for Drexel students. Instructors will be alerted of excused absences through the corresponding Drexel channels.

l. Equity and Inclusion:

Gender and Sexual Identity#

People commonly use gender and sexual orientation as part of their identity. Since English uses gendered pronouns, one way we will cultivate respect in the class and lab sessions will be to opt for using a person’s name or gender-agnostic pronouns to indicate that person unless that person has directly shared particular pronouns of preference. Profs. Capps and Agar will not tolerate any bias or discrimination based on a person’s likeness or identity.

Student Code of Conduct#

Student Conduct & Care seeks to create and maintain a process that is transparent and equitable for Students and Student Organizations. The policies and process described on this website have, in some cases, been paraphrased to provide a general understanding. The full Code of Conduct (the Code) can be downloaded for review.

Conduct Creed Student Conduct & Care has established, in accordance with its mission, vision, and values, a code of high standards of behavior to include the following expectations for Students and Student Organizations to:

  • Accept responsibility when their choices or actions have negatively impacted themselves, others, or the community at large.

  • Engage in constant learning, practice self-reflection, and develop resilience to maintain academic, personal, and professional integrity.

  • Foster positive relationships with others.

  • Ensure the health, wellness, and safety of themselves and their communities.

  • Demonstrate mutual respect and equity within the bounds of the Code of Conduct.

Defining Drexel’s Culture of Inclusion#

At Drexel University, we are committed to fostering an inclusive and welcoming environment based on integrity, trust, and respect. We view the diversity of our students, faculty, professional staff, and partners as our strength. As such, we strive to create a culture where everyone can leverage their uniqueness to foster innovation because they feel a sense of belonging.

We define diversity as the differences that make us uniquely who we are. This includes both individual (personality, values, attitudes, etc.) and other dimensions of difference including ideological, intellectual, economic, gender, gender identity, ability, sexual orientation, religious, age, racial, cultural, ethnic, visible and invisible disabilities, veteran status, nationality, and all the diversity of our students, faculty, professional staff, alumni, and other partners.

To maximize the strength that our diversity brings, we center equity, inclusion and belonging, and incorporate an anti-racism approach to our strategic plan, organizational systems, policies, and structures.

Anti-racism#

The active process of identifying and ending racism by changing our organizational systems, policies and structures to redistribute power and resources more equitably among all individuals, both at the personal and systemic levels.

Belonging#

A sense of psychological safety that affords the ability for each member of the Drexel University community to be their authentic self without fear of judgement, where everyone can perform at their best because they feel accepted, respected, valued, and heard.

Equity#

The process by which we aim to achieve fairness through reallocation of University resources and opportunities such that policies, structures, and their implementation work to eliminate historical, systemic disadvantage for the benefit of everyone. This requires providing varying levels of support both at the individual and systemic levels.

Inclusion#

We adopt Association of American Colleges and Universities’ definition of inclusion as: The active, intentional, and ongoing engagement with diversity—in the curriculum, in the cocurriculum, and in communities (intellectual, social, cultural, geographical) with which individuals might connect—in ways that increase awareness, content knowledge, cognitive sophistication, and empathic understanding of the complex ways individuals interact within systems and institutions.

Institutional Racism#

Institutional polices, processes and biased practices that favor white people over Black, Indigenous, and People of Color.

Racism#

Racial prejudice based on unfounded beliefs and irrational fear combined with institutional power. This can be at the individual level (conscious and subconscious beliefs and actions that promote racism), the interpersonal level (racist slurs or actions), and systemic level (in institutions).

6. Counseling Services#

College can be a time of uncertainty, inquiry, expansion, and adaptation for many students. Know that my office and conversations with the instructors are a safe place. Personal information told to the instructors in private will remain confidential.

The only exceptions are sexual misconduct or if I feel that you are at risk of harming yourself or others. If these issues are disclosed to the instructors, we have an obligation to report.

If an issues arises, the instructors will do our best to facilitate you getting the help you need to resolve your issues. We encourage you to make use of the access you have to the Office of Counseling and Health Services.

GROUP COUNSELING

The Counseling Center offers a variety of groups each quarter. Some groups are time-limited with a specific focus, while others are broader and open-ended. Please see the group descriptions here for more information about groups currently offered at the Center. If you are interested in joining a group that is not currently being offered, please email counsel@drexel.edu.

INDIVIDUAL COUNSELING

The personal concerns of Drexel students vary greatly, and our Counseling Center offers goal-focused individual counseling for support. Students initially meet with a therapist for an assessment to discuss their presenting concerns and to determine the type of services which will best meet their needs.

WELLNESS WORKSHOPS

The Counseling Center offers several Emotional Wellbeing Workshops throughout the term that offer information, coping strategies, and tools to address common concerns faced by college students. We know that Drexel students are incredibly busy and can benefit from quick and useful tools for common presenting concerns. Workshops meet once a week for a series of 3-4 weeks for 50 minutes. Our Wellness Workshops are formatted so that you can expect a classroom-style learning environment, and you can share as much or as little as you want. Each workshop comes with a student workbook that allows you to practice new skills between sessions. Click here to see which Workshops are currently being offered.

If you are interested in attending any (or all!) of the workshops, schedule an Initial Consultation and tell your counselor. If you are already seeing a therapist at the Counseling Center, tell them you are interested in a workshop. You are free to do more than one workshop and to repeat them as often as you like! Check with the front desk for current scheduling and availability. When scheduled for an Emotional Wellbeing Workshop, you must come to each session on time, as the sessions build upon each other.

COUPLES COUNSELING

Couples counseling is available for students and their partners if both are currently enrolled as full-time students at Drexel University. If your partner is not enrolled at Drexel, you may contact us for information on community referral resources.

OUTREACH PROGRAMS

The Counseling Center offers a variety of outreach to campus partners - including faculty and staff, student groups, and campus organizations - to promote wellness and resiliency, destigmatize mental health, and offer preventative interventions using a social justice lens. To schedule an outreach or for more information, please visit here.

CONSULTATION

If you are concerned about a friend, student or family member; want advice about how to encourage someone you care about to get help; or you have general questions about our services; contact the Counseling Center at 215.895.1415 to request a consultation. We will have a counselor contact you to discuss further.

For faculty and staff who may wish to consult with a counselor, or who want to learn more about how and when to make a referral, please see our Faculty and Staff Resource section.

REFERRAL SERVICES

Our Case Manager is available for students who would like assistance connecting with an off-campus mental health provider. The Counseling Center may make a recommendation for a student to be referred off-campus when a student may be better suited for specialized care and/or when the student’s needs fall outside the scope of the Center’s brief, goal-focused model. Our Case Manager also assists in navigating insurance and helping think through the type of care and provider you might be interested in working with in the community. The Case Manager will also be sure to follow up with you to see if you need any further assistance.

If you are currently in crisis, please contact our on-call counselor at 215.416.3337. If this is a psychological emergency and you need immediate attention, please dial 911, call Drexel Public Safety at 215.895.2222, or visit your nearest emergency room.

7. Tips for Success#

Be proactive about your success in the course! If you need help, there are many resources available to help you. Your first primary contact for help is the learning assistants, the teaching assistants, and then the instructors. If you are struggling, attend office hours or send an email. Do not wait to bring issues, course related or otherwise, to the attention of the instructors. If you cannot attend office hours, send an email to engr131.w23@drexel.edu to try to make other arrangements.

  • Be proactive about your success in the course.

  • Do not procrastinate! Begin your assignments and studying early!

  • Attend every class.

  • Ask questions whether it is during class, lab, office hours, or via email to your instructor.

  • Form a study group! Working together will help you and others better understand the course material as you can work through different difficulties and offer each other clarifications on concepts.

  • Do problems! Reading through Zybooks and your notes is not enough. Seek out new problems and work through them carefully. When you are done, check your answer. If you are wrong, examine carefully what misunderstanding occurred and how to avoid it in the future. If you were correct, examine if there was a faster way, check to see if your solution flowed and was easy to read, and think over what concepts/computations were used and what type of problem the exercise was.