Sign up for the introductory course to develop problem-solving skills and logical thinking abilities that are highly transferable to various fields and careers in today's digital age. Learning programming can enhance your creativity and foster innovation by teaching you how to design & build your own digital solutions.

How to get the most out of Introduction to Computer Science, Part One with Dan Goddu.:

  • First, read the course materials below before the first class meeting.

  • Then have a notebook ready and available for class notes each live session.

  • Read assignments before class meetings

  • To begin the course, click on the "Recorded Lecture" for class 1, and watch Professor Morrow’s lecture for Class One.

  • Look over the assignments, and then come to the live Q&A with your questions.

  • When a week has 1 class, it also has 1 recorded lecture and 1 live Q&A session, and when a week has 2 classes it will have 2 recorded lectures and Q&A sessions.

  • Do the assignments, quizzes, and any extra work assigned for that week.

  • Once the course is completed to the parent's and professor’s satisfaction, there is a Certificate of Completion at the end to be filled in for your records.

Special Notes: This is a two-part course. Students are expected to also sign up for Part Two offered in the spring semester. 

Total Classes: 13, plus pre-recorded lessons

Duration: 60 minutes per live, interactive class. Pre-recorded lessons are 20-30 minutes.

Prerequisite: Students should have a general familiarity with computers – the ability to open applications, use menu-driven commands, and type using the keyboard – so that the emphasis of time can be placed on specific programming lessons.

Suggested Grade Level: 7th to 12th grade

Suggested Credit: One full semester Computer Science

Instructor: Dan Goddu

Instructor Email: dgoddu.hsc@gmail.com

Course Description: This is part one of an entry-level course, which is designed to expose students to what computer scientists do daily. Students will build games (both 2D and 3D), illustrate stories, and create art, animations, and music during their exploration. The tools we will use have similar properties to building block toys used by children to construct model-sized homes, stores, and towns. More advanced students will have the option of learning Script-based programming tools. In addition to learning to code, students will learn about computing careers, the history of computer science, hardware and software design, and discovering ways for technology to serve people and communities. By the end of the class, students will be able to discern whether further studies in this field are their forte.

Course outline (week by week):

  • Classes 1: Introduction to Computer Science

  • Classes 2: Variables

  • Classes 3: Order of Operations

  • Classes 4: Debugging and Graphics

  • Classes 5: Modules

  • Classes 6: Functions

  • Classes 7: Selection

  • Classes 8: Iteration

  • Classes 9: Strings

  • Classes 10: Lists

  • Class 11: Recursion

  • Class 12: Final Project

  • Class 13: Final Project

Course Materials: 

All materials for the course (ebooks, assignments, lessons, and software) are available for FREE on the web and were developed specifically to help learners of computer science. You can access these tools as follows:

Block Programming - Snap (web based) or Snap Offline (offline);

Python Programming - How to Think Like A Computer Scientist by Runestone Academy ($10 donation to Runestone Academy)

Java Programming - Open Processing (web based) or Processing (offline);

Access to a PC or MAC computer is required (the downloadable software does not work well on Chromebooks or tablets).

Homework: Assignments will have a Catholic theme to them such as: create a video adventure game that illustrates a story from the Old Testament, create a quiz game that prepares someone studying for confirmation, research computer science projects at a Catholic University and report what you find, investigate how your Diocese/Church/Priest uses technology tools, completing programming exercises, and online quizzes which provide immediate scoring feedback. In this course, students have an option to share their programs with fellow students either via a short in-class demonstration, by uploading them to the tool’s website, or by creating a screen capture video. All assignments are given and graded by the instructor. Students will also collaborate with fellow students and mentor them when needed to reinforce their knowledge by helping others. Students can expect 2 to 5 hours of time per week (outside of class time) dedicated to homework. Regular feedback will be provided to the students and their parents to ensure that all are aware of the progress being made throughout the course.