Course Syllabus

SYLLABUS AND COURSE SUMMARY

Syllabus

Instructor Information

Instructor(s): Dr. Carter Tiernan

Teaching Assistant: Xinsheng Li, Jackson Liller, Hamza Pavel

Office Number: 620 Nedderman Hall

Email Address: tiernan@uta.edu;  Canvas e-mail is preferred communication method

Office Telephone Number: 817-272-0113;  Canvas e-mail is preferred communication method

Office Hours:  Monday, Tuesday, and Thursday 1:30 – 3:00pm ONLINE by Microsoft Teams and other times by appointment

Faculty Profile:  https://mentis.uta.edu/explore/profile/janice-tiernan

Course Information

Section Information

CSE 1310-003

Time and Place of Class Meetings

TR 3:30 - 4:50pm, SEIR 198 and online synchronously

** Students will be assigned specific days to attend in person. Assignment of days will be done one week prior to start of class.  See section on Hybrid Course Structure below.

Description of Course Content

Course Objective:

Introduces students to the concept of writing computer programs and thinking about how to write computer programs.  The course uses the C programming language to do this and also considers how to write programs using good programming practices that will apply to all later programming as well. 

“Learn about programming.  Do some programming.”

Catalog Description:

An introduction to the computer, to the algorithmic process, and to programming using basic control and data structures, using a procedural language.

Student Learning Outcomes

This is a general overview of outcomes for CSE1310.  The specific learning outcomes list is posted on Canvas for you to review.

  • Students will be able to develop algorithms for math functions (e.g. the factorial), processing of strings and lists, games (e.g. Tic-Tac-Toe, The Hangman ) or basic functionality (e.g. a phonebook).
  • They will be able to write and debug programs that implement the above mentioned algorithms.
  • When reading simple code, students will be able to explain what each line of code does and how it affects the computer state.
  • Students will be able to read and write text files using C.

 

Required Textbooks and Other Course Materials

This course does not require the purchase of any course materials.   All materials for this class are Open Educational Resources (OER) and resources freely available through UTA.  Additional OER resources will be made available and posted on Canvas

PDF Textbook:  "How to Think Like a Computer Scientist - C Version" PDF to download for free

Thomas Scheffler based on previous work by Allen B. Downey

Version 1.10 uploaded June 27th, 2019

Download from Github at  https://github.com/tscheffl/ThinkC/blob/master/PDF/Think-C.pdf

You will be required to connect to the course learning management system during class.   There will be Canvas quizzes and surveys to complete for attendance documentation, for project credit, and for possible extra credit.

 

Descriptions of major assignments and examinations

Dr. Tiernan's CSE 1310 class will require 4 or more significant programming lab assignments, two tests during the semester, i.e. “semester tests”, and a departmental final exam.   Descriptions of these assignments and exams are given later in this syllabus.

Schedule: See later in this syllabus for the semester schedule of class topics and the exam dates for the class.  Note that this class will have assignments due during Final Review Week prior to Final Exam Week.  The class syllabus, schedule, and other information will be available on my website and/or on Canvas as it is developed.  YOU are responsible for checking the website regularly for information such as due date changes and assignments.

Schedule for Departmental Final Exam for 1310: The final exam for all sections of 1310 is TBD and will be updated as soon as it is available.   The location of the exam will be given later in the semester.  You must take this exam at this time except in cases of emergency.  Travel schedules will not be accommodated.

Other Requirements

Prerequisites: MATH 1302 or MATH 1421 (or concurrently) or MATH 1426 (or concurrently)

Hybrid Course Structure:  This course will be taught in a Hybrid 3 format.  Here are the specifics:

  1. All students will be assigned to a Canvas group based on your last name .
  2. Each group will have designated days to come class in-person.
  3. On the designated day all group members are expected to come to class if possible.
  4. On the days when the student is not physically in class, they are expected to participate in the class online synchronously during the scheduled class time.
  5. Students may earn extra credit by participating in activities including things like Canvas class quizzes, surveys, polls, etc.

 

Technology Requirements :

