CSC 112 - Introduction to Computer Programming

Course Syllabus - Fall 2019

Section 002 - Online Canvas logo


Jack Tompkins
E-mail: tompkinsj@uncw.edu
Office: CI 2034
Office Hours*: 09:00 am - 10:50 am TR and by appointment
Phone: (910) 962-7013
*Students are welcome to ask questions any time my door is open.


CSC 112. Introduction to Computer Programming (3) Prerequisite: MAT 111 or 115. An introduction to programming in a high-level language for students who are not computer science majors. Algorithms, computer systems, data representation, survey of computer applications, elementary programming techniques, debugging and verification of programs. The language to be used will be specified in the schedule of classes. May be repeated once for credit under a different subtitle.


This section of CSC 112 teaches the JavaScript programming language in the context of HTML 5. No previous programming experience is assumed. Javascript is an easy to learn, powerful programming language. It has efficient high-level data structures and a simple but effective approach to object-oriented programming. 

Students will learn many core concepts in computer science and the fundamentals of software design and development, basic problem solving strategies and common design patterns in order to expedite the software development process. Students will also discover that computer programming is an art and beyond a program that "works" are issues of aesthetics, simplicity, and elegance. 


New Perspectives on HTML and CSS 7th edition Comprehensive

Carey - Bundle: New Perspectives HTML5 and CSS3: Comprehensive, 7th + MindTap Web Design & Development,
1 term (6 months) Printed Access Card | 9781337814270
Click the book image to view a "how to access" video. Link to the course via Canvas.

Purchasing options (there are many) but if you are/will be taking other courses using Cengage books this term or next
optons include

  • 9780357700037 PAC CENGAGE UNLIMITED 4 MONTH (1 term) or
  • 9780357700044 PAC CENGAGE UNLIMITED 12 MONTH or
  • 9780357700051 PAC CENGAGE UNLIMITED 24 MONTH.

w3schools.com (online tutorials)

http://www.w3schools.com/js / JavaScript and HTML DOM Reference
A free online interactive tutorial
Google's Atom: A hackable text editor for the 21st Century
Atom Download / Mac installation - YouTube
Packages enhancing Atom


This course is a hands-on project-based learning experience. Our textbook includes a great many hands on tutorials. Each chapter is has a step by step walkthrough of a project, then several practice tutorials that provide experience implementing the concepts without step by step instruction. We will use Atom as our editor and the Chrome browser to view the results and get feedback via developer tools. Once you have completed a step by step, detailed walkthrough (these are not graded) you should be ready to take the associated short quizzes and complete the graded project assignments for that chapter in Mindtap. The quizzes are all written response questions. The projects require steps to be completed in order and graded in order as you progress through each project. Pasting a complete solution in a project will result in missed points. All assignments are due as assigned in MindTap. To easily see what is due this week use the "Week View" selected from the blue header.

All gradeable assignments for the week are due on Wednesday. No late assignments are accepted. To provide some additional flexibility, I drop your lowest project grade. In order to be successful, you will need to spread out the workload and complete the assignments well in advance of the Wednesday 11:59 pm cutoff times. Graded items include eleven assigned Projects (best 10 count for 80%), eleven assigned Quick Check quizzes (count for 15%), and the final exam (counts for 5%).

Course Grade

90 - 100    A

80 - 89.99 B

70 - 79.99 C

60 - 69.99 D

Academic Expectations for Students

In choosing UNCW, you have become part of our community of scholars. We recognize that the UNCW learning experience is challenging and requires hard work. It also requires a commitment to make time available to do that hard work. The university expects you to make academics your highest priority by dedicating your time and energy to training your mind and acquiring knowledge. Academic success in critical thinking and problem solving prepares you for the changes and challenges you will encounter in the future. Our faculty and academic support resources are readily available as partners in this effort, but the primary responsibility for learning is yours.

Learning Strategies

You are expected to take an active role in your learning in this course. This includes regular performance, submitting work on-time, reading the textbooks, and completing all course requirements. You are encouraged to study with your classmates outside of class. Programming assignments usually require a lot more time than expected, so start early and work some every day.


UNCW practices a zero-tolerance policy for violence and harassment of any kind.  For emergencies contact UNCW CARE at 962-2273, Campus Police at 962-3184 or 962-2222, or Wilmington Police at 911. 

Academic Honor Code

It is the responsibility of every student to uphold and maintain the UNCW Academic Honor Code (see your Student Handbook). You violate the honor code when you represent someone else's work as your own. Programming assignments may be discussed at a conceptual level with other students but details and coding must be your own. Copying and team collaboration is prohibited.

Students with Disabilities

If you have a disability and need reasonable accommodation in this course, you should inform the instructor of this fact in writing within the first week of class or as soon as possible. If you have not already done so, you must register with the Office of Disability Services in Westside Hall (extension 3746) and obtain a copy of your Accommodation Letter. You should then meet with your instructor to make mutually agreeable arrangements based on the recommendations of the Accommodation Letter.

Course Student Learning Outcomes (SLOs)

  1. Understanding of basic computer programming concepts including problem representation, algorithm development, and program implementation.
  2. Problem-solving techniques to describe and understand problems, think through what is known (input), what is unknown (desired output) and what must be done to transform input into desired output (process), leading to geometric problem representation and finally coding.
  3. Students learn computer program elements to enable sequences, selections, iterations and modularizations of operations.
  4. Students learn how to use and manipulate lists of objects.
  5. Students learn to implement algorithms to solve a variety of problems including processing lists, statistical calculations, and modeling systems of interacting objects.
  6. Students learn modular programming and incremental program development.
  7. Students learn how to access data in external files.

255     255     255

CSS Validator / HTML5 Validator

Doodle Pad: drag mouse to draw, right click to change color and optionally save doodle, any key to clear doodle, t top, b bottom