We may earn an affiliate commission when you visit our partners.
Course image
Aspen Olmsted

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.

Enroll now

What's inside

Syllabus

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.
Read more
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!
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.
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.
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

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Develops strong foundational knowledge for Visual Basic programming
Provides a comprehensive introduction to computer science fundamentals
Introduces essential computer hardware and organization concepts
Covers key networking, cloud computing, and information security topics
Provides a solid foundation for systems software, databases, and automation
Taught by experienced industry experts with a proven track record

Save this course

Save Foundations of Computer Science to your list so you can find it easily later:
Save

Reviews summary

Computer science basics well received

Learners say Foundations of Computer Science is a well-received course that provides a great and easy to follow intro to computer science. Students also say the instructor is informative and easy to listen to, explaining concepts clearly.
Many positive reviews
"This course was easy to follow."
"It is very nice and the easy way they thaught us"
"E​xcellent pace & materials. A true value added!"
"Easy to follow and extremely informative! Great lessons!"
"Excellent course and instructor had explained the concepts very clearly. "
"G​ood overview. Instructor was very informative and was very easy to listen to."
"Excellent course to review some rusty knowledge."
"This Course has little we may see but very reach insight course."
Some students noted errors or typos
"The course could have been decent because it gives a lot of great information, but there were far too many typos to take it seriously."
"It seemed like almost every page had at least one spelling mistake."
"Plus, one quiz question gave credit for the wrong answer. This gives me the impression that either the instructor or LearnQuest themselves don't care about quality since none of those issues should exist in the final product with proper proofreading."
"There are Quiz problems with the answers being wrong in two place, but more importantly the video on OUtput which shows you how to actually RUN VB code is broken and points to the install video."
Some materials were from external sources
"The reading materials are taken from wikipedia."
"I doubt the veracity of the recommended articles."
"Good course for people completely new to computer science wanting to have an overview."
"I only take 1 star off, because a lot of the external resources provided were just wikipedia articles which seems very lazy."

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Foundations of Computer Science with these activities:
Read 'Computer Science Illuminated'
This classic textbook will provide a broad overview of computer science fundamentals to prepare you for the more technical topics covered in this course.
Show steps
  • Read the assigned chapters.
  • Complete the end-of-chapter exercises.
Solve Algorithm Efficiency Problems
Understanding algorithm efficiency is the cornerstone of performance optimization in computer science.
Browse courses on Algorithm Efficiency
Show steps
  • Find a tutorial on algorithm efficiency.
  • Follow the tutorial and complete the exercises.
  • Apply the concepts to real-world scenarios.
Work through Binary Number Systems
Mastering binary number systems is essential for understanding the low-level operations of computers.
Browse courses on Number Systems
Show steps
  • Review the concept of binary numbers.
  • Convert decimal numbers to binary numbers.
  • Convert binary numbers to decimal numbers.
  • Perform basic arithmetic operations (addition, subtraction) on binary numbers.
Four other activities
Expand to see all activities and additional details
Show all seven activities
Practice Boolean Logic Simplification
Boolean logic is a foundation in computer science. Practicing simplification will enhance your problem-solving skills.
Browse courses on Boolean Logic
Show steps
  • Review the basics of Boolean logic.
  • Use truth tables to simplify Boolean expressions.
  • Apply Boolean algebra laws to simplify expressions.
Write a Summary of Computer Hardware Components
Creating a written summary of computer hardware components will help you grasp their functionality and interconnections.
Browse courses on Computer Hardware
Show steps
  • Identify the key components of a computer system.
  • Research each component's purpose and functionality.
  • Organize and write a summary that explains how the components work together.
Watch a Tutorial on Cloud Computing Security
Cloud computing security practices are essential for protecting data and systems in the cloud.
Browse courses on Cloud Computing
Show steps
  • Find a tutorial on cloud computing security.
  • Watch the tutorial and take notes.
  • Apply the concepts to a real-world cloud computing scenario.
Develop a Data Flow Diagram for a Business Process
Creating a data flow diagram will help you visualize and understand the flow of data within a business process.
Browse courses on Data Flow Diagrams
Show steps
  • Identify the boundaries of the business process.
  • Identify and analyze the data inputs and outputs.
  • Draw a data flow diagram using appropriate symbols.

Career center

