Course Syllabus
Contact Information
Course Details
For a list of course activities, scroll to the bottom of this page.
Course Format
This 8-week course is multi-modal with asynchronous and synchronous work and meetings. You will have asynchronous online work using Canvas. We have four synchronous meetings, or Live Sessions, for an hour and a half using Zoom. Live Sessions are 7:00 - 8:30 pm (Central Time) on Tuesdays in weeks 1, 3, 5, and 7.
Assumed Prior Knowledge
Some programming experience in a high-level language.
Course Materials
- Recorded lectures
- The course has recorded lectures and demonstrations on video which explain the process and demonstrate the specific steps of computer programming.
Program Learning Outcomes (PLO)
- Apply critical thinking and data-driven analysis to dissect complex computing challenges and devise effective computing solutions.
- Assess and adjust to current and evolving technological trends to create innovative solutions and optimize software development processes.
- Utilize software design and development principles and methodologies to create efficient, maintainable, scalable and high-quality applications.
- Communicate technical concepts clearly and concisely, orally and in writing to technical and non-technical audiences.
Course Learning Outcomes (CLO) Alignment
| CLO | Description | PLO |
|---|---|---|
| A | Describe how data are represented, manipulated, and stored in a computer. | PLO-1 |
| B | Use the fundamental concepts of data types, structured programming, algorithmic design, and user interface design. | PLO-1 |
| C | Demonstrate a fundamental understanding of various software development methodologies. | PLO-2 |
| D | Demonstrate via projects appropriate design, coding, testing, and documenting of computer programs that implement project specifications and requirements. | PLO-1 |
| E | Apply computer programming concepts to new problems or situations. | PLO-1 |
Grades
Breakdown
| Activity | Description | Percentage |
|---|---|---|
|
Homework Assignments |
Assignments to practice programming skills, due throughout the week: Tuesdays, Thursdays & Sundays | 80% |
|
Programming Discussion Board |
Weekly discussion board | 10% |
| Final Project | A final assignment to apply all the learned skills to create a software product of one's choosing |
10% |
| Total | 100% |
Scale
| Percentage | Letter Grade |
|---|---|
| 90–100% | A |
| 80–89% | B |
| 70–79% | C |
| 60–69% | D |
| Below 60% | F |
Course Components
Programming Practice/Homework/Assignments
Learning to program computer software, like many learning activities, requires practice and repetition. Each week a new module of learning objectives and topics will be available along with a handful of programming homework assignments which reinforce the modules' topics by asking students to put the knowledge into practice. Students are highly encouraged to plan on working on these assignments a few times throughout the week (rather than wait and complete them all at once at the end of the week) in order to grow their depth of knowledge on the course topics by regularly practicing programming skills. All five Course Learning Outcomes will be served by these assignments, especially and most often D and E, with objectives A, B, and C being served sporadically and not necessarily by each and every assignment.
Weekly Discussion Board
Each of the eight weeks there will be a discussion board topic to reflect on and post a brief response. These will be participation grades, there will be no "right vs. wrong" answers, just your subjective thoughts on either alternatives taught that week in lecture or contrasting various techniques learned.
Live Session
Although online courses like this one are primarily meant to allow students to work at their own pace and schedule, learning new topics such as programming does require getting some help from time to time from others. Every other week a live session hosted on Zoom will be available in which the professor can synchronously interact with students to help explain concepts, clarify misunderstanding, or answer any questions. Although help from the professor is also available asynchronously via e-mail the live sessions will provide an opportunity for interactive and a less formal form of communication, as well as, occasionally, an opportunity to delve deeper into topics or concepts beyond the provided lecture material and recordings to help students get a head-start on future courses and material.
Final Project
At the conclusion of the programming homework assignments due throughout the course a final, more comprehensive programming assignment / project will be required of each student in which they put together all (or, at least, many) of the concepts learned throughout the course into a software development project to be completed individually. This culmination of learned concepts put into practice will provide students with some creative flexibility to begin thinking of how their newly learned skills can be used to create exciting and innovative software products as a future career.
Course Policies
Communication
Please contact me through Canvas or by email. I usually respond within 24 hours M-F. During the weekend, response time is generally within 48 hours.
Feedback
You will receive feedback and grades on homework assignments within 24 - 36 hours.
Late Policy
Due dates are set in order to spread out assignments and keep students actively learning and practices programming skills throughout each week and the entire course. In general, there is no late penalty for completing assignments a few days late, but regularly doing so is highly discouraged as it prevent students from learning and maintaining the skills being built up to learn computer programming.
Plagiarism
The work on the assignments, in class or out, is assumed to be composed or synthesized entirely by the student (not simply copied from other sources). You should use only own work product, ingenuity, and effort to write the code to complete the assignments. Your individual completion of this class is to be solely based on your individual effort at writing code in the assignments.
For more information about plagiarism, watch this video and then take this short course offered by University Libraries.
University Academic Policies and Student Support
Access the University Academic Policies Document.