It is recommended that you have a laptop for this class and your CSE dept. degree.  You will need to be able run NetBeans software in this class to complete your C programming assignments.  Your first assignment will walk you through the steps of loading the NetBeans software so you are not required to do this before class.  You will need a device that can access Canvas Quizzes, videos posted on Canvas, and other material on Canvas.  You will also need to be able to run Microsoft Teams and Canvas Conferences on your device.  You will need to be able to type content into Canvas for some quizzes and surveys.

 

Statement of Support: We at UTA know that you may have challenges in your life, especially with the COVID-19 situation.  In order to learn successfully, you must have basic security: a roof over your head, a safe place to sleep, enough food to eat. If you’re having trouble with any of those things, please talk with me (tiernan@uta.edu)  or with the Dean of Students (dos@uta.edu). Together we can work to make sure those needs are met.

 

 

Grading Information

Grading for CSE 1310:

  1. Lab assignments are graded out of 100 points each.  All lab assignments will be averaged to compute a semester lab grade.  The semester lab grade is worth 30% (30 points) of the final grade.
  2. Tests are graded out of 100 points each.  There will be two semester tests plus the final exam.  
  3. The two semester tests will be averaged to compute a semester test grade.  The semester test grade is worth 40% (40 points) of the final grade. 
  4. The final exam is comprehensive.  It will be worth 30% (30 points) of the semester grade.  Students must pass the final exam in order to pass the class.   
  5. In class pop quizzes will be considered as extra credit for up to 3% (3 points) added to the semester test grade.
  6. Service Learning activities will be considered extra credit for up to 3% (3 points) added to the semester lab grade.  See below for details about service learning activities that can be counted for this class.
  7. The final numeric grade for the semester will be the sum of the semester lab grade, the semester test grade, and the final exam grade.  In order to complete the class with a passing grade, the student must pass the final exam and must also meet the lab completion requirements given below in this syllabus.
  8. The final numeric grade will then be converted to a semester letter grade as shown below.

Grading Summary for CSE 1310: 

Lab assignments: 100 points each; averaged together to get a score out of 100           30% of final grade

Semester tests: 100 points each; averaged together to get a score out of 100             40% of final grade

Departmental Final Exam: 100 points;                                                                    30% of final grade

Pop Quizzes: 10 points each; averaged to get a score out of 10 points (extra credit up to 3% on test grade)

Service Learning: up to 3 points (extra credit up to 3% on lab grade)

Final grade = (LabsAvg * .3 + Svc) + (TestsAvg * .4 + Quizzes * .3) + (Final * .3) subject to lab submission and final exam requirements

Final exam requirement:

Students will be expected to make 70 or above in the dept exam in order to pass the class. This means that if a student has a passing grade in the class overall but makes less than a 70 on the final exam, the student may not be able to pass the class.

Lab completion requirements:

All of the required labs must be submitted in order to have the possibility of making a grade of A.  At least eighty-five percent (85%) of the required labs must be submitted in order for a student to pass CSE 1310 with a C or better.  At least seventy-five percent (75%) of the submitted labs must receive passing grades (with no significant errors) in order to pass CSE 1310 with a C or better. Regardless of the number of labs assigned, at least two of the last three labs must be submitted and have passing grades in order to pass CSE 1310 with a C or better.

Final course grades will be determined by the following UNLESS student does not meet lab submission requirements, does not meet the final exam requirement, or does not take the final exam.  Failure to meet lab submission requirements, to meet the final exam requirement, or to take the final exam will cause student to receive a grade of D or F regardless of other grades.  Cheating of any sort on any course activity (including but not limited to tests, lab assignments, quizzes, homeworks, etc.) will result in a penalty worth TWICE the weight of the activity and may result in a failing grade regardless of other grades.

90 – 100 pts    A

80 – 89 pts      B

70 – 79 pts      C  { CSE 1310 must be passed with a C or better to progress to the next class }

60 – 69 pts      D

0 – 59 pts        F

The instructor may apply a more lenient letter grade scale based on degree of difficulty of the class.

Make up tests

Make up tests and final exam MUST be arranged in advance and will be scheduled at the discretion of the instructor. Make appropriate arrangements to attend the departmental final exam scheduled on TBD. Travel plans are NOT an acceptable excuse for missing the dept. final exam.

 

Ethics and Academic Integrity:

A Statement of Ethics will be provided on Canvas for you to read, sign, return, and follow. Violators of the ethics code will be reported to the Office of Student Conduct and penalties will be levied as described in the Statement of Ethics.  