Learners who complete Foundations of Computer Science will develop knowledge and skills that may be useful to these careers:
Software Developer
A Software Developer designs, develops, and maintains software solutions to meet the needs of organizations and individuals. This course provides a solid foundation in computer science topics that are essential for Software Developers, such as algorithms, computer hardware and organization, computer networks, and databases. By taking this course, you will gain a comprehensive understanding of the principles and practices of software development, which will help you succeed in this role.
Computer Programmer
A Computer Programmer writes and tests code to create software applications and systems. This course provides a strong foundation in the fundamentals of computer science, which is essential for Computer Programmers. By taking this course, you will learn about algorithms, data structures, computer architecture, and operating systems, which will help you develop the skills needed to succeed in this role.
Web Developer
A Web Developer designs and develops websites and web applications. This course provides a solid foundation in computer science principles, which are essential for Web Developers. By taking this course, you will gain a deep understanding of algorithms, data structures, computer networks, and databases, which will enable you to build robust and reliable web applications.
Database Administrator
A Database Administrator designs, implements, and maintains databases to store and manage data for organizations. This course provides a strong foundation in database systems, which are essential for Database Administrators. By taking this course, you will learn about data modeling, database design, and database administration, which will help you succeed in this role.
IT Consultant
An IT Consultant provides advice and guidance to organizations on how to use technology to meet their business needs. This course provides a broad overview of computer science and information technology, which are essential for IT Consultants. By taking this course, you will gain a deep understanding of the principles and practices of IT, which will enable you to provide valuable insights to organizations.
Computer Systems Analyst
A Computer Systems Analyst designs, implements, and maintains computer systems to meet the needs of organizations. This course provides a solid foundation in computer science and systems analysis, which are essential for Computer Systems Analysts. By taking this course, you will learn about systems analysis, systems design, and systems implementation, which will help you succeed in this role.
Information Security Analyst
An Information Security Analyst protects an organization's computer systems and data from unauthorized access, use, disclosure, disruption, modification, or destruction. This course provides a strong foundation in information security, which is essential for Information Security Analysts. By taking this course, you will learn about security principles, security technologies, and security management, which will help you succeed in this role.
Network Administrator
A Network Administrator designs, implements, and maintains computer networks to meet the needs of organizations. This course provides a solid foundation in computer networks, which are essential for Network Administrators. By taking this course, you will learn about network design, network implementation, and network management, which will help you succeed in this role.
Data Scientist
A Data Scientist analyzes data to extract insights and knowledge that can be used to solve business problems. This course provides a foundation in data analysis and machine learning, which are essential for Data Scientists. By taking this course, you will learn about data analysis techniques, machine learning algorithms, and data visualization, which will help you succeed in this role.
Machine Learning Engineer
A Machine Learning Engineer designs, develops, and deploys machine learning models to solve business problems. This course provides a foundation in machine learning, which is essential for Machine Learning Engineers. By taking this course, you will learn about machine learning algorithms, machine learning models, and machine learning deployment, which will help you succeed in this role.
Software Architect
A Software Architect designs and develops the overall architecture of software systems. This course provides a foundation in software design, which is essential for Software Architects. By taking this course, you will learn about software design principles, software design patterns, and software design methodologies, which will help you succeed in this role.
Computer Hardware Engineer
A Computer Hardware Engineer designs, develops, and maintains computer hardware. This course provides a foundation in computer hardware, which is essential for Computer Hardware Engineers. By taking this course, you will learn about computer hardware components, computer hardware design, and computer hardware maintenance, which will help you succeed in this role.
Computer Network Architect
A Computer Network Architect designs, develops, and maintains computer networks. This course provides a foundation in computer networks, which is essential for Computer Network Architects. By taking this course, you will learn about network design, network implementation, and network management, which will help you succeed in this role.
Cloud Architect
A Cloud Architect designs, develops, and manages cloud computing solutions. This course provides a foundation in cloud computing, which is essential for Cloud Architects. By taking this course, you will learn about cloud computing concepts, cloud computing services, and cloud computing architectures, which will help you succeed in this role.
Data Engineer
A Data Engineer designs, develops, and manages data pipelines to move data between different systems. This course provides a foundation in data engineering, which is essential for Data Engineers. By taking this course, you will learn about data engineering concepts, data engineering tools, and data engineering best practices, which will help you succeed in this role.

Reading list

We've selected 14 books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Foundations of Computer Science.
Provides a strong foundation in data structures and algorithms, essential for understanding the implementation details of computer science concepts.
Covers the fundamental principles of computer architecture, providing a comprehensive overview of hardware and its interaction with software.
Provides a rigorous treatment of algorithms, covering topics such as sorting, searching, and graph algorithms, supplementing the course's introduction to algorithms.
Covers the fundamentals of computer organization and design, providing a deeper understanding of the hardware-software interface, complementing the course's module on computer hardware.
Introduces the concepts of computer networks, including network protocols, routing, and network security, complementing the course's coverage of computer networks.
Provides a comprehensive overview of database systems, covering topics such as data modeling, query processing, and transaction management, expanding on the course's introduction to databases.
Provides a comprehensive overview of operating systems, covering topics such as process management, memory management, and file systems, expanding on the course's discussion of systems software.
Covers the principles and techniques of compiler implementation, providing insights into the process of translating high-level code into machine code.
Provides a concise and accessible overview of the fundamental concepts of computer science, offering a high-level understanding of the field.
Provides a catalog of reusable design patterns for object-oriented software development, enhancing the course's coverage of object-oriented programming.
Provides guidelines and best practices for writing clean and maintainable code, complementing the course's emphasis on software quality.
Offers insights into the challenges and complexities of software development, providing valuable lessons for managing software projects.
Examines the contrasting development models of proprietary and open-source software, offering insights into the dynamics of software ecosystems.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Here are nine courses similar to Foundations of Computer Science.
IT Fundamentals for Business Professionals: Programming
Visual Recognition & Understanding
Introduction to Computer Science and Programming Using...
Programming Pedagogy in Primary Schools: Developing...
Teaching Coding in Grades 5-8 with Scratch Encore
Excel/VBA for Creative Problem Solving, Part 1
Introduction to Visual Basic Programming
Testing .NET Code in Visual Studio 2019
AP® Psychology - Course 2: How the Brain Works
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser