Foundations of Computer Science (Coursera)

Offered by LearnQuest,
Foundations of Computer Science (Coursera)

Welcome to Introduction to Programming: Visual Basic. In the course sequence you will learn to write programs that utilize both procedural and object oriented techniques to solve business problems. In the first course in the sequence we will provide you with a solid foundation in the computer science topics that are important to understand when programming Visual Basic. In courses two through four, we will role up our sleeves and start coding in Visual Basic. In these courses you need to have access to a computer that is running Windows, macOS or Linux with the .NET 5 installed. We will show you how to install .NET 5.

Class Deals by MOOC List - Click here and see Coursera's Active Discounts, Deals, and Promo Codes.

What You Will Learn

  • Develop computer programs that utilize classes and objects to solve business and mathematical problems
  • Develop computer programs that utilize collections of variables to solve business and mathematical problems
  • Model Object-Oriented Programs with UML class diagrams

Course 1 of 4 in the Introduction to Computer Programming with Visual Basic Specialization.

Syllabus

WEEK 1
Specialization: Introduction to Computer Programming Visual Basic
Welcome to Foundations of Computer Science, the first course of the Key Technologies of Visual Basic Programming specialization. By enrolling in this course, you are taking the first step to kick start your career in computer programming.
Algorithms, History of Computing and Algorithm Efficiency
In the first week of the course, we will learn about algorithms and talk about problem solving using algorithms. We will also learn about some historical events in computation that lead us to where we are today. By the end of this module, you will know how to identify the different types of data analysis and their use cases. So, let's get started!

WEEK 2
Computer Hardware and Organization
In the second module of this course, we will learn how computers utilize hardware to store data and execute instructions to carry out our algorithms. We will explore binary number systems, Boolean logic, computer circuits and control circuits. We will look at the primary machine architecture that has been used in all modern machines.

WEEK 3
Computer Networks, Cloud Computing and Information Security
In the third module of this course, we will learn how connecting computers offers opportunities and challenges. We will discuss how computer communicate with each other and ways we can protect the computers while sending communication.

WEEK 4
Systems Software, Databases and Automation
In the fourth module of this course, we will touch on some important remaining topics required to understand the place of the software we develop. We will dive into the low-level languages used in computing including assembler and machine language. We then will look at databases as most applications need to store data. Lastly, we will look at how automation and artificial intelligence will affect the programs we develop

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Teaching Impacts of Technology: Fundamentals (Coursera) Coursera
University of California, San Diego

Teaching Impacts of Technology: Fundamentals (Coursera)

In this course you’ll focus on the fundamentals of teaching the impacts of technology, starting by exploring how you interact with and benefit from technology in a typical 24 hour period, such as the desire for instant food and entertainment. This will be done through a series of paired teaching sections, exploring a specific “Impact of Computing” in your typical day and the “Technologies and Computing Concepts” that enable that impact, all at a K12-appropriate level.

Jun 17th 2026
4 Weeks
An Introduction to Interactive Programming in Python (Part 2) (Coursera) Coursera
Rice University

An Introduction to Interactive Programming in Python (Part 2) (Coursera)

This two-part course is designed to help students with very little or no computing background learn the basics of building simple interactive applications. Our language of choice, Python, is an easy-to learn, high-level computer language that is used in many of the computational courses offered on Coursera. To make learning Python easy, we have developed a new browser-based programming environment that makes developing interactive applications in Python simple.

Jun 15th 2026
4 Weeks
Teaching Impacts of Technology: Data Collection, Use, and Privacy (Coursera) Coursera
University of California, San Diego

Teaching Impacts of Technology: Data Collection, Use, and Privacy (Coursera)

In this course you’ll focus on how constant data collection and big data analysis have impacted us, exploring the interplay between using your data and protecting it, as well as thinking about what it could do for you in the future. This will be done through a series of paired teaching sections, exploring a specific “Impact of Computing” in your typical day and the “Technologies and Computing Concepts” that enable that impact, all at a K12-appropriate level.

Jun 17th 2026
4 Weeks
Learn to Teach Java: Sequences, Primitive Types and Using Objects (Coursera) Coursera
University of California, San Diego

Learn to Teach Java: Sequences, Primitive Types and Using Objects (Coursera)

Get started with the basics of Java, and prepare to teach others using the free, online interactive CS Awesome textbook. In this course for teachers we'll guide you both in learning Java concepts and skills but also in how to effectively teach those to your students. This course will support you in teaching the Advanced Placement Computer Science A course or a similar introductory university-level programming course.

Jun 17th 2026
4 Weeks
Unordered Data Structures (Coursera) Coursera
University of Illinois at Urbana-Champaign

Unordered Data Structures (Coursera)

The Unordered Data Structures course covers the data structures and algorithms needed to implement hash tables, disjoint sets and graphs. These fundamental data structures are useful for unordered data. For example, a hash table provides immediate access to data indexed by an arbitrary key value, that could be a number (such as a memory address for cached memory), a URL (such as for a web cache) or a dictionary.

Jun 17th 2026
4 Weeks
人群与网络 (Coursera) Coursera
Peking University

人群与网络 (Coursera)

本课程是北京大学开设的一门在线跨学科选修课程,主要面向信息技术、社会学和经济学等专业的本科生。课程内容涉及用计算思维的方法讨论社会学和经济学的一些经典问题。学习运用计算思维分析社会学、经济学问题的方法,加深对某些生活现象的理解,体会计算与社会科学的互动。

Jun 15th 2026
5-12 Weeks
Learn to Teach Java: Boolean Expressions, If Statements, and Iteration (Coursera) Coursera
University of California, San Diego

Learn to Teach Java: Boolean Expressions, If Statements, and Iteration (Coursera)

Learn to program with Boolean Expressions, If Statement, and For and While Loops in Java, and prepare to teach others using the free, online interactive CS Awesome textbook. In this course for teachers we'll guide you both in learning Java concepts and skills but also in how to effectively teach those to your students.

Jun 17th 2026
4 Weeks
计算导论与C语言基础 (Coursera) Coursera
Peking University

计算导论与C语言基础 (Coursera)

你有没有好奇过:计算机为什么能够进行计算?计算机程序是怎样运行的?你是否想知道:计算机未来可能的发展趋势有哪些?程序是如何编写出来的?如何学习程序设计语言?程序设计语言的基本成分有哪些?《计算导论》这门课将帮助你解决这些疑惑。

Jun 15th 2026
5-12 Weeks
The Structured Query Language (SQL) (Coursera) Coursera
University of Colorado Boulder

The Structured Query Language (SQL) (Coursera)

In this course you will learn all about the Structured Query Language ("SQL".) We will review the origins of the language and its conceptual foundations. But primarily, we will focus on learning all the standard SQL commands, their syntax, and how to use these commands to conduct analysis of the data within a relational database. Our scope includes not only the SELECT statement for retrieving data and creating analytical reports, but also includes the DDL ("Data Definition Language") and DML ("Data Manipulation Language") commands necessary to create and maintain database objects.

Jun 16th 2026
5-12 Weeks