CSCE A201: Programming Concepts I

Course Syllabus, Fall 2017 Textbook

Course Description: The objective of this course is to introduce students to the fundamentals of computer programming and problem solving.  It is designed as the first course for computer science majors. The emphasis is on the fundamentals concepts of computer science, including structured and object-oriented programming, syntax, semantics, testing/debugging, implementation, documentation, and recursion using the Java programming language.  Students will be exposed to development on using text editing and an IDE.

Upon completing the course students will understand:

  1. Use an editor and compiler to create, compile, and run a computer program.
  2. Manipulate primitive numeric values, including integer and floating-point types.
  3. Use arithmetic operators and understand the conventions for order of operations.
  4. Input, manipulate, and display strings and use string variables.
  5. Declare object-reference variables, construct objects, and call methods.
  6. Write selection and iteration statements to control the flow of execution in a program.
  7. Write class definitions, including instance variables, constructors, and methods.
  8. Define derived classes in an inheritance hierarchy.

Programming Labs:   There is a weekly lab assignment held in ECB 209. The lab exercises are designed to reinforce lecture material and assist you with the programming assignments.  It is OK to get help from fellow students on programming drills but don't just copy what another student has done.  You need to understand how the program works!  The labs are primarily run by the lab assistants. Lab exercises will be graded on a 3 point scale: 0 for nothing or very little progress, 1 for partial progress or complete but incorrect output, and 2 for fully completed exercises. Once you have finished the lab material and the lab assistant has recorded your grade, you may work individually on the programming assignment or leave early.

If you need extra practice you can consider using myprogramminglab, which comes with the optional book, or coding bat. Both sites host short online Java programs, that are like programming drills, that you can type in and test.