In Dr. Tiernan's 1310 class students are allowed to discuss algorithms and approaches to solving problems.  Students may assist others in finding errors in code, i.e. debugging, and may receive assistance with debugging.  Students may NOT share code with others electronically or in hardcopy.

CHEATING on exams, PLAGIARISM, or COLLUSION will not be tolerated.

Cheating includes but is not limited to:

Using unauthorized materials for a test, quiz, lab, or other course activity.

Submitting work that was developed in whole or in part by someone else (excluding material given by the instructor for your use).  This is plagiarism.

Developing material for someone else to submit.  This is collusion.

Lab homework assignments and Expectations for Out-of-Class Study

The only way to learn programming is to write programs and make them work.  The process is to write a chunk of code, test the chunk of code, find the errors, debug the errors, test the code some more, find errors, debug, test, get it working then add another chunk of code and do the same process again.  At the beginning of this course you will write very small programs.  These will help you get familiar with the process of turning your thoughts and algorithms into programs.  As the semester progresses, you will be expected to write larger and larger programs.  These will reuse ideas you learned earlier and will let you practice the process of writing testing and debugging.   You should anticipate at least 15 hours per week outside of class (on average) to complete the lab assignments.

All lab assignment coding is INDIVIDUAL EFFORT only.  

Lab assignments will be submitted through Canvas for this class.

Every lab assignment has a given due date. No late labs will be accepted. (Five minutes late is still late.)   Lab assignments will be posted on Canvas.

[If you are unable to turn in your lab on time, you may request an extension by sending an e-mail to Dr Tiernan within 24 hours of the deadline for the lab.  The e-mail must explain WHY you are not able to submit on time.  If Dr. T grants an extension, she will reply to your message with the late penalties and new deadlines.]

Lab assignments must be individual effort.  The Statement of Ethics you will receive details the definitions of collusion, plagiarism, and academic dishonesty as related to lab assignments in CSE.

All of the required lab assignments will be written in C on the NetBeans IDE platform.   Lab 1 will give additional details about NetBeans requirements.

Lab Grading:

Each lab will be graded on a number of factors. Always be sure that a turned in lab compiles in the Netbeans IDE without warnings or errors and executes (runs) without errors even if it is not complete. You will receive partial credit for a working stubbed program. It is your responsibility to completely test your lab assignment PRIOR to submission.

Programs that do not compile successfully (without compiler warnings or errors) will receive zero (0) credit.

Programs that do not execute successfully (without inappropriate termination) will receive zero (0) credit.

