Introduction to Computer Science II

From Maryville College CS Wiki
Jump to: navigation, search

General Information

Spring 2019
Robert Lowe robert.lowe@maryvillecollege.edu
Office: SSC 214

Office Hours

  • MWF - 2:00 - 3:00
  • TR - 10:00 - 11:00

Other Times by Appointment and/or Luck

Textbooks and Materials

Prerequisites

CSC1110 Computer Science I

Catalog Description

A continuation of Computer Science 111 with emphasis on advanced programming features. Laboratory work supplements and expands lecture topics and offers supervised practice using programming.

Goals

  • Gain an advanced understanding of Object Oriented Programming.
  • Learn to use Object Oriented Analysis and Design to build large complex programs.
  • Gain a preliminary understanding of low level programming concepts, especially memory addressing.
  • Increase your knowledge of using and programming the UNIX operating system.
  • Hone your knowledge of programming tools like make, g++, and gdb.
  • Learn new tools, like git.
  • Begin to establish an online portfolio to make yourself attractive to future employers.

Methods of Instruction

  • Lecture
  • Lab
  • Programming Assignments
  • Exams


Grading

Labs 20%
Programming Assignments 50%
Exams 30%

Schedule

Date Topic Assignment
R 1/10 OOPs: The Harsh Realities of Programming
T 1/15 Pointers and Terminal Control
R 1/17 Lab 1 - Git it Done Prog 1 - Life
T 1/22 OOP - Inheritance and Polymorphism
R 1/24 Lab 2 - Shapes with Friends
T 1/29 Overloaded Operators, Functions, and Students
R 1/31 Lab 3 - Egyptian Fractions Prog2 - Alpacas
T 2/5 Introduction to FLTK
R 2/7 Lab 4 - Simple Calculator
T 2/12 More Graphical Programming
R 2/14 Lab 5 - Hangman
T 2/19 Fun With Pixels
R 2/21 Lab 6 - Dazzling Fractals
T 2/26 Review and Alpaca Fracas Prog 3 - Hangman
R 2/28 Midterm Exam
T 3/5 Backtracking
R 3/7 Lab 6 - Pegging Problem Prog 4 - Pegboard
T 3/12 Spring Break
R 3/14 Spring Break
T 3/19 Writing Robust Programs
R 3/21 Lab 7 - Catching Trouble
T 3/26 Advanced Magic: GDB & Lower Level Code
R 3/28 Lab 8 - Squash the Bugs!
T 4/2 Advanced Magic: Temporal Programming
R 4/4 Lab 9 - The Stop Wtch Prog 5 - The Game
T 4/9 Advanced Magic: Virus Writing
R 4/11 Lab 10 - Smashing the Stack for Fun and Profit
T 4/16 Exploring Other Languages
R 4/18 Lab 11 - Exploring Other Languages
T 4/23 Review and Game Day

Classroom Policies and Expectations

In order to ensure a happy and successful semester, I request that you:

  • Silence all cell phones during class. Texting and driving is deadly. Texting and learning is worse. I know when you are texting, and it distracts me. Worse, it will distract students around you. Please be courteous to each other and refrain from surfing the web and texting during class.
  • Come to class well rested, well fed, and ready to work and learn.
  • Be courteous and respectful of your classmates. Try to make everyone sitting around you happy to see you. A community of happy learners is far more successful than a collection of embittered individuals.
  • Always bring required materials to class.
  • Ask lots of questions! I understand that you like the sound of my voice. I’ve always enjoyed it, but you will get much more out of this course if you ask questions. If you are confused about a topic, I guarantee you that at least one other person in the room is as well, so don’t be shy about speaking up. Learning is best done as a dialog, your professors love answering questions!

Of course, these guidelines are not quite specific enough for some questions. More detailed and legalistic policies follow.

Attendance

You should strive for perfect attendance! Many of the concepts we will cover can be quite confusing without proper context and guidance. If you are absent, you will miss out on this, and so you will easily fall behind. Of course, sometimes life happens and you may need to miss class. My policy is that you must attend at least 80% of class meetings in order to pass the class. If you miss more than 20% of the class meetings, unless you have been granted an exception, you will receive an automatic “F” for the course. Also, note the days of the exams in the schedule. If these dates change, I will notify you at least week in advance; however, they are not likely to change. If you must miss an exam period, you will need to make arrangements to take the exam before the scheduled day. Failure to take an exam on or before an exam period will result in a grade of zero for that exam.

Getting Help

I will do my best to make sure help is readily available to you. You can come see me during my scheduled office hours. If you see me in my office and it is not an office hour (a very common occurrence) feel free to come in and ask any question you like. The same goes for when you see me around campus. Feel free to approach me and chat with me at any time! Also, I am available by email and will typically respond within one business day. I typically do not check my email after 6:00PM or on weekends, however, so there may be a delay during those times.

Due Dates and Late Work

Due dates will be provided with each assignment. Except in very rare emergencies, no individual extensions will be granted. Late work will receive a grade of zero. This means that “getting help” is all the more important! I never grant individual extensions to assignments, but if lots of people express confusion to me, I am much more likely to extend the assignment’s due date for the entire class. If no one asks me questions about an assignment, I will assume everything is going fine and will act accordingly.

Collaboration

I encourage you to form study groups and consult with each other. However, each individual in that group must do their own work. I realize that this can be a tricky dynamic to work with. If you ever think you may be getting too much help from another student, then you probably are.

Acceptable collaboration would include:

  • Asking for help on the approach to a problem.
  • Asking for help in locating references in books and/or on the internet.
  • Reading texts together or forming study groups for exams.

Unacceptable levels of collaboration include:

  • Showing completed solutions to each other.
  • Asking another student what a specific answer is.
  • Allowing another student to copy an assignment.

Any wholesale copying will result in a grade of zero on the assignment for all students involved. This policy is, of course, different for group projects. Unless otherwise instructed, I expect you to submit only your own work for grading.

Academic Honesty

Academic honesty is a very serious issue. All work that you present as your own must be your own work. Copying someone else’s work in any way shape or form is unacceptable unless proper attribution is given. I am,

of course, referring to plagiarism. Plagiarism is not always a blatant act. In fact, most of the time it takes very subtle forms such as:

  • Presenting an idea that you have read without citing a source.
  • Copying code from a website.
  • Copying steps for a mathematical problem from a website.
  • Using pictures and/or clipart without attribution.

As a rule, plagiarism is unspeakably ugly to academic professionals. Copying without attribution is, in short, a great way to get on your professor’s bad side. Also, the Maryville College policy is that after 3 instances of plagiarism, you are referred to an academic honesty board for disciplinary action. So please, do not commit this heinous deed!

If I catch you in an act of plagiarism, the first offence will result in a grade of zero and a report will be written and filed with academic affairs (not to mention a rather unpleasant conversation for both of us). The second offence will result in a failing grade for the course along with a second report.

Inclement Weather

Ah, East Tennessee. Normally pleasant and temperate, but at other times we are in the midst of a raging whirlpool of blizzards and tornadoes! Should Maryville College close, an announcement will be made on the website, in the local media, and via text message (if you’ve signed up for the alerts). So long as the college is open, we will meet and have class. If the college is closed, I will revise our schedule upon our return.

Students with Disabilities

Students who might need a learning or physical accommodation(s) based on the impact of a disability should contact Lori Hunter at 981-8124 to discuss coordination of services related to documented disabilities. The Disability Services office is located in the Learning Center in Bartlett Hall 204.