Readings are an important foundation to lectures. The zyBook readings and Participation Activities must be completed prior to the lecture on the day they appear on the calendar or they will not receive credit, with the exception of Chapter 1 for week 1 (which is due with Chap 2 on Wednesday, September 6 before class). Corresponding zyBook Challenge Activities are due by midnight on the first lecture day of the next week (e.g. Chapter 2's Challenge Activities are due Monday, September 11). Edit per notice on Blackboard - Challenge Activities accepted on Thursday of the next week by midnight

For the zyBook Participation Activities and Challenge Activities, you may skip up to 10% of them with no penalty. For example, if at the end of the course you complete 80% of the Participation Activities, this will get bumped up to 90% and you will receive 4.5/5 points towards your final grade out of 100 points.

ZyBook availability and pricing: The zyBook is only available to you for the duration of the class. So if you want something to reference long term, be sure to print each chapter to a pdf file. Note that if you drop the class, you can get a full refund for the zyBook. And if you need to retake the class, the zyBook is free. You may also renew the zyBook for $1.50/month.

Homework Assignments:   There will be approximately 5 problem assignments throughout the course, although this is subject to change.  Electronic submission via Blackboard is required.  The homework assignments are more complex than the labs and require knowledge of programming and problem-solving.   You are expected to complete homework assignments individually.  You can get general help from other students but no copying of code should occur.  If you need help see your instructor or a tutor.  Copying someone else's program or downloading code from the Internet and turning it in as your own is considered plagiarism and a form of academic dishonesty.  If you are found responsible for academic dishonesty then you will receive at a minimum a score of zero on the item in question in addition to sanctions imposed by the Dean of Students. A second offense will result in an F for the course.

Late assignments will be downgraded 20% of the earned score for each weekday it is late (so an 8/10 submitted 2 days late is downgraded 40% to 4.8/10).

Computing Labs:  To work on your homework assignments you can use ECB 209 when class is not in session. ECB 206 is an open lab but does not have many seats. You can also use EIB 309, which is reserved for CS&E students. You need your wolfcard. There are not many computers but there is space for laptops and groupwork. Note that Java is NOT installed on the general ITS lab computers. Of course you can also use your own computer.

Tutors:   We will have some CS students working as tutors.  Their schedule will be posted sometime around the second week of class, but is subject to change. They will be available for in-person tutoring in EIB 309. There is also online tutoring at http://cloverjacket.duckdns.org/osticket/> and a discord server at https://discord.gg/aYGHdvQ.

Questions: If you have any questions, feel free to come in to my office.  In general, I have an open door policy -- if I am available in my office, you are welcome to come by.  An even better way to reach me is through email.  I check my email frequently and you should receive a response quickly.  Email is preferred over telephone and you will probably receive a faster response since I don't check voicemail very frequently.  You can also contact me online via various instant messengers (see contact info on the home page).  I'm often up late and will be glad to answer questions if I'm available! 

Exams:  There will be two midterms and one final exam.  If you must miss an exam, notification must be made in advance.  Exams will consist of problems to work through. Typically you will either have to describe the output of some code, write some code yourself, or provide short answers.  Each exam will be cumulative since the course material builds upon previously covered material!  This means you must keep up in the class, or you will quickly find yourself lost. 

Grading Breakdown:

zyBook participation activites:   5%
zyBook challenge activities:   5%
Homeworks:  30%   (all homeworks are worth an equal amount)
Labs:              15%   (all labs are worth an equal amount)
Midterm 1:     15%
Midterm 2:     15%
Final Exam:    15%

The grade scale is a typical 90-100 = A, 80-89 = B, 70-79 = C, 60-69 = D, and below 60 is a F.  The instructor may institute a curve that could raise grades but not lower them from the aforementioned scale.

An incomplete grade will only be given for a valid excuse (e.g. medical, death in the family). An incomplete grade does not let you take the class over again, your final grade will be assigned based on work submitted in class and work that remains to be submitted.   A no-basis (NB) grade may be issued for students that submit nothing but did not drop the class.

Academic Honesty: Academic integrity is a basic principle that requires students to take credit only for ideas and efforts that are their own. Cheating, plagiarism and other forms of academic dishonesty are defined in the Student Code of Conduct, which can be found in the UAA Student Handbook: https://www.uaa.alaska.edu/students/dean-of-students/student-conduct/code.cshtml

Cheating, plagiarism and other forms of academic dishonesty will first go through the student conduct process and then, if a violation of the Student Code of Conduct is found, academic sanctions may occur in addition to disciplinary sanctions. The Student Conduct Review Procedures are outlined in the UAA Student Handbook.

Academic Rights of Students: The Academic Dispute Resolution Procedure is in the UAA Catalog here: https://catalog.uaa.alaska.edu/academicpoliciesprocesses/academicstandardsregulations/academicrightsofstudents/

Student Equity and Compliance:

The Office of Equity and Compliance ensures that UAA adheres to a safe, equitable, and healthy environment.  The office website is https://www.uaa.alaska.edu/about/equity-and-compliance/.  If you qualify for accommodations because of a disability, please contact Disability Support Services in RH 105 (phone 907-786-4530) in a timely manner so that your needs can be addressed. You can make anonymous reports regarding discrimination, sexual assault, sexual harassment, dating and domestic violence, stalking, or retaliation. For emergencies, contact UPD at 8-911 from a campus phone or 911 from a cell phone.

Care Team Support for Students:

If you, or someone you know, needs support, is distressed, or exhibits concerning behavior, help by making a referral to the Care Team. The UAA CareTeam’s purpose is to promote a safe and productive learning, living and working environment by addressing the needs of students. As your Faculty, I may contact the Care Team to seek support for you.  I encourage you to fill out a referral if you or a classmate may be in need of help.

Contact info for the Care Team: (1) submit a Care Report (referral) online, http://www.uaa.alaska.edu/careteam/submitting-care-report.cfm; (2) E-mail your concern to care@uaa.alaska.edu; or (3) call the Care Team phone number: 786-6065;  if an emergency-- call UPD or 911.

UAA Academic Coaching Center: The Academic Coaching Center (Sally Monserud Hall, Room 114, in the Learning Resources Center) helps students develop college-success knowledge and skills. All students are welcome to meet with an academic coach for help with goal setting, time management, textbook reading, test-taking, note-taking and technology (Blackboard, email, Microsoft Office Suite and ePortfolio). Coaching is offered by appointment or on a drop-in basis. Call 907-786-6828 for additional information, or visit: http://www.uaa.alaska.edu/lrc/academic-coaching-center.

Title IX: Members of UAA and visitors have the right to be free from all forms of gender and sex-based misconduct including sexual violence, sexual harassment, domestic violence, dating violence and stalking. UAA expects all members of the community to conduct themselves in a manner that does not infringe upon the rights of others. Gender-based and sexual misconduct has a negative impact on members of our community. Therefore, UAA has a zero tolerance policy for gender-based and sexual misconduct. If you have experienced gender-based and/or sexual misconduct, the following individuals can assist you in exploring options and support:

Title IX Coordinator, (907)786-1424 https://www.uaa.alaska.edu/about/equity-and-compliance/

Student Health and Counseling, (907)786-4040, https://www.uaa.alaska.edu/students/student-health-counseling-center/