This means that ALL choices the user can make when running your code must work properly and ALL inputs (excluding ones the lab instructions say you don't have the deal with) must work properly even if the input value is invalid; for example, a negative value for a month must NOT make your program crash.

Labs that implement some, but not all, of the requirements may be turned in for partial credit.  However, these partial labs must compile and run successfully without errors or warnings to receive partial credit.  Examples of errors are

Compilation errors - these occur when the program is being compiled and prevent creation of an executable file.  These errors will show up as error messages in the NetBeans output window.

Compilation warnings - these occur when the program is being compiled, are printed to the screen but still allow the creation of an executable file.  These will show up as error messages in the NetBeans output window.

Execution errors - these occur once the program has started running and cause the program to terminate in any way other than that defined by the programmer.  These errors will show up AFTER the “BUILD SUCCESSFUL” message in the NetBeans output window.

Additional procedural information on lab assignments may be handed out or made available on the website as required.

Quizzes:

Pop quizzes may be given in class and based on the assigned chapters and class lectures.  Quizzes are not announced.  No make-up quizzes will be given.  Quizzes are extra credit up to 3% extra credit (3 points) added to the semester test scores.

Exams:        

Material covered on the exams will be based on the class lectures and assigned chapters. All exams are mandatory. There are no general make-up exams after the scheduled times. If a student notifies the instructor IN ADVANCE, then an early make-up exam MAY be arranged at the discretion of the instructor. In the event of an emergency, contact the instructor as soon as possible.  The instructor's decision is final. All exams may be kept by the instructor.   

Grading issues: 

Requests for re-evaluation of assignments are limited to seven (7) calendar days after the assignment is returned. Every assignment submitted for regrading must be given to the instructor (exams and quizzes) or lab instructor (labs) in its entirety and will be completely regraded. Papers will not be re-evaluated in the classroom or lab.

Applications for forgiving (or excluding or replacing) the grade in a course are available online from the Registrar's office (Office of Records) and must be turned in to the Registrar before the last drop day of the semester in which the course is being retaken.

Semester grades will be available via the UTA website, after the Registrar has completed processing the semester grades.

Service Learning Extra Credit:

This class will offer the opportunity for you to earn up to 3% extra credit (3 points) added to the semester lab grade by performing some service to the CSE department, the UT Arlington College of Engineering, the University, or the greater community.  The service must be completed and documentation turned in by the Friday BEFORE Dead Week.  The community service credit can be earned online, remotely, or in-person.  See the documents on Canvas for types of service that can be done.

The basic community service credit structure is as follows:

-   One documented online or remote service activity is worth between 1% and 3% credit depending on activity and hours of service performed.  See documents on Canvas for more information.

In person volunteering at UTA will be limited in Fall 2020 due to coronavirus limitations.  Any in-person volunteering that is done should be done SAFELY and in accordance with all best practices.

-   4 or more hours of in-person service to the CSE dept. or the College of Engineering, documented by a faculty or staff member, is worth 3%;  8 hours of service to the University, documented by a faculty or staff member is worth 3%;  16 hours of service to the community documented by a staffer of the community organization is worth 3%. (3% = 3 points added to semester lab grade)

-  2 to 4 hours of service to the CSE dept. or the College of Engineering OR 4 or more hours of service to the University, documented by a faculty or staff member, is worth 2%. (2% = 2 points added to semester lab grade)

-  2 to 4 hours of service to the University, documented by a faculty or staff member OR 4 or more hours of service to the community documented by a staffer of the community organization is worth 1%. (1% = 1 pt added to semester lab grade)

CSE dept. service includes volunteering at approved events, joining ACM, GDC, or AAAI and assisting with their events, or other CSE service approved in advance by Dr. T.  Approved events include the Engineering Saturday (Oct. and Apr.) and FIRST Tech Challenge mentoring or events (Sep.-Mar.) as example.  This is not a complete list but it gives some examples.

College of Engineering service includes volunteering at the Engineering Welcome Bash, joining ESC and assisting with ESC events such as Engineers Week, or other College of Engineering service approved in advance by Dr. T.

University service includes activity with UTA Volunteers, FLOC, or the BIG EVENT, or other UTA service approved in advance by Dr. T.

"Community" in-person service includes volunteering at public schools, parks, food pantries, animal shelters, and homeless shelters, etc.  Discuss with Dr. T prior to your service. 

 Other venues for service (within UTA or within the community) must be approved in advance by Dr. T prior to your service.  Community service extra credit is not available for political or religious service activities for this class.  However, volunteering to for certain activities affiliated with political or religious organizations could be allowed such as cleaning an office, mosque, church, synagogue, etc. when no political/religious activities are occurring.  Request approval from Dr. T in advance in order to have the possibility of receiving credit for these activities.

 

Dr. T’s philosophy about teaching programming:

The job of a computer scientist/ software engineer / systems analyst / computer engineer / software developer / etc. is to use the computer to solve a problem or create a product.  These problem solutions and products are software programs.  The task of CS/SE/analyst/engineers/developers is working with a team to determine what kind of solution is needed for a problem and then designing a software solution to implement it and then writing the code (or working with a coder/programmer to write code) for that program and making it work.  To learn all of the skills to do this well is the purpose of pursuing a 4-year degree.  To do all of this, there are many things to learn and practice.  Part, only part, of the practice is to write programs and learn how to do this well.  However, this practice pervades the rest of the tasks so in order to be able to use the skill of writing programs, we have to teach you to write programs and we have to teach this first, like the ABC’s, so that it can be used as a building block for learning all the other parts of being a computer scientist/ software engineer / systems analyst / computer engineer / software developer / etc. 

So, programming is NOT the entire job of being a computer scientist/ software engineer / systems analyst / computer engineer / software developer / etc. but it is a significant part.  Therefore we teach you programming FIRST so that you can use this skill while you learn the rest of the really interesting aspects of being a computer scientist/ software engineer / systems analyst / computer engineer / software developer / etc. throughout the rest of your degree.  Learning to program is like learning your ABC’s.  You do this in order to learn how to do even more interesting things later. 

 

Course Schedule

Important Note: The Course Schedule below is based on due dates set in the course and it will update in real time based on changes in the course. 

As the instructor for this course, I reserve the right to adjust this schedule in any way that serves the educational needs of the students enrolled in this course. – Dr. Tiernan

 

Lecture

Topic

HTTLCS

Assignments**

Class date

1

Introduction;  Course syllabus and introduction to the class. Overview. How to run a C program in Netbeans

Syllabus  Intro

 Ethics Statement

Aug 27 (Thurs R)

2

First Programs; Output, Arithmetic, Variables, Keywords, Functions

Ch. 1

Lab 1**

Sept 1 (Tues T)

3

Errors and Input Validation

Ch. 1

Sept 3  (R)

4

Data types, sizeof, convesions

Ch. 2

S 8 (T)

5

Functions, calls, and scope

Ch. 3

S 10 (R)

CENSUS DATE

Fri, Sept 11

6

Functions continued. Slides on common mistakes with methods/functions

Ch. 3, 5

Lab 2**

S 15 (T)

7

Statements, Expressions, Control Structures, Algorithms

Ch. 4

S 17 (R)

8

If statements and conditional tests (Relational operators)

Ch. 4

S 22 (T)

9

Nested if-else, switch, Algorithms with conditionals

Ch. 4, 5

Lab 3**

S 24 (R)

10

Loops with while

Ch. 6

S 29 (T)

11

Loops with while and for (continued)

Ch. 6, 7

Oct 1 (R)

12

Loops (continued)

Ch. 6

O 6 (T)

13

First midterm.

Lab 4**

O 8 (R)

14

Arrays

Ch. 7

O 13 (T)

15

Arrays with functions, continued.

Ch. 7

O 15 (R)

16

Arrays, multi-dimensional arrays, continued.

Ch. 7

Lab 5**

O 20 (T)

17

Strings

Ch. 8

O 22 (R)

18

Strings

Ch. 8

O 27 (T)

19

Second midterm.

O 29 (R)

20

Control flow with recursion

Ch. 4

Lab 6**

Nov 3 (T)

21

Binary numbers, hexadecimal numbers.

Supp. Mat. (SM)

Nov 5 (R)

LAST DAY TO DROP – 4:00PM

Fri, Nov 6, 4pm

22

Detailed User and File input/output

SM

N 10 (T)

23

File input/output (continued).

SM

N 12 (R)

24

C Library and Functions

SM

Lab 7**

N 17 (T)

25

Example applications with sums, averages, or formulas.

SM

N 19 (R)

26

Example application with nested loops (continued).

SM

N 24 (T)

27

Examples of more complicated programs including searching and sorting.

SM

Dec 1 (T) online

28

Examples of more complicated programs including string manipulation

SM

D 3 (R) online

29

Examples of more complicated programs including multiple functions.

SM

D 8  (T) online

CSE 1310 Final Exam

2:00 - 4:30pm

D 15 (T) online

 

**Planned Assignments Schedule – ALL dates are tentative on the schedule

Assignments will be due approximately bi-weekly. Each assignment will have the ACTUAL due date on the assignment.

Planned Exams Schedule

First midterm:

Main topics: variables, assignments, types, conditionals, while/for loops, functions.

Second midterm: (Exam is cumulative)

Main topics: variables, assignments, types, conditionals, while/for loops, functions, arrays, strings.

Final exam:,   Departmental (Exam is cumulative)

Main topics: variables, assignments, types, conditionals, while/for loops, functions, arrays, strings, files, binary, recursion.

 

Institution Information

UTA students are encouraged to review the below institutional policies and informational sections and reach out to the specific office with any questions. To view this institutional information, please visit the Institutional Information page (http://www.uta.edu/provost/administrative-forms/course-syllabus/syllabus-institutional-policies.php ) which includes the following policies among others:

  • Disability Accommodations
  • Title IX Policy
  • Academic Integrity
  • Student Feedback Survey
  • Final Exam Schedule
  • Final Review Week
  • Active Shooter Response
  • Non-Discrimination Policy
  • Electronic Communication Policy
  • Campus-Carry Policy
  • Counseling and Psychological Services (CAPS)

Additional Information

Mandatory Face Covering Policy

All students and instructional staff are required to wear facial coverings while they are on campus, inside buildings and classrooms. Students that fail to comply with the facial covering requirement will be asked to leave the class session. If students need masks, they may obtain them at the Central Library, the E.H. Hereford University Center’s front desk or in their department.  Students who refuse to wear a facial covering in class will be asked to leave the session by the instructor, and, if the student refuses to leave, they may be reported to UTA’s Office of Student Conduct.

Social Distancing Policy

All students, faculty, and staff are required to maintain social distancing while they are on campus. Family groups or roommate groups who do not maintain distance off campus in their household may be near each other on campus but must socially distance from others not in the same household.  Students in classrooms are expected to sit in the marked seats to maintain social distance.

Attendance

At The University of Texas at Arlington, taking attendance is not required but attendance is a critical indicator in student success. Each faculty member is free to develop his or her own methods of evaluating students’ academic performance, which includes establishing course-specific policies on attendance.

As the instructor of this section, I will take attendance for the first few days of the class only.  Attendance does not factor in to the grading.  However, students are expected to attend class and pop quizzes may be given during any class throughout the semester.  Pop quizzes will not be announced and pop quizzes cannot be made up. 

While UT Arlington does not require instructors to take attendance in their courses, the U.S. Department of Education requires that the University have a mechanism in place to mark when Federal Student Aid recipients “begin attendance in a course.” UT Arlington instructors will report when students begin attendance in a course as part of the final grading process. Specifically, when assigning a student a grade of F, faculty report the last date a student attended their class based on evidence such as a test, participation in a class project or presentation, or an engagement online via Canvas. This date is reported to the Department of Education for federal financial aid recipients.

Lab Safety Training

[Not required for CSE1310] 

Students registered for this course must complete all required lab safety training prior to entering the lab and undertaking any activities. Once completed, Lab Safety Training is valid for the remainder of the same academic year (i.e., Fall through Summer II) and must be completed anew in subsequent years. There are no exceptions to this University policy. Failure to complete the required training will preclude participation in any lab activities, including those for which a grade is assigned.

Emergency Exit Procedures while attending class on campus

Should we experience an emergency event that requires evacuation of the building, students should exit the room and move toward the nearest exit, which may be located in the front or the back of the classroom. When exiting the building during an emergency, do not take an elevator but use the stairwells instead. Faculty members and instructional staff will assist students in selecting the safest route for evacuation and will make arrangements to assist individuals with disabilities.

Students are encouraged to subscribe to the MavAlert system that will send information in case of an emergency to their cell phones or email accounts. Anyone can subscribe at Emergency Communication System.

Student Success Programs

UT Arlington provides a variety of resources and programs designed to help students develop academic skills, deal with personal situations, and better understand concepts and information related to their courses. Resources include tutoring by appointment, drop-in tutoring, etutoring, supplemental instruction, mentoring (time management, study skills, etc.), success coaching, TRIO Student Support Services, and student success workshops. For additional information, please email resources@uta.edu, or view the Maverick Resources website.

 

The IDEAS Center (https://www.uta.edu/ideas/) (2nd Floor of Central Library) offers FREE tutoring and mentoring to all students with a focus on transfer students, sophomores, veterans and others undergoing a transition to UT Arlington. Students can drop in or check the schedule of available peer tutors at www.uta.edu/IDEAS, or call (817) 272-6593.

The Library’s 2nd floor Academic Plaza (http://library.uta.edu/academic-plaza) offers students a central hub of support services, including IDEAS Center, University Advising Services, Transfer UTA and various college/school advising hours. Services are available during the library’s hours of operation.

Emergency Phone Numbers

In case of an on-campus emergency, call the UT Arlington Police Department at 817-272-3003 (non-campus phone), 2-3003 (campus phone). You may also dial 911. Non-emergency number 817-272-3381 .  It is recommended that you add these numbers to your phone contacts.

Library Information

Research or General Library Help

Ask for Help

Resources

 

Course Summary:

Date Details Due