Computer Science

Computer Science

Learn how to control computers in various ways and become well-equipped with the fundamentals of computer programming through this online training course. This course covers an array of important constructs of computer science with a hands on approach using C as the chosen programming language for our practical sessions.

Sign up to get immediate access to all of your course content.



All levels

All levels



Recognized by -


Your course


  • Understand how computers manipulate data to produce information
  • Develop the skills to read a block of code and understand it without having to execute it first
  • Design meaningful and efficient algorithms that can be used to solve everyday problems
  • Recognise errors in blocks of code and how to correct them
  • Design efficient programs when presented with a problem
  • Learn how to create programs using C, a popular high-level programming language

16 Weeks


32 Lessons

Plus toolkits

4 Modules





Of your course.

module 1

Professional Diploma in Computer science



  1. Enter computer scienceYour first lesson in Computer Science will leave you appreciating the relationship between the real world and computers. You will understand key terms, the relationship between math and computing, notable progressions and why computer science is such a great field to take up!
  2. Processes, procedures, computersIn this lesson we will learn how a computer processes information and the procedures it goes through to convert that information into something a human can understand. We will also start to dive in to different operating systems, their structure and characteristics. By the end of this lesson you will know exactly where programming falls into all of this.
  3. Measuring Computer Power

    Do you know how the speed of a computer is measured? Well after this lesson, you will! We are going to go through computer architecture and the structure of the Complex Instruction Computing Set (CISC) before moving on to binary questions and discussing where computers can fall short.

  4. Language Construction

    Language construction is instrumental in understanding computers, and this lesson breaks down how computers compare to the natural human language. You will understand the binary system and how it is used in instructing computers, and we will finish off with transducers which enable computers to respond to physical phenomena.

  5. Programming Languages

    A quick peek at the tools we’ll be using for the rest of the course - programming languages. We’ve explained that computers think in 0s and 1s, and that this format is not the easiest for humans to use or follow. This is where programming languages come in. It bridges the gap between machine language and human language.

  6. Problem Definition

    A look at one of the main concepts in computer science; problem solving. All the amazing apps and systems in the world start their lives as simple problems in a statement. It is the job of a computer scientist to break this problem down to its most basic components, then describe a solution for it.

  7. Formulating Pseudocode

    in this lesson, we look at the path you follow when formulating a solution. we look at one of the most popular techniques used in solving problems, pseudocode. we look at a few examples to get you started.

  8. Algorithms

    Discover the science of algorithms and their monumental impact on our daily lives.

module 2

Intermediate Diploma in Computer science



  1. C Language (intermediate-computer-science-20)

    Module 1 has laid your foundation, and now you are ready to look at specific programming languages in detail. In this lesson, we step into the world of C programming and discover its roots, characteristics, and uses.

  2. Environment Setup (intermediate-computer-science-20)

    Today's lesson will see you installing a Development Environment which is where we create our code, and the various functions and layouts of this environment will be explored.

  3. Program structure

    Develop an understanding of the layout of a typical program. understand how a program should be structured concerning previously learnt computational procedures.

  4. C Syntax

    Discover how the c language is spoken, plus the rules and laws that govern code.

  5. Data types

    Recognise data types and how they are used in programs to achieve various results.

  6. Variables and constants

    Develop an understanding of variables, and how they are used to change the behaviour of your code at runtime.

  7. Basic input and output

    Building on our knowledge of how algorithms require input and produce output, we look at the practical side of things as we try it out using C.

  8. Operators

    Develop an understanding of operators in programs and how they work in conjunction with variables, constants and other program components.

module 3

Advanced Diploma in Computer science



  1. Decision Making

    Our first lesson in Module 3 starts off with decision making. Specifically, we will discover how computers deal with options - make decisions - when presented with a set of choices as input.

  2. Loops and Functions

    Nobody likes repetitive tasks, which is why we have computers to deal with them! Today we will explore the different methods of handling repetitive operations and routines.

  3. Storage Classes

    By the end of this lesson, you will have learnt how to manipulate variables to add various properties, which aid a computer in memory management. This is one of the key features of C that allow you to manage the attributes that your variables carry

  4. Arrays

    When it comes to large or organised data sets, arrays need to be used. You'll learn exactly how these are used in this lesson.

  5. Pointers

    In computer science, a pointer is an object in many programming languages that stores a memory address. You will discover the structure and functions of these, and learn how to apply them when manipulating data.

  6. Type Casting

    We get into the more complex aspects of variables in this lesson, having covered variables in the previous modules. Today you will learn how to change variable types at runtime.

  7. Preprocessors, Header Files and Libraries

    In every industry and even in our daily lives, we want to streamline what we do. For computers, an aspect of this is preprocessor directives and header files, which streamline code and shorten it. we expand on the previous lesson topic and dive into libraries, using them to deal with complex tasks without having to code the nitty gritties yourself. You will know how this works by the end of the lesson!

  8. Memory management

    If you want your code to run faster, you need to understand memory management. Memory management helps your code become more efficient, and therefore execute more quickly. Speed is everything!

module 4

Proficient Diploma in Computer science



  1. Variable Arguments

    If you haven't figured it out already, variables are a huge topic in programming! Now, we are adding arguments to the mix. An argument is another factor in customising a program. when using arguments, it is not always that the number of arguments is predictable. learn how to overcome this problem. 

  2. The Software Development Lifecycle

    Now that you have learnt how to write code, you need to know how to efficiently manage the software development process. you will learn how to manage your time and spend it on things that actually matter to the end product.

  3. Command Line Arguments

    Learn how to pass arguments to your program at runtime rather than hard coding them into your code. this is important as one other method of driving the application.

  4. File Input and Output

    Like in the real world, file management makes our lives much easier. Today we look at file input and output - learn how to save your work to a file and retrieve information from it.

  5. Debugging

    Debugging is about detecting and removing existing and potential errors (bugs) in a software code that can cause it to behave unexpectedly or crash. You'll learn how to read this code and understand it enough to pinpoint and rectify errors.

  6. Error handling

    Even the most seasoned programmer encounters errors - if we expected everything to be perfect from the beginning, nothing would ever get released. Explore how to handle errors that are encountered during runtime in order to minimise program crashes.

  7. Scaling Up

    Continuing your knowledge in the C programming language, we are looking at the many industrial applications you could come across. 

  8. Course Summary and Wrapping Up

    We wrap up your course in Computer Science by looking at the Dos and Don'ts of C, as well as its limitations. We will then recap the most important takeaways in this course, preparing you for the next step in your journey!

What makes us

Stand out


In-house experts

We don't outsource our content. Every course we make is our own and must meet our standards.


Learn more about us.


Shareable certificate

Earn your globally recognised certificate and add it to your LinkedIn profile.


Learn about our certificates.


Careers service

Use what you've learnt to advance your career with our in-house careers service.


Check out relevant jobs.