Welcome to CS101: Introduction to Programming I

Specific information about this course and its requirements can be found below. For more general information about taking Saylor Academy courses, including information about Community and Academic Codes of Conduct, please read the Student Handbook.

Course Description

Examine the fundamentals of computers and how they are used to provide useful services.

Course Introduction

[p]The goal of this course is to teach you to think like a computer scientist. This way of thinking combines some of the best features of mathematics, engineering, natural science, and philosophy. Like mathematicians, computer scientists use formal languages to denote ideas – specifically, computations. Like engineers, they design things, assemble components into systems, and evaluate trade-offs among alternatives. Like scientists, they observe the behavior of complex systems, form hypotheses, and test predictions. Like philosophers, they create logical constructs that can be carried out by a machine. This is not to deny the value of the arts so that non-practitioners can understand and employ the resulting systems.[/p] [p]An important skill for a computer scientist is problem-solving. It involves the ability to detect problems, think creatively about solutions, and express solutions clearly and accurately. As it turns out, the process of learning to program computers is an excellent opportunity to develop and apply problem-solving skills. On one level, you will be learning to write Java programs, a useful skill by itself. On the other hand, you will use programming as a means to an end, that end being the creation of something useful to society.[/p]

This course includes the following units:

Unit 1: Computer Programming. Unit 2: Variables and Operators. Unit 3: Input and Output. Unit 4: Methods and Testing. Unit 5: Conditionals and Logic. Unit 6: Loops and Strings. Unit 7: Arrays and References. Unit 8: Recursive Methods

Course Learning Outcomes

Upon successful completion of this course, you will be able to:

[1] Explain what computers are and what they do; [2] Compare software and computers; [3] Express human logic in computer programming syntax; [4] Describe various variable types and their differences; [5] Choose means of performing operations on variables; [6] Recognize and repair errors in syntax and logic; [7] Explain the ways to get data into and out of a computer; [8] Demonstrate Java's basic services; [9] Dissect computer programs to reveal subtle errors; [10] Convert blocks of oft-used code into reusable methods; [11] State the difference between

Throughout this course, you will also see learning outcomes in each unit. You can use those learning outcomes to help organize your studies and gauge your progress.

Course Materials

This course's primary learning materials are articles, lectures, and videos.

All course materials are free to access and can be found in each unit of the course. Pay close attention to the notes that accompany these course materials, as they will tell you what to focus on in each resource and will help you understand how the learning materials fit into the course as a whole. You can also see a list of all the learning materials in this course at this link: Resources.

Evaluation and Minimum Passing Score

Only the final examination is considered when awarding you a grade for this course. To pass this course, you will need to earn 70% or higher on the final exam. The exam will be password-protected and requires a proctor.

Your score on the exam will be calculated as soon as you complete it. There is a 14-day waiting period between each attempt. You may only attempt the final exam a maximum of three times. Be sure to study in between each attempt! If you do not pass the exam after three attempts, you will not complete this course.

There is also a practice exam that you may take as many times as you want to help you prepare for the final exam. The course also contains end-of-unit assessments in this course. The end-of-unit assessments are designed to help you study and do not factor into your final course grade. You can take these as many times as you want to until you understand the concepts and material covered. You can see all of these assessments at this link: Quizzes.

Continuing Education Credits

The certificate earned by passing this self-paced course displays not only the program hours you completed, but also continuing education credits (CEUs) for documenting successful completion of courses that are designed to improve the knowledge and skills of working adults. Many industries value CEUs, and now your certificate reflects them clearly, and they may be used to support career advancement or to meet professional licensing standards. This course contains 2.6 CEUs.

Tips for Success

CS101: Introduction to Programming I is a self-paced course, meaning you can decide when to start and complete the course. We estimate the "average" student will take hours to complete. We recommend studying at a comfortable pace and scheduling your study time in advance.

Learning new material can be challenging, so here are a few study strategies to help you succeed:

  • Take notes on terms, practices, and theories. This helps you understand each concept in context and provides a refresher for later study.
  • Test yourself on what you remember and how well you understand the concepts. Reflecting on what you've learned improves long-term memory retention.

Technical Requirements

This course is delivered entirely online. You will need access to a computer or web-capable mobile device and consistent internet access to view or download resources and complete auto-graded assessments and the final exam.

To access the full course, including assessments and the final exam, log into your Saylor Academy account and enroll in the course. If you don’t have an account, you can create one for free here. Note that tracking progress and taking assessments require login.

For more details and guidance, please review our complete Technical Requirements and our student Help Center.


Optional Saylor Academy Mobile App

You can access all course features directly from your mobile browser, but if you have limited internet connectivity, the Saylor Academy mobile app provides an option to download course content for offline use. The app is available for iOS and Android devices.

Fees

This course is entirely free to enroll in and access. All course materials, including textbooks, videos, webpages, and activities, are available at no charge. This course also contains a free final exam and course completion certificate.

Last modified: Monday, 4 August 2025, 3:32 PM