10 Best Computer Science Courses to Take in 2022

Elham Nazif

Are you looking for the best introductions to computer science? I’ve ranked the top courses available online, following a robust methodology. And they're all free to audit. You can read about it below.

But if you’re in a hurry, here are my top picks. Click on one to skip to the course details:

What is Computer Science?

The definition of computer science is almost as broad as the definition of physics. So, to say that computer science is the study of computers and computing concepts is just as 'useful' as saying that physics is the study of nature and its phenomena.

Instead, I’ll tell you the main subfields of computer science that most universities include in their syllabus.

  • Computer architecture and organization naïvely ponders: ‘How do I design a computer?’
  • Programming steps in and questions: ‘But how will the computer understand the human?’
  • Operating systems interjects: ‘Hold on, how should the human interact with the computer?’
  • Data structures and algorithms chirps in: ‘After you've figured that out, how do we store and compute data efficiently?’
  • Networking and communication waits politely before inquiring: ‘So that’s all cool, but how can we make computers talk to each other?’

You get the gist. I’m sure you’ve had one of these intriguing thoughts pop up in your mind before. Luckily, these are the questions that computer science tries to answer.

By studying computer science, you can become a better programmer. Just as a veterinarian is likely to understand animals better than the average pet owner, by studying computer science, you can get a better grasp of the features, abilities, and limitations of these awesome code-running machines that we call ‘computers’.

Course Ranking Methodology

I followed a three-step process to build this ranking:

First , let me introduce myself. I’m part of Class Central , the leading search engine for online courses. I ( @elham ) built this ranking in collaboration with my friend and colleague @manoel , following the same approach we used with some success in our previous rankings of the best Python courses and best machine learning courses . At this point, I’d say it’s a pretty robust method.

We started building this ranking by looking at our database of 50K+ online courses . We were interested in things like ratings, reviews, and course bookmarks. This allowed us to make an initial selection. So this phase was purely data-driven.

This tentative first step rapidly helped surface some of the best options available out there. Word of mouth is very effective in online learning. Good courses get noticed. And the very best gather a lot of attention, and raving reviews.

That said, reviews don’t always tell the whole story. In fact, some courses are so good at grabbing the spotlight early on that other excellent resources can go unnoticed. So the next step was to bring our personal knowledge of online education into the mix.

Second , we used our experience as online learners to evaluate each of our initial picks.

We both come from computer science backgrounds and are prolific online learners, having completed about 45 MOOCs between us. Additionally, Manoel has an online bachelor’s in computer science , and I am currently completing my foundation in computer science.

Manoel gathered the courses while I wrote the article you’re currently reading. Throughout this process, we bounced ideas off each other and made iterative improvements to the ranking until we were both satisfied with the end result.

Third , during our research, we came across courses that felt well-made but weren’t well-known. If we adopted a purely data-centric approach, we would have to leave those courses out of the ranking, if only because they had fewer enrollments and ratings.

But no. This ranking is deliberately opinionated and holistic. When we felt confident that a course was worth including, even when the course might not yet have quite as many reviews as some of its competitors, we went with our gut and included it.

We also spiced up the list by including a wide variety of computer science courses that will hopefully cater to the diverse range of learners, whether you’re a true beginner or someone with some foundations in computer science, or an interest in specific topics like math.

After going through this process — combining Class Central data, our experience as lifelong learners, and lots of editing — we arrived at our final ranking. So far, we’ve spent more than 10 hours building this ranking, and we intend to continue updating it in the future.

Course Ranking Statistics

Here are some aggregate stats about the ranking:

  • In total, the courses in this ranking accumulated over 5 million enrollments with 2 courses having over 1 million enrollments each.
  • The most popular course in the list has 3.5 million enrollments.
  • All of the courses in this ranking are either entirely free, or free to audit.
  • With 4 courses each, edX and Coursera are tied for the most represented provider in this ranking.
  • Around 480k people are following Computer Science Courses on Class Central .

Without further ado, let’s go through the top picks.

1. CS50's Introduction to Computer Science (Harvard University)

Banner-2

My first pick has to be CS50's Introduction to Computer Science , offered by Harvard University on edX. Launched on edX in 2012, CS50 is the computer science course on the internet. It is famous for its splendid production quality and its yearly curriculum updates.

It provides a succinct but comprehensive overview of what computer science is all about. Whether you are a newbie who has never heard of ‘Hello World!’, or a programmer who knows a thing or two about computers, you’ll come out of this course having learned something new.

One Thing to Note

Although the course exercises come in two versions, easy and challenging, I found that even the easy exercises can be a bit tricky. If you know nothing about programming, I’d recommend you find someone to study this course with.

Fortunately, CS50 has one of the largest and most active course communities online: check their Discord .

Or if you’re looking for a shorter, more practical course, you might want to have a look at my Python ranking , which includes some gentler on-ramps into the world of programming.

The Instructor

We can't discuss CS50 without bringing up David J. Malan , the Harvard professor that teaches the course. Rarely has an instructor been so instrumental to the success of a course.

Beyond being an excellent educator, Prof. Malan is a true entertainer, with near-perfect delivery. And when you’re tackling an academic course that may take you dozens of hours to complete, having an instructor capable of capturing the learner’s attention makes a huge difference.

So if despite a sincere desire to learn, you find yourself falling asleep while taking online courses, this might just be the course for you. Prof. Malan’s energy is contagious!

What You’ll Learn

The course begins with the premise that computer science is, at its core, problem solving. It introduces you to binary, the fundamental language of computers, and explains how sequences of 1s and 0s can somehow represent text, images, videos, and even sounds.

You’ll learn that algorithms are step-by-step instructions designed to solve a problem. The most common type of algorithms you’ll deal with throughout the course are algorithms for sorting and searching , like bubble sort, merge sort, and binary search.

You may wonder, ‘What’s the point of having many different algorithms if they all do the same thing?’. This is when you’ll learn about measuring the efficiency of an algorithm with Big O notation .

The first programming language the course teaches is the beginner-friendly language Scratch. Through block-based coding, you'll use Scratch to illustrate fundamental programming concepts like functions, conditional statements, boolean expressions, loops, and variables.

Later in the course, you’ll notice that these fundamental concepts keep coming up time and again, since they can be found in pretty much every programming language that CS50 will teach you.

The course then removes your training wheels and drags you down into the depths of low-level programming languages. By “low-level”, I don’t mean “less valuable”. In computer science, low-level programming languages are languages that are close to machine code: the closer they are to machine code, the “lower” they are.

Assembly language is as close as we get to binary, and the course will briefly discuss it. But our first deep dive into traditional programming (writing lines of code instead of arranging colorful blocks like with Scratch) will be with C, a low-level programming language where you'll manage memory by hand and implement your first data structures.

You’ll learn that computers store data in sequences of locations in memory, and how computers can locate and access data with addresses and pointers. You’ll also learn about the different ways we can create and store lists of values, like arrays, linked lists, and trees.

You’ll compare the advantages and disadvantages of each data structure. For example, hash tables can be accessed in constant time, but require mitigating the risk of data collision.

You’ll then be brought back up to the surface towards “higher-level” programming, where you’ll be able to comfortably breathe as you begin working with Python, and continue jumping from topic to topic.

You’ll explore SQL, the programming language of many databases. The final weeks of the course culminate in you building and designing an interactive website with HTML, CSS, JavaScript, and a Python framework called Flask.

How You’ll Learn

The course is ten weeks long, plus an open-ended final project that might take an extra week (or more, if you want to work on something really ambitious).

The course is recorded annually on-campus at Harvard before being launched online the following Spring. While the recording is ongoing, you might be able to join via live stream with a hundred other learners, or if you live near campus, even attend in person — though the pandemic might preclude this for the foreseeable future. Otherwise, you’ll have access to on-demand recordings on edX or via Harvard OCW .

Regarding assessments, you’ll complete ten problem sets, eight labs, and a final end-of-course project that you’ll have to design and come up with yourself or with a team. You’ll be able to code and submit these via a convenient in-browser VS Code-based editor.

CS50 Lineup

A lot of people have heard about CS50’s Introduction to Computer Science, but not many realize that there are 10 other courses under the CS50 brand. A few follow-up courses worth mentioning are:

  • Introduction to Artificial Intelligence with Python
  • Introduction to Game Development
  • Web Programming with Python and JavaScript

What’s even better: many of these courses offer a free certificate. If you’d like to know more about the CS50 courses, and how to get a free certificate, you can read Manoel's CS50 guide .

  • The course instructor David J. Malan has been teaching CS50 for 15 years , first on-campus at Harvard, and on edX since 2012 .
  • CS50 has been bookmarked around 30k times and has over 100 reviews on Class Central.
  • Every year, CS50 organizes Puzzle Day , a friendly problem-solving competition where you’ll have the opportunity to collaborate with learners worldwide.
  • CS50 is a part of both our list of most-popular courses of all time and best free courses of all time .
  • David J. Malan was the founder and chairman of Diskaster, a hard drive and memory card data recovery firm. One of the exercises in the course is a nod to his previous work .
  • CS50 is the longest course on this ranking, owing to its comprehensiveness.

If you're interested in this course, you can find more information about the course and how to enroll here .

2. Computational Thinking for Problem Solving (University of Pennsylvania)

Banner-7

My second pick would be Computational Thinking for Problem Solving from the University of Pennsylvania on Coursera.

This course focuses on the skills underlying computer science  — computational thinking.

Computational thinking is the process of breaking a problem into parts, and then coming up with a resolution method that can be carried out by a computer.

Once you’ve embraced computational thinking, you’ll be in the right mindset to tackle additional computer science courses. So you could see this course as a foundation before the foundation. That said, if your interest lies in problem solving per se rather than CS as a whole, this course should also be a great fit.

You do not need any prior experience with computer science or programming to take this course, although some basic high school mathematics would be useful.

The course covers four main topics: computational thinking, algorithms, computer architecture, and Python.

First, the course outlines the four pillars of computational thinking. You’ll begin with decomposition, breaking down a complex problem into smaller, simpler problems. Then through pattern recognition, you’ll compare the problem to other similar problems that have been solved previously.

Afterwards, during data representation and abstraction, you’ll simplify the problem even more by identifying what characteristics of the problem are important and filtering out those that are not.

The last pillar of computational thinking, algorithms, forms the second section of the course. The course defines algorithms as a set of step-by-step instructions to solve a problem. With algorithms, you can teach the computer how to solve problems without explicitly telling them precisely how. Instead, your algorithm will be able to handle a number of different cases, as long as these satisfy some preconditions.

You’ll explore a variety of algorithms, like linear and binary search. You’ll learn how to represent algorithms with flowcharts, analyze the complexity of algorithms (Big O), and calculate the number of possible solutions to an optimization problem. Lastly, you’ll compare the benefits and limitations of common algorithmic approaches to problem solving.

The third part of the course gives a brief history of computers, before settling on the computer architecture used by modern computers — the Von Neumann Architecture. 

It consists of three fundamental units: the memory, CPU, and I/O. You’ll learn how data and instructions are stored and accessed in computers as bits and bytes, and also how executing code amounts to moving pieces of data in memory and operating on it in the CPU.

In the fourth and final section, the course will instruct you on the basics of Python programming. You’ll explore iterations, classes, and debugging. And you’ll end the course by coding your own Python program, where you’ll get to implement the algorithms you learned previously into code.

The course is 4 weeks long, with each week having about 18 hours of course material. You’ll learn primarily from video lectures, and after each video there’ll be a short quiz to test your recall. There is supplementary material available on math, for those not-so-confident in their mathematical abilities.

At the end of each week, you’ll be presented with a case study where you’ll see examples of computational thinking used to solve real-life problems. Afterwards, you’ll complete a project where you’ll apply what you’ve learned. Do note that the assessments in this course are for verified learners.

  • This course is endorsed by Google , which decided to make it part of its Digital Garage, a collection of courses and resources for learners wanting to gain tech skills.
  • Penn’s Prof Susan Davidson, the course instructor, was named a Fellow of the American Association for the Advancement of Science in 2021.
  • Prof. Davidson also teaches some of the courses of Penn’s Master of Computer and Information Technology (MCIT), which is offered online through Coursera.

3. Introduction to Computer Science and Programming Using Python (Massachusetts Institute of Technology)

Banner-8

My third pick for the best computer science course is Introduction to Computer Science and Programming Using Python , offered by MIT on edX.

This course approaches the field of computer science and programming through Python. The course focuses on breadth rather than depth, giving students background knowledge on the numerous applications of computation.

So this course is similar to our first pick in that it’s a survey course: it covers a lot, but not in great detail. But it’s dissimilar in that it focuses entirely on one programming language, Python, while Harvard’s course involves multiple languages.

Depending on your goals, this focus on Python could be seen as a positive or a negative. For what it’s worth, I believe Python is an excellent first programming language.

Heads up! This course tries to mirror the MIT on-campus experience, so don’t expect it to be a cakewalk. You won’t need any prior experience with computer science or programming to take it, but you’ll need a background in high school mathematics.

The main topics the course explores are computational thinking, data structures, iteration and recursion, decomposition, abstraction, and algorithms and complexity.

You’ll be given a brief introduction to computation and computational thinking. You’ll learn what computers are, how they work, and what their limitations are.

By understanding that computers only know what you tell them (and what they can infer from what you tell them), you’ll realize that in order for the computer to accomplish a task, they need a ‘recipe’ containing a sequence of instructions they should follow. This is what computer scientists call an algorithm.

Your programming journey begins by learning Python and its basic syntax. With Python, you’ll explore concepts common to most programming languages. These include variables, conditional statements, and control flows.

Furthermore, you’ll be introduced to functions and the role they play in decomposition, abstraction, and recursion, which are concepts fundamental to problem-solving in computer science.

By then, you should be able to code simple programs that can come up with approximate solutions to difficult math equations through a guess-and-check method.

Lastly, you’ll learn about the different ways we can represent information in Python, called data structures. You’ll work with lists, tuples, and dictionaries, and understand when to use one data structure over another.

The course is 9 weeks long with an expected workload of 14 to 16 hours each week. The main mode of learning is video lectures, and the course includes plenty of activities to put your hard-earned skills into practice. You’ll also have access to a learner’s forum where you can discuss with fellow learners.

There are 3 problem sets containing challenging coding exercises that will help you solidify your knowledge. If you are a verified learner, you’ll have to complete a timed mid-term and final exam in order to receive your certificate.

  • This course has over 18k bookmarks and 120 reviews on Class Central.
  • It is the first of a two-course XSeries Program on edX. The second is Introduction to Computational Thinking and Data Science , which could make for a good follow-up.
  • One of the instructors, Professor John Guttag, leads the Data Driven Inference Group at MIT’s legendary Computer Science and Artificial Intelligence Laboratory (CSAIL).

4. Principles of Computing (Part 1) (Rice University)

Banner-4

Principles of Computing (Part 1), by Rice University on Coursera, is my fourth pick for the best computer science introduction. The course emphasizes doing rather than watching, requiring you to complete many coding assignments.

This course aims to help you step up your programming skills by teaching you computational problem solving, a skill that underlies computer science, and that was also the focus of our second pick . This will involve learning important programming practices and developing a mathematical foundation for problem solving.

To take this course, you’ll need to be comfortable with writing small (100+ lines) programs in Python, as well as have some background in high school mathematics. So this one doesn’t start from scratch, and is therefore geared toward learners that also have some basics down.

If you’re looking for a problem solving course with fewer prerequisites, you might want to have a look at our second pick .

The course includes refreshers on Python, code testing, probability and randomness, combinatorics, and function growth.

After a brief review of Python, the course will explain how to build tests, and why having tests for your Python programs can be useful.

Many programmers dislike or don’t simply bother to write tests for their code, but as one of the instructors explains, it’s a best practice worth treating as an integral part of the programming process.

Writing tests will help you save time and effort, and serves as a reusable sanity check that your program actually does what it’s supposed to do. For your first mini-project, you’ll recreate the well-known game 2048 in Python.

Then, the course moves on to the role of probability and randomness in computer science. You’ll learn how to identify unreasonable outcomes in probability, along with calculating the expected value of multiple outcomes.

For example, what’s the chance that a die would roll seven sixes out of ten tosses? And if that were to happen, to what extent could we conclude that the die is weighted — that is, that the rolls were unfair?

You’ll also see how we can use Python to simulate the probability of outcomes, a valuable tool used in statistical modeling. And for your second mini-project, you’ll work with probabilities to create an opponent that you can face in a game of Tic-Tac-Toe.

The course also touches on combinatorics, which deals with enumerations, permutations, and combinations. You’ll figure out how to calculate the total number of ways an event can play out.

This helps greatly in calculating the number of steps an algorithm would take, thereby allowing you to estimate the running time of the algorithm, and in turn, determine if the algorithm would be worth implementing. You can see why combinatorics plays a major role in password and computer security. For your third mini-project, you’ll code the familiar dice game Yahtzee .

In the final part of the course, you’ll be taught the importance of counting in solving complex problems. Counting answers the question of how long an algorithm might take to run given a task. Another name for counting you might be more familiar with is “time complexity”.

You’ll also learn about higher-order functions in Python, that is functions that take other functions as algorithms, like the map function. In your last mini-project, you’ll use these concepts to make your own version of Cookie Clicker .

The course is split into 5 weeks, with each week involving 7 to 10 hours of study. You’ll learn primarily through video lectures and graded assignments, although the course does supply supplemental notes and activities for further reading and practice.

You’ll code and submit the homework and mini-projects on their companion website CodeSkulptor , and in-browser code editor that will preempt the need of setting up a local coding environment.

  • The course has around 15k bookmarks on Class Central.
  • This course is the third of seven courses that make up the Fundamentals of Computing Specialization . Upon receiving the specialization certificate, you’ll have completed 20+ projects, including a capstone project.
  • If you’re not interested in taking a full specialization after this course, but you’d like to learn more about the course topic, as the course name implies, there’s a follow-up course: Principles of Computing (Part 2) .
  • Course instructor Prof. Scott Rixner is faculty director of two online degree programs at Rice University. So his dedication to online education extends beyond the scope of his own MOOCs.

5. Computer Science 101 (Stanford University)

Banner-5

Computer Science 101 aims to demystify the magic of computers by demonstrating that they work by following a few relatively simple patterns.

This course will help you become familiar with those patterns. It will give insights into how computers work and what their limitations are.

In addition, the course delves into networking and other major topics within CS. No prior knowledge of computer science required!

The course starts off with the fundamental equation of computers: Computer = Powerful + Stupid. Computers are powerful because they can perform billions of operations per second. But they are stupid because they need someone to tell them what to do. This is where programmers come into play.

This course uses small snippets of JavaScript to introduce you to programming and other computer science concepts. You’ll gain a grasp of programming concepts like variables, loops and iterations, conditional statements, and so on. The course later covers low-level and high-level languages, as well as compilers and interpreters.

The computer is a tool and the programmer wields the tool. Therefore, to program efficiently, it is important to understand how the tool works. The course covers many aspects of said tool, including hardware. You’ll learn about the parts that make up a computer, and look at how computers can represent different information formats.

The main format you’ll work with is images. One of the things you’ll do is “greenscreen” images as well as turn coloured images into grayscale by operating at the individual pixel level.

Another topic the course covers is computer networks, which is how computers communicate with one another. You’ll learn about the different types of networks.

You’ll study what IP addresses are and how they allow computers to locate each other. The course discusses how computers transmit information through data packets, and also the communication protocol the Internet runs on  —  TCP/IP.

The course also briefly covers a variety of other topics like databases and spreadsheets, computer security, and analog and digital data.

The course is 6 weeks long, with each week taking 4–6 hours to complete. Lessons are provided through video lectures and are supplemented with notes and assessments. However, you’ll need to be a verified learner to access the assessments.

  • The instructor acknowledges Google for supporting his early research into creating the class. I think this goes for all of us!
  • This course has 3k bookmarks on Class Central.
  • The course instructor Nick Parlante’s current interest is in CodingBat Java , an experimental online code-practice tool.

6. How Computers Work (University of London)

Banner-6

This concise course taught by the University of London on Coursera touches on a few key topics in computer science, but it is mostly interested in helping you build a foundational understanding of hardware. It’s in the title really: by the end of the course, you’ll know how computers work.

And through that understanding, you’ll also form a clearer picture of how computers can be leveraged to help solve everyday problems.

The course is just as suitable for someone wanting to build solid foundations for further study in CS, as it is for someone simply curious about how computers work and wanting to explore some key CS topics but not necessarily a deep dive.

You do not need any prior knowledge of computer science to take this course.

This course covers computer hardware, abstraction, modularity, computer networks and communication.

The course begins with abstraction — the art of drawing attention to the important details while filtering out the noise. Many disciplines rely on abstraction, and computer science does so heavily, both at the hardware and software levels.

This concept will become apparent when the course starts discussing computer hardware, like memory, CPU, and other devices. You’ll use notional machines as means for capturing these abstractions.

Afterwards, you’ll move on to another key idea: state and modularity. This will help you answer the question, ‘Why does turning off and on my computer fix most problems?’

Using notional machines, you’ll explain how computer applications function by transitioning through different states, and how modularity allows them to interact with other applications. You’ll learn how to debug stuff, a very useful skill indeed.

Moving on, you’ll learn how computers talk to one another over the Internet through networks and communication protocols. You’ll also learn about the kinds of security threats computers (and users) face, and how to protect yourself from malicious actors.

Lastly, you’ll explore basic web development. By applying your new-found knowledge of abstraction, state, and modularity, you’ll be able to clearly understand how websites work.

The course is 4 weeks long, with 10 hours worth of material per week. It consists of video lectures and quizzes to test your knowledge of the material. You’ll have the chance to share your thoughts in discussion prompts.

  • The course instructor, Prof. Marco Gillies , is the Academic Director of Distance Learning at Goldsmiths, University of London.
  • This course is an introduction to the University of London’s Online Bachelor of Computer Science , offered on Coursera.
  • It is course two out of three of the Introduction to Computer Science and Programming Specialization , with the first course being Introduction to Computer Programming .

7. CS50's Understanding Technology (Harvard University)

Banner-1-1

This is another course from the CS50 family. But unlike our first pick, which is the main CS50 course, this course is for those who work with technology everyday but don’t understand how it all works under the hood or how to solve problems when something goes wrong. And it’s also for those who don’t (yet) work with technology — most notably, computers — but would nonetheless like to understand its functioning.

The course aims to fill in the gaps in your knowledge of hardware, internet, multimedia, programming, and web development, preparing you for the technology of today and tomorrow.

This course has no prerequisites.

The course begins with an introduction to the language of computers, binary. It explains how computers use binary to represent text and other information. Then, you’ll move on to the hardware of the computer: CPU, RAM and Main Memory. You’ll learn about the functions of each of these components.

The course discusses Internet and multimedia, and the technologies underpinning them. It’ll tell you how computers can find and talk with one another. You’ll learn about the common Internet protocol TCP/IP and more.

You’ll learn about the different data representations of multimedia, like audio, images, and video. There are many file formats and compression techniques – the course will give you an overview of some of the main ones.

Next, you’ll be taught how to stay safe on the Internet. You’ll discover several ways to protect your data and privacy. This section will include lessons on cookies, passwords, two-factor authentication, encryption, and more.

You’ll continue with the basics of web development. You’ll learn how web browsers access the web with HTTP requests. Have you ever seen a 404 or 500 error when trying to visit a webpage? You probably have. Well, in this course, you’ll learn what these errors mean. A brief overview on the languages that allow us to build and style web pages, HTML and CSS, is provided.

Last by not least, you’ll discover the basics of programming. You’ll primarily use the block-based language Scratch to explore concepts common to pretty much all programming languages, like variables, expressions, loops, and so on.

Additionally, to demonstrate what an algorithm is (and more specifically the divide-and-conquer paradigm ), you’ll watch the instructor tear a phonebook into halves… I had to mention this because it is both very instructive and memorable!

The course is 6 weeks long, with each week taking 2 to 6 hours to complete, depending on your prior familiarity with the content. Each week contains at least one hour of lecture.

Regarding assessments, you’ll have to complete an assignment for each of the six topics presented in the course to earn a certificate.

  • After taking this course, you’ll be more than ready to tackle CS50, our #1 pick .
  • This course has 1.6k bookmarks on Class Central.
  • Another fact about David J. Malan, the course instructor: he is an active member of the SIGCSE , the arm of the ACM concerned with computer science education.

8. Intro to Theoretical Computer Science (Udacity)

Banner-2-1

For those who have some familiarity with programming and algorithms, and want to further their understanding of problem-solving in computer science, this rigorous but insightful course might be what you’re looking for.

Offered by Udacity, Intro to Theoretical Computer Science explores what makes a problem ‘hard’ to solve, even for a computer. Then, it shows how to reduce and simplify these ‘hard’ problems to make them easier to solve through computation.

The course covers two main areas of theoretical computer science: complexity theory and computability.

Complexity theory asks how much of its resources, like time or memory, will a computer require to solve a problem. Computability, on the other hand, asks if a computer can solve a problem at all, even when given more time and memory.

The course introduces you to a variety of real-world problems from telecommunication, bioinformatics, and finance. You will recognize what makes a problem challenging, and the value of recognizing such problems. This will prime you for understanding what NP-completeness is. Then, you’ll understand what makes a problem ‘hard’ to solve, and be able to prove it.

The rest of the course discusses what to do with the problem once we’ve proved that it is hard (or even impossible to solve).

One of the ways to overcome this obstacle is to employ efficient, intelligent algorithms. Another way is to accept that the problem may not be perfectly solvable, and instead find an approximate solution. And yet another way is to use randomness and probability to poke around and find a solution.

You’ll be able to describe and use these techniques in practical situations: the course discusses the theory but it’s also hands-on.

Lastly, you’ll move on to problems that no computer can ever solve in theory. You will learn about undecidability and recognize the limits of computability.

The course is 8 weeks long, with a total 14 hours of video lectures. Some videos have a quiz to help you practice recalling what you’ve learned. There are 7 chapters, and at the end of each chapter you will complete a problem set to put your new-found skills to good use.

Finally, there’s a summative exam at the end of the course.

  • This course has 2.2k bookmarks on Class Central.
  • One of the course instructors, Sebastian Wernicke, has spoken multiple times at TED .
  • To tackle this course, you may want to learn about algorithms first. The instructors recommend another Udacity course on algorithms as a refresher. In addition, good math foundations would be useful too. Check our picks below if needed.

9. Mathematics for Computer Science (University of London)

Banner-3

Offered by the University of London, this course introduces you to the mathematics and mathematical thinking computer scientists use in their work. What distinguishes this course from other math courses is its playfulness, with fun and interactive exercises.

More specifically, the course combines elements of algebra, analysis, and geometry — topics carefully picked to serve as the backbone of your computer science education.

The course discusses, among others, number bases, an essential topic to understand binary, and conversion between binary and other bases, such as hexadecimal. It explores numerical progressions, like the well-known Fibonnaci sequence. And it will touch on geometry and function graphing.

By the end of the course, you’ll have acquired the foundation needed to understand the math that underpins other computer science courses, and you’ll be ready to tackle more advanced mathematical topics.

The course assumes you know some high school mathematics as well as basic Python programming.

The course investigates five main topics: number bases, modular arithmetic, sequences, series, graph sketching and kinematics.

The course begins with the study of number bases. You might know that binary is the number base used by computers. But did you know that computer scientists also use hexadecimals?

You’ll cover the key concepts of place values and number systems, which will involve converting between binary, hexadecimal, and decimal, as well as adding, subtracting, and multiplying them together. Oh, a cool thing that the course teaches you is steganography, the art of hiding messages in images!

Next, you’ll cover modular arithmetic. Have you ever wondered what “modulo 7” means? You’ll learn about the usefulness of congruence and modular arithmetic operations in computer science (psst, it can be used for encryption).

You’ll identify, describe, and compute sequences of numbers and their sums. You’ll study a special family of sequences called progressions, which consists of arithmetic and geometric progressions. You’ll learn how sequences can be used to generate random numbers. Additionally, you’ll be able to tell when a series converges (meets at a point) or diverges (approaches infinity)

Lastly, the course describes how to represent and describe space numerically using coordinates and graphs. You’ll see how graphs can help us visualize and transform functions like straight lines, quadratics, cubics, reciprocals and more. An example of modeling motion will be given: the field of mathematics called kinematics.

The course is 6 weeks long, with about 40 hours worth of material. Each week comes with one or more quizzes, allowing you to learn by doing. However, you’ll need to pay for the certificate for the course autograder to mark your answers.

  • It is the third and final course of the Introduction to Computer Science and Programming Specialization .
  • Dr. Sara Santos enjoys math busking , which seeks to surprise and amuse people on the streets with performances rooted in math.

10. Mathematics for Computer Science: Essential Skills (University of Hull)

Banner-9

If you have taken a look at the previous two courses but do not have the mathematical foundations to take them yet, this course can help you with the basics.

This course is a short course on mathematics skills for computer science, offered by the University of Hull on FutureLearn.

Meant for learners starting or considering studying computer science at the university level, this course covers Venn diagrams and set theory, algebra techniques, and vectors and matrices — all fundamentals concepts ubiquitous in computer science.

The course assumes no prior mathematical knowledge. You’re starting from scratch.

Starting off with Venn diagrams and set theory, you’ll learn how “sets” (bags of objects, if you will) can be formalized and operated on. You’ll learn to reason about computations and objects of computation. Venn diagrams will help you visualize this type of reasoning.

You’ll then move on to algebra and its techniques. You’ll be given an overview of algebra (which could be described as doing math using variables instead of explicit numbers) and its use in algorithms and scientific computation. The course will teach you how to solve linear equations and quadratic equations using algebra.

The course ends with an overview of vectors and matrices. You’ll learn what vectors are, and why they are especially important in graphics programming. You’ll learn how we can represent vectors as matrices, and how to modify, transform, and invert matrices to solve complex problems.

This course is 3 weeks long, with around 3 hours of material per week. You’ll learn primarily through video material, although there are discussion forums where you can discuss problems with fellow learners.

At the end of each week, there is a quiz that’ll help you strengthen your understanding of mathematical concepts and applications.

  • The course instructor, Laura Broddle , joined the University of Hull in 2015 as a foundation math teaching fellow.
  • She also had visited a sister school in Uganda and was rated an outstanding teacher by Ofsted in 2013.

Part-time content writer for Class Central, full-time computer science student.

If you read this far, thank the author to show them you care. Say Thanks

Learn to code for free. freeCodeCamp's open source curriculum has helped more than 40,000 people get jobs as developers. Get started

Computer Science Courses

  • Social Sciences

CS50x

CS50: Introduction to Computer Science

An introduction to the intellectual enterprises of computer science and the art of programming.

CS50AI

CS50's Introduction to Artificial Intelligence with Python

Learn to use machine learning in Python in this introductory course on artificial intelligence.

CS50T

CS50's Understanding Technology

This is CS50’s introduction to technology for students who don’t (yet!) consider themselves computer persons.

CS50S

CS50's Introduction to Programming with Scratch

A gentle introduction to programming that prepares you for subsequent courses in coding.

CS50B

CS50's Computer Science for Business Professionals

This is CS50’s introduction to computer science for business professionals.

CS50W

CS50's Web Programming with Python and JavaScript

This course picks up where CS50 leaves off, diving more deeply into the design and implementation of web apps with Python, JavaScript, and SQL using frameworks like Django, React, and Bootstrap.

CS50L

CS50 for Lawyers

This course is a variant of Harvard University's introduction to computer science, CS50, designed especially for lawyers (and law students).

Hands on a keyboard in office

Computer Science for Lawyers

Gain a deep understanding of the legal ramifications of clients’ technological decisions and policies.

Random walks generated using Python 3

Using Python for Research

Take your introductory knowledge of Python programming to the next level and learn how to use Python 3 for your research.

CS50CS

CS50's Introduction to Cybersecurity

Learn how to protect your own data, devices, and systems from today's threats.

CS50SQL

CS50's Introduction to Databases with SQL

Learn how to create, read, update, and delete data with relational databases.

CS50: Introduction to Computer Science

This is cs50x.

An introduction to the intellectual enterprises of computer science and the art of programming in an online course from Harvard.

Harvard John A. Paulson School of Engineering and Applied Sciences

What You'll Learn

This is CS50x , Harvard University's introduction to the intellectual enterprises of computer science and the art of programming for majors and non-majors alike, with or without prior programming experience. An entry-level course taught by David J. Malan, CS50x teaches students how to think algorithmically and solve problems efficiently. Topics include abstraction, algorithms, data structures, encapsulation, resource management, security, software engineering, and web development. Languages include C, Python, SQL, and JavaScript plus CSS and HTML. Problem sets inspired by real-world domains of biology, cryptography, finance, forensics, and gaming. The on-campus version of CS50x , CS50, is Harvard's largest course. 

Students who earn a satisfactory score on 9 problem sets (i.e., programming assignments) and a final project are eligible for a certificate. This is a self-paced course–you may take CS50x on your own schedule.

The course will be delivered via edX and connect learners around the world. By the end of the course, participants will be able to:

  • A broad and robust understanding of computer science and programming
  • How to think algorithmically and solve programming problems efficiently
  • Concepts like abstraction, algorithms, data structures, encapsulation, resource management, security, software engineering, and web development
  • Familiarity in a number of languages, including C, PHP, and JavaScript plus SQL, CSS, and HTML
  • How to engage with a vibrant community of like-minded learners from all levels of experience
  • How to develop and present a final programming project to your peers

Your Instructors

David J. Malan

David J. Malan

Gordon McKay Professor of the Practice of Computer Science, Harvard John A. Paulson School of Engineering and Applied Sciences

Doug Lloyd

Senior Preceptor in Computer Science, Harvard University

Brian Yu

CS50 Recommended

"Harvard's Free coding courses are excellent. You need to take them." by Python Programmer. https://youtu.be/WwEcPcfRlD0?feature=shared

"I tried Harvard University's FREE CS50: Introduction to Computer Science course | CS50 review 2020" by Sunny Singh. https://youtu.be/DSA34lhJvw4?feature=shared 

"Learn To Code For FREE At Harvard University // CS50: Introduction To Computer Science Review" by Dorian Develops. https://youtu.be/He4jqZ2EjrE?feature=shared

Ways to take this course

When you enroll in this course, you will have the option of pursuing a Verified Certificate or Auditing the Course.

A Verified Certificate costs $219 and provides unlimited access to full course materials, activities, tests, and forums. At the end of the course, learners who earn a passing grade can receive a certificate. 

Alternatively, learners can Audit the course for free and have access to select course material, activities, tests, and forums.  Please note that this track does not offer a certificate for learners who earn a passing grade.

Have Questions?

Can I enroll in this course if I'm not a programmer? Are there any prerequisites? Learn the answers to these and more in our FAQs.

Course FAQs

Related Blog Posts

Top harvard online courses for recent graduates.

Courses for high school and college graduates looking for their next step.

The Benefits and Limitations of Generative AI: Harvard Experts Answer Your Questions

Harvard experts in education and technology share their thoughts and insights on the impacts of new artificial intelligence and machine learning on education, society, and industry.

Pros and Cons of Big Data

Learn how big data revolutionizes healthcare, public services, education, and social initiatives while addressing challenges like data privacy, implementation costs, and bias.

Introductory Courses for Anything You Want to Learn in 2023

Maybe you’ve wanted to learn something for years and you’ve just never found the chance? We’re here to help you begin on your learning path!

Related Courses

Cs50's introduction to programming with scratch.

A gentle introduction to programming that prepares you for subsequent courses in coding.

CS50's Introduction to Programming with Python

Join Harvard Professor David J. Malan in this online course that will introduce you to programming using Python, a popular language for data science and more.

CS50's Introduction to Cybersecurity

An introduction to cybersecurity for technical and non-technical audiences alike in an online course from Harvard.

Data Science Principles

Data Science Principles gives you an overview of data science with a code- and math-free introduction to prediction, causality, data wrangling, privacy, and ethics.

Data Privacy and Technology

Explore legal and ethical implications of one’s personal data, the risks and rewards of data collection and surveillance, and the needs for policy, advocacy, and privacy monitoring.

'ZDNET Recommends': What exactly does it mean?

ZDNET's recommendations are based on many hours of testing, research, and comparison shopping. We gather data from the best available sources, including vendor and retailer listings as well as other relevant and independent reviews sites. And we pore over customer reviews to find out what matters to real people who already own and use the products and services we’re assessing.

When you click through from our site to a retailer and buy a product or service, we may earn affiliate commissions. This helps support our work, but does not affect what we cover or how, and it does not affect the price you pay. Neither ZDNET nor the author are compensated for these independent reviews. Indeed, we follow strict guidelines that ensure our editorial content is never influenced by advertisers.

ZDNET's editorial team writes on behalf of you, our reader. Our goal is to deliver the most accurate information and the most knowledgeable advice possible in order to help you make smarter buying decisions on tech gear and a wide array of products and services. Our editors thoroughly review and fact-check every article to ensure that our content meets the highest standards. If we have made an error or published misleading information, we will correct or clarify the article. If you see inaccuracies in our content, please report the mistake via this form .

Computer science courses: A comprehensive overview

doug-wintemute

(Image: Shutterstock)

The expansive computer science field explores software and computer systems and their problem-solving power. Computer science curriculums vary considerably depending on the school, program, and course type and level, but prospective students should expect to see a healthy dose of math courses, such as statistics, calculus, probabilities, and discrete math. 

As a result, the training can challenge students in their pursuit of completing an online computer science degree , certificate, or bootcamp. Yet, this also helps make the training and the acquired skill set specialized and valuable, leading to some very promising computer science jobs. 

Guide to bachelor's in computer science courses

The style and structure of a bachelor's degree in computer science vary, but the programs typically feature a blend of introductory courses, intermediate and advanced courses, and complementary courses and electives chosen by the students. Many of the project-based courses feature individual assignments, though students will complete partner- and group-based projects as well. 

While the training can be rigorous, many schools help students design a schedule that progresses logically and limits the number of heavy workload courses taken at the same time, such as programming courses. Success students usually need technical skills, determination, and self-motivation, particularly in an online computer science degree. 

Check out the details below for some of the more common computer science courses.

Algorithms and data structures

Typical Difficulty Level:

Typically Includes Project(s)?:

Quick facts:

  • Explores the various algorithms and data structures used to solve the most common computational problems.
  • Teaches design, implementation, and analysis of data structures and algorithms.
  • Students work with object-oriented programming and design.
  • Learn search and sort algorithms.
  • Use practical data structures, such as lists and stacks.

Computer architecture

  • Understand how computer hardware and software interact.
  • Learn the architecture systems used to design and build processors and systems.
  • Examine the hierarchy of computer functions.
  • Study pipelining, drives, addressing, performance enhancement, and memory.
  • Analyze CPU and memory performance.

Fundamentals of computer systems

  • Introduction to assembly programming languages and software design.
  • Cover various memory systems, data representation, and machine languages.
  • Optimize and analyze code.
  • Understand programming and architecture.
  • Learn processes and exceptions and how applications interact with systems and hardware.

Introduction to networks

  • Learn the software and hardware involved in networking.
  • Understand network architectures, protocols, client-server models, and reliability.
  • Explore the principles, fundamentals, and structures of various networks.
  • Build cable networks with configurations and schemes for network devices and IP addresses.

Operating systems

  • Introduces the various principles and structures of operating systems.
  • Teaches students how to write and execute code for efficient programs.
  • Covers process and storage management, along with security issues.
  • Examines distributed, multimedia, and embedded systems.
  • Develop, diagnose, and analyze the functions and components of operating systems.

Programming languages

  • Learn to design, develop, and document efficient software programs using various programming languages.
  • Teaches the basic concepts of programming language syntax and semantics.
  • Gain proficiency in one or more languages, such as JavaScript, Python, Ruby, and C++.
  • Explore the differences between languages and the justifications for them.

Master's and Doctorate in computer science: Specializations and courses

A master's degree in computer science can lead to advanced professional and educational opportunities, and students can influence their pathway with the type of program they choose. Master's degrees usually take two years to complete and feature course, project, or research-based structures. Course and project-based programs typically feature a capstone project, whereas research-based programs require a thesis.

A doctorate in computer science often leads to careers in academia or research and development. Most doctorates run for 4-7 years and feature a research-based dissertation. Both graduate degree types offer flexibility and allow learners to choose a specialization based on their career and research interests, and the list below explores some of those options. 

Artificial intelligence

Description of Specialization:

Artificial intelligence specializations focus on a computer's problem-solving abilities, along with its predictive and recommendation capabilities. The studies cover language processing, interpretation, and pattern recognition. Additional topics may include industry-specific applications, such as trading and healthcare.

Typical Courses:

  • Machine learning
  • Speech and language processing

Computer-human interaction

This specialization examines the various applications humans have for computers. Students may study the influence of computers on society, along with the reasons for their designs. Some of the training may also cover the evaluation of the systems and what type of interfaces are most effective on consumers and end-users.

  • Human-computer interactive design
  • Emergent interface technology

Cybersecurity

Cybersecurity specializations explore the various methods for protecting computer systems and information. Students may look at the languages and architectures used in the design process and cyber threat detection and investigation. Other topics may include cryptography, ethics, and privacy laws.

  • Developing secure systems
  • Digital forensics and investigations

Data science

Data science specializations examine the many uses for data, the methods for extracting the information, and the techniques and tools for analyzing it. The training looks at diverse math, statistics, and computer science topics, along with industry applications, such as healthcare, business, and sports.

  • Database systems
  • Decision analytics

Game design

Game design specializations focus on the processes used in game production. Students learn how to design and program games, create game engines, and modify gaming projects. They may study 3D and character modeling, computer-user interactions, and art and sound design. 

  • Game architecture and design
  • Game production

Mobile and web computing

Mobile and web computing specializations look at the development of applications for the web and mobile devices. The training often covers the entire development lifecycle, considering stakeholder needs, interactivity and user-friendliness. Students may also learn how to develop cross- and multi-platform applications.

  • Mobile native applications
  • User experience design

A specialization in networks emphasizes the design, development, implementation, and security of various networks in different settings. Students learn to apply the technologies, principles, and protocols of network systems to enhance organizational communication and effectiveness.

  • Network security 
  • Advanced wireless networks

Robotics specializations focus on the design and development of automated systems for various uses. The training covers the programming and circuit design of intelligent robotic systems. Learners may also work with sensors, signals, digital logic and control systems.

  • Autonomous robotics
  • Artificial intelligence techniques

Software engineering

Software engineering specializations examine the steps and processes involved in software design and development. Students learn engineering principles and approaches, including analyzing the requirements, exploring alternatives, and evaluating the final product. The training also covers testing, safety and production capabilities. 

  • Software tools and programming
  • Computability and computational complexity

Theory specializations teach students how to apply advanced mathematical theories to computer science. Students may examine theories in cryptography, system processing, and computational algebra. Other topics may include programming language theory, software theory, reactive systems and algorithms.

Information theory

Computation theory

Coding bootcamp courses

Coding bootcamps offer condensed training packages that equip learners with coding knowledge and skills. Bootcamps may cover introductory, advanced, or specialized material depending on the program. These programs usually focus on up-to-date and practical skills that can be used on the job immediately after completion. 

Most coding bootcamps provide applicable programming skills in a particular field, such as JavaScript, Ruby, or SQL. However, some may also lead to industry certification with a specific vendor. Learners may pursue these programs to enter the tech field, advance their career, or refresh or update their skillset. 

The style and structure of bootcamps vary, but they typically run between 3-6 months and cost an average of $13,579,  according to BestColleges.com . While some organizations offer in-person programs, most coding bootcamps feature online courses for added flexibility. 

Compared to a college degree, coding bootcamps run much more focused training, omitting any general education and interdisciplinary courses. The condensed training means significantly shorter completion times, but it also means the course loads can be more intense and rigorous. 

The courses included in a coding bootcamp depend entirely on the level and focus of the coding bootcamp chosen, but learners may encounter some of the following courses:

  • Web Development
  • UX/UI Design
  • Front-end Fundamentals with JavaScript
  • Data Analytics
  • Software Architecture
  • SQL Databases
  • Applied Machine Learning 
  • Digital Marketing

8 tips for success in computer science courses

Students may find computer science difficult, but they can improve their chances of success in a computer science degree   by following some basic study principles. The section below underscores some general advice and comp sci tips for better study results. 

1. Review course pamphlets.

Students should fully understand their program and course expectations and goals before beginning. They can read through their course pamphlets and identify the types of assignments and project requirements to avoid surprises.

2. Get ahead of your deadlines.

A study schedule can get busy, and projects can pile up if students procrastinate. Learners should consider keeping a calendar to track project deadlines and exam dates to ensure they stay on top of studying and set aside enough time.

3. Pace yourself.

It can be tempting to want to rush through and complete all material as quickly as possible, but students who pace themselves might have more success. Students should take their time and understand each component before moving on.

4. Make your mental health a priority.

Studies can become overwhelming and exhausting for many degree-seekers, so students should prioritize their own mental health. Learners can develop a steady and regular study pace, avoid procrastinating, take breaks, and enjoy the extracurricular activities available at school to improve their mental health.

5. Study smarter, not harder.

While many people cram for tests leading up to exams or rush to complete assignments at the last minute, this strategy does not produce the greatest results. Instead, degree-seekers should study during the times they feel most alert and creative and do so over an extended period of time.

6. Don't do all of your studying alone.

Most students study alone, but studying in groups comes with many advantages. In a study group, learners can pick up information more easily, beat the urge to procrastinate, and identify questions or angles they would have otherwise missed.

7. Have a life outside of school.

Completing the degree is the goal for most students, but colleges and universities offer amazing opportunities to meet new people, find inspiration, and access a wealth of facilities and resources. Learners should try to enjoy life outside their studies whenever they can.

8. Communicate with your professors.

Speaking with professors has many advantages for learners. Students can learn more about a topic or an assignment, consider new approaches or ways of looking at the material or build their network.

In conclusion

The computer science discipline may look and sound daunting from the outside, but the programs and courses cover some of the most interesting material and provide some of the most applicable skills available. The diverse training options offer something for most students, including foundational and comprehensive studies, advanced specialized knowledge, and accelerated bootcamps.

For more information, prospective students can look to apps, blogs, podcasts, and other computer science resources. 

ZDNET Recommends

Courses in Computer Science and Engineering

Undergraduate - pmp - graduate - group meetings - graduate seminars, undergraduate courses.

The relational data model and the SQL query language. Conceptual modeling: entity/relationships, normal forms. XML, XPath, and XQuery. Transactions: recovery and concurrency control. Implementation of a database system. A medium sized project using a rational database backend. Prerequisite: CSE 332; and either CSE 344 or CSE 414.

Links to individual capstone course web pages listed below.

Professional (evening) courses.

Study of major developments in software engineering over the past three decades. Topics may include design (information hiding, layering, open implementations), requirements specification (informal and formal approaches), quality assurance (testing, verification and analysis, inspections), reverse and re-engineering (tools, models, approaches). Prerequisite: CSE majors only.

Topics in human-computer interaction, including tools and skills for user interface design, user interface software architecture, rapid prototyping and iterative design, safety and critical systems, evaluation techniques, and computer supported cooperative work. Prerequisite: CSE majors only.

Technology supporting reliable large-scale distributed computing, including transaction programming models, TP monitors, transactional communications, persistent queuing, software fault tolerance, concurrency control and recovery algorithms, distributed transactions, two-phase commit, data replication. Prerequisite: CSE majors only.

Methods for designing systems that learn from data and improve with experience. Supervised learning and predictive modeling; decision trees, rule induction, nearest neighbors, Bayesian methods, neural networks, support vector machines, and model ensembles. Unsupervised learning and clustering. Prerequisite: CSE PMP majors only.

A study of developments in operating systems from the 196' s to the present. Topics include operating system structure, protection, virtual memory, communication mechanisms, concurrency, lightweight threads, object-oriented systems, distributed systems, and transaction support in operating systems. Prerequisite: CSE majors only.

Current choices and challenges in network systems. Fundamental concepts combined with emphasis on evaluation of design/operations alternatives. Topics include alternative link, network, and transport-layer technologies, topologies, routing, congestion control multimedia, Ipv6, aTM v. IP, network management and policy issues. Prerequisite: CSE majors only.

Group Meetings

Graduate courses, graduate seminars.

Neural computation and learning. Discussions of classic as well as recent papers in neural computing and neuroscience. Participants select one or more papers from a reading list and will lead the corresponding discussion meetings. Specific topics covered include:

  • Supervised and unsupervised learning
  • Reinforcement learning and imitation learning
  • Bayesian inference and relationship to neural networks
  • Recurrent and hierarchical networks
  • Applications in computer vision, robotics, and brain-computer interfaces

Computer Science

Tentative schedule of course offerings.

  • About the Department
  • What is Computer Science?
  • Careers in Computer Science
  • Welcome from the Chair
  • Undergraduate Program 
  • Graduate Program 
  • Transfer Students
  • Student Organizations
  • Scholarships
  • LEAD <C/S>
  • Course Descriptions
  • Data Science Collaboratory
  • Cybersecurity Education, Research, and Outreach Center
  • Machine Intelligence and Data Science (MInDS) Center
  • Machine Learning Research Consulting
  • Publications
  • Diversity, Equity & Inclusion
  • Mission / Vision Statement
  • Program Educational Objectives
  • Student Outcomes
  • Community Engagement
  • Faculty and Staff
  • Faculty Office Hours
  • Support Computer Science

Lean More About Our Programs

Degree Information

Top Careers

Student Success

Experience Tech For Yourself

Visit us to see what sets us apart.

Quick Links

  • Tech at a Glance
  • Majors & Concentrations
  • Colleges & Schools
  • Student Life
  • Research at Tech
  • Tech Express
  • Current Students
  • Faculty & Staff
  • Mission and Vision
  • Facts about Tech
  • University Rankings
  • Accreditation & Memberships
  • Maps & Directions
  • Board of Trustees
  • Office of the President
  • Strategic Plan
  • History of Tech
  • Parents & Family
  • International
  • Military & Veteran Affairs
  • Tuition & Fees
  • Financial Aid
  • Visit Campus
  • Dual Enrollment
  • Request Information
  • Office of the Provost
  • Academic Calendar
  • Undergraduate Catalog
  • Graduate Catalog
  • Volpe Library
  • Student Success Centers
  • Honors Program
  • Study Abroad
  • Living On Campus
  • Health & Wellness
  • Get Involved
  • Safety & Security
  • Services for Students
  • Upcoming Events
  • Diversity Resources
  • Student Affairs
  • Featured Researchers
  • Research Centers
  • ttusports.com
  • Social Media
  • Student Resources
  • Faculty & Staff Resources
  • Bookstore/Dining/Parking
  • Pay Online - Eagle Pay
  • IT Help Desk
  • Strategic Planning
  • Office of IARE
  • Student Complaints

CMPSC 291A Neural Information Retrieval

This course covers advanced topics on information retrieval systems and neural ranking algorithms. The content to be focused includes retrieval,  ranking, indexing, and online support for large-scale search services. Recent papers in top conferences on neural information retrieval will be reviewed, and issues in relevance, efficiency, and scalability will be studied.  

  • Actors & Actresses
  • Media Personalities
  • Public Figures
  • Love & Romance
  • Communications
  • Travel & History
  • TV & Entertainment
  • Privacy Policy

Logo

Computer Science Course List in Nigeria and its Requirements

Goodness Ezebuiro

Computer Science is a course that deals with the study of computers and computational systems. The major areas of study within the confines of computer science are artificial intelligence, database systems, computer systems and networks, human-computer interaction, security, vision and graphics, programming languages, numerical analysis, software engineering, theory of computing, and bioinformatics.

Similarly, computer scientists deal with software and software systems which include their theory, design, application, and development. Before now, getting a four-year degree wasn’t strictly essential for getting a good IT job. Simply having an experience with added certification was good enough to get hired. But that is no longer the case as employers now require professionals in the field who have advanced education and qualifications. In this post, we discuss all the computer science courses and everything it takes to study the course at the university.

Is Computer Science a Good Course?

Yes! Computer Science is a very good course to study that can lead to a lucrative career. Computer Science professionals have high demand and that means high projected growth. It is a great choice for students who enjoy mathematics and problem-solving. Because almost every industry now makes use of technology in carrying out their various business, it is no doubt that they require professionals who can manage databases, design websites, and develop software.

A computer science degree helps you to launch a career that is both personally and financially rewarding. It prepares you for a wide variety of jobs and allows you to explore a range of opportunities in diverse industries.

Computer-Science-course-is a good career discipline

All the Courses Under Computer Science

As a course, computer science spans a range of disciplines. Below are all its subdivisions and the requirements you need to study any of them

  • Computer Programming
  • Information Science
  • Data Management
  • Communications Technology
  • Artificial Intelligence
  • Operating Systems
  • Cyber Security Science
  • Theory, Logic, and Design
  • Software Engineering
  • Information Management
  • Applied Computer Science
  • Telecommunication Science/Management
  • Telecommunication and Wireless Technology

Requirements to Meet to be Able to Study Any of These Computer Science Courses

Computer science is a four-year course in conventional universities while it is a five-year course in universities of technology. Have you decided to major in any of the computer science disciplines listed above? Below, we unpack all the requirements you must meet before proceeding with the course application in an institution of your choice.

Candidates seeking admission into any of the Nigerian universities should ensure that their Jamb result, post UTME, and WAEC result grades are good, especially in the subjects related to computer science. Now, institutions calculate your O’level (WAEC, NECO, OR GCE), JAMB, and post UTME scores to determine whether you are qualified to apply for the course or not. After the calculation, the aggregate score is what determines your eligibility.

Again, candidates who got their O’level results in not more than one sitting have the advantage of getting admitted to study Computer science in their chosen institution over those who are using results from two sittings.

O’level Subject Requirements for Computer Science Courses

The Waec, Neco, or GCE result requirements to study any of the computer science courses are as follows;

You are required to score at least credit passes in the following subjects

  • English Language
  • Mathematics
  • And two other science subjects of your choice (Biology, Agric, Chemistry, Economics, Geography, etc)

Note that for entry requirements, some institutions usually emphasize Further Maths with background knowledge in Physics, Psychology, or Sociology.

Jamb Subjects Needed For Computer Science

For you to study any computer science course in a Nigerian university, you need to score credit passes in Jamb in these subjects

  • Use of English (Compulsory for all UTME/DE Candidates),
  • Then you can choose a subject from either Chemistry, Biology, Economics, Agric Science, and Geography. (However, you need to check out some Universities’ special Waivers before making a choice.)

computer science course combinations

Note: Special considerations or waiver means an additional requirement for a particular course in a particular institution. For instance, we have known that all Nigerian universities require English, Maths, Physics, and any other science course as an official Jamb subject requirement for Computer Science. However, sometimes your institution of choice requirements for the same course might slightly differ from the general requirements.

This is very essential for you to be aware of, else, you might be denied admission even after scoring a good Jamb and post UTME mark. So, we advise that you go through the waiver/special consideration of the institution of your choice on your selected course before applying for it.

Requirements for Direct Entry Students

Candidates seeking to further their studies through direct entry into any Nigerian university should take note of the requirements they should meet

  • O’Level passes in two (2) science subjects; Mathematics, and one other subject.
  • NCE or OND credit in Mathematics and one other science or social science subject

Computer Science Related Courses

There are some courses that seem like they are under the computer science discipline but are actually not. Rather, they are their own complete and separate courses with different degree awards but have a few subjects of study in common with computer science. Below are some of them

  • Education and Computer Science
  • Computer Science and Informatics
  • Computer Science with Economics
  • Mathematics With Computer Science
  • Computer Science and Information Technology

Best Universities to Study Computer Science in Nigeria

In Nigeria, there are many universities that offer computer science courses, but note that not all of them are accredited to award the degree. Nigerian students should therefore be very careful when seeking for admission to study computer science. Hence, we bring to you the list of Nigerian universities approved by the National Universities Commission (NUC).

  • Ambrose Alli University, Ekpoma
  • Ahmadu Bello University, Zaria
  • Bayero University, Kano
  • Bauchi State University, Gadau
  • University Of Cross River State (UNICROSS)
  • Federal University of Technology Yola
  • Federal University Of Technology Akure
  • Federal University of Technology, Owerri (FUTO)
  • Federal University of Technology, Akure
  • Imo State University, Owerri (IMSU)
  • Kano University of Science & Technology, Wudil (KUST)
  • Kaduna State University, Kaduna (KASU)
  • The Ladoke Akintola University of Technology, Ogbomoso (LAUTECH)
  • Nnamdi Azikiwe University, Awka (UNIZIK)
  • Olabisi Onabanjo University, Ago Iwoye
  • Obafemi Awolowo University (OAU)
  • River State University of Science and Technology (RSUST)
  • University of Jos
  • University of Ibadan (UI)
  • University of Benin (UNIBEN)
  • University Of Lagos (Unilag)
  • University of Uyo
  • University of Calabar (UNICAL)
  • University of Nigeria, Nsukka (UNN)

Recommended

Meet aurora imade adeleke, davido’s daughter, cac business name registration, fees, and online portal login, list of tribes in adamawa state, when did davido start music and what was his first song, akwa ibom state university courses, portal and fees, featured today, inec online registration portal and voters card verification process, akwa ibom state culture, taboos, language and meanings, jamb change of institution, course, email and phone number, lateef adedimeji biography: truth about his age, family and net worth, 20 trendy akwa ibom traditional attire for men and women, how much is driver’s license in nigeria, akwa ibom postal code: zip code for cities, towns and villages, akwa ibom state polytechnic courses, portal and school fees, mercy aigbe biography and age accomplishments, frsc driver’s license application portal, registration form and requirements, list of lightweight entertainment movies including selina tested, who is davido’s son david adedeji adeleke jr, who is adewale adeleke davido’s brother what is his net worth, uba customer care number, whatsapp contact, and email addresses, 15 interesting facts about lagos state, does flavour have a wife and who has he dated in the past, selina tested: where to watch the full episodes, ncc nigeria salary structure and functions, meet di’ja’s husband rotimi and their children, read this next, list of universities in delta state, which is the first university in nigeria the 10 oldest institutions, list of federal polytechnics in nigeria and their location, list of 10 cheapest private universities in nigeria, top 10 best private universities in nigeria and their fees, list of best private universities in lagos.

© Buzznigeria.com copyright 2024. All Rights Reserved.

Sinisa Markovic

10 colleges and universities shaping the future of cybersecurity education

Institutions featured on this list often provide undergraduate and graduate degrees, courses, as well as certificate programs tailored to meet the growing demand for cybersecurity professionals in various industries.

cybersecurity colleges universities

Some notable colleges and universities renowned for their cybersecurity programs and courses include:

Carnegie Mellon University (USA)

Information Networking Institute (INI)

The Information Networking Institute (INI) at Carnegie Mellon University (CMU) educates and develops engineers through technical, interdisciplinary master’s degree programs in information networking, security and mobile and IoT engineering that incorporate business and policy perspectives.

Program : Master of Science in Information Security (MSIS)

Georgia Institute of Technology (USA)

Institute for Information Security & Privacy (IISP)

The Georgia Institute of Technology’s Institute for Information Security & Privacy (IISP) is a research institution dedicated to advancing cybersecurity and privacy technologies. Established within Georgia Tech, the IISP serves as a focal point for interdisciplinary research, education, and collaboration in the field of information security and privacy.

Program : Master of Science in Cybersecurity

Massachusetts Institute of Technology (USA)

MIT Department of Electrical Engineering and Computer Science

A joint venture between the Schwarzman College of Computing and the School of Engineering, EECS is grounded in three overlapping sub-units: electrical engineering (EE), computer science (CS), and artificial intelligence and decision-making (AI+D).

  • Computer Science and Engineering
  • Artificial Intelligence and Decision Making

Stanford University (USA)

Cyber Policy Center and Computer Science Department

The Cyber Policy Center brings together researchers across the Stanford campus to solve the biggest issues in cybersecurity, governance and the future of work.

  • Global Digital Policy Incubator
  • The Program on Platform Regulation
  • Geopolitics, Technology, and Governance

SANS Technology Institute (USA)

An independent subsidiary of SANS, the SANS Technology Institute offers graduate programs (master’s degree and graduate certificates) that develop technically-adept leaders and undergraduate programs (bachelor’s degree and undergraduate certificate) for people who want to enter the cybersecurity field.

Program : Cybersecurity Master’s Degree

University of California, Berkeley (USA)

School of Information

The School of Information is a graduate research and education community committed to expanding access to information and to improving its usability, reliability, and credibility while preserving security and privacy. This requires the insights of scholars from diverse fields — information and computer science, design, social sciences, management, law, and policy.

Program : Master of Information and Cybersecurity (MICS)

University of Cambridge (UK)

Department of Computer Science and Technology

The Department of Computer Science and Technology (formerly known as the Computer Laboratory) is the academic department within the University of Cambridge that encompasses computer science, along with many aspects of technology, engineering and mathematics.

  • Cybersecurity
  • Software and Security Engineering

University of Oxford (UK)

Global Cyber Security Capacity Centre (GCSCC)

The Global Cyber Security Capacity Centre (GCSCC) is an international centre for research on efficient and effective cybersecurity capacity-building, promoting an increase in the scale, pace, quality and impact of cybersecurity capacity-building initiatives across the world.

Course : MSc in Software and Systems Security

Technische Universität Darmstadt (Germany)

Department of Computer Science

The scientists of the Department of Computer Science combine their diverse research activities in three main research areas:

  • Artificial Intelligence
  • Complex Networked Systems
  • Cybersecurity & Privacy

Program : Master’s degree program IT Security

Tel Aviv University (Israel)

Research is a cornerstone of Tel Aviv University’s mission, with its scholars making discoveries in fields ranging from biotechnology and cybersecurity to archaeology and social sciences.

  • Cyber Security Program
  • Cyber Politics & Government

Whitepaper

Fill out the form to get your copy of this whitepaper and find out what it takes to join a growing industry:

  • I have read and agree to the Privacy Policy and would like to be updated on ISC2 certifications, educational resources, and offers.
  • Carnegie Mellon University
  • cybersecurity
  • skill development
  • University of Cambridge

Featured news

  • Palo Alto firewalls: CVE-2024-3400 exploitation and PoCs for persistence after resets/upgrades
  • Triangulation fraud: The costly scam hitting online retailers
  • Tracecat: Open-source SOAR
  • eBook: Do you have what it takes to lead in cybersecurity?
  • eBook: Why CISSP?
  • The CISO’s guide to reducing the SaaS attack surface
  • Why the automotive sector is a target for email-based cyber attacks

Study Abroad Aide

Study Abroad Aide

The Best Study Abroad Site

25 Best Universities In Moscow For International Students 2024

Moscow is surely one of the places you should be considering if you’re looking to study in Russia . This location has a lot to offer for international students, including world-class universities and exciting student experiences. With more than 59 universities and colleges in Moscow, you’ll surely have a wide range of choices.

Out of 59 universities in Moscow , RUDN University and Moscow State University are the top-performing schools in Moscow. This list covers both public and private institutions in Moscow.

To help you narrow down your school options, we’ve compiled the best universities in Moscow. We based our rankings on academic reputations from reputable sources and the number of international students. By doing this, you’ll have an efficient way of comparing your target universities and choose your host university in Moscow.

How do I get admission to the best universities in Moscow?

Applying to the universities in Moscow involves submitting requirements and following specific admissions procedures set by your chosen university. The requirements often include a student visa, application packages, and language scores. Check out our guide for international students who want to study in Moscow to learn more about applying for admission in this country’s universities!

How much are the tuition fees at the best universities in Moscow?

Tuition fees at Moscow’s universities can vary depending on which university, degree, and program you will be enrolling in. Generally, tuition fees for the bachelor’s level range from 0 RUB to 730,000 RUB , while tuition fees for the master’s level range from 0 RUB to 870,000 RUB. If you are interested, check out the affordable universities in Moscow !

As we cover the best universities in Moscow for international students, feel free to check out the university’s information on Admission, Tuition, Courses, and Language Requirements by looking at the individual university pages.

Top Universities in Moscow for International Students

1 rudn university.

RUDN University is one of the best universities in the capital city of Russia and is known as The People’s Friendship University of Russia. This higher education institution is mostly known for the high number of international students attracted to this university’s high ranking. The university is ranked among the world’s top 500 universities, which speaks volumes about the level of study this university provides.

2 Moscow State University

Moscow State University is one of the largest public universities in Moscow, Russia. This university is the cornerstone of formal higher education, and it provides education to close to 40,000 students. Some of the most attended programs are in the fields of economics, politics, and finance, where students gain real-world experience that may help them in their careers.

3 National Research Nuclear University MEPhI

The National Research Nuclear University MEPhI is one of the world’s most prestigious universities in its field and the perfect place for candidates that would like to specialize in nuclear technology. It focuses on fostering innovation, creativity, and internationalization. The university is known for its wide and highly specialized degree offer and its outstanding research performance. It has multiple institutes that develop studies in areas like nanoengineering, cyber-physical systems, and plasma technologies. These projects are completed in state-of-the-art facilities that include a research nuclear reactor and an accelerator.

4 National Research University Higher School of Economics

The National Research University Higher School of Economics, or otherwise known as HSE University, is one of the best universities of higher education in the capital city of Russia. This institution has one of the largest campuses in the country that houses approximately 50,000 students and can provide them with all the necessary equipment for them to have the best possible experience.

5 National University of Science and Technology MISIS

The National University of Science and Technology MISIS started as a mining academy and then became a steel institute. Over time, it expanded its course offer and modernized its facilities, but it’s still widely known for its programs in metallurgy and mining. Nowadays, the university has six campuses, 8 academic colleges, and multiple research institutes. They also have cutting-edge specialized laboratories in fields such as nanomaterials, cryoelectronic systems, biophysics, casting technologies, and much more!

6 I.M. Sechenov First Moscow State Medical University

I.M. Sechenov First Moscow State Medical University or usually referred to as Sechenov University was founded in 1758, making it the oldest medical school in Russia. It was initially the medical faculty of the Imperial Moscow University and eventually became independent in 1930. At present, the university has more than 18,000 total enrollment and offers undergraduate to Ph.D. programs in Medicine, Sciences, and Professional Education.

7 Plekhanov Russian University of Economics

The Plekhanov Russian University of Economics is a public university with over a century’s history of world-class economics and management education. Programs at the university are strongly focused on practical learning and provide opportunities for students to gain professional and international experience with its numerous partner employers around the world. The university also conducts several initiatives and projects that aim to address different educational, industrial, and social issues. 

8 Russian Presidential Academy of National Economy and Public Administration

The Russian Presidential Academy of National Economy and Public Administration is a very young institution of higher education located in the capital city of Russia. This university has grown in popularity in the region, and it now has over 46,000 students studying in various fields. Despite its youth, this university is ranked among the top 801 universities in the world by the prestigious QS World University Rankings.

9 Bauman University

Bauman University is one of the oldest and most prestigious universities in Russia. It specializes in education and research in applied sciences and engineering. The university boasts excellent programs for all levels of higher education and is home to some of the most advanced scientific laboratories and facilities in the country.

10 Financial University under the Government of the Russian Federation

Ranked among the best universities in Russia and the world, the Financial University under the Government of the Russian Federation is a specialized institution that aims at contributing to the country’s economic development and financial transformation. This is a prestigious university known for being the educational home of many important Russian figures including prominent politicians, millionaires, and CEOs of important companies. It focuses on providing hands-on learning and encouraging critical thinking by using methods like case studies, discussions, and financial projects. It also has partnerships with governmental bodies and major businesses in order to offer workshops, academic collaborations, and internship opportunities.

11 N.R.U. Moscow Power Engineering Institute

N.R.U. Moscow Power Engineering Institute is a public technical university in Moscow with a prominent reputation for producing outstanding scientists and engineers for more than 90. It is also one of the most sought-after universities for aspiring engineers from around the world. The university also has numerous cooperation agreements with foreign universities and companies for its students and faculty to participate in different international programs and activities. 

12 Moscow State Pedagogical University

Moscow State Pedagogical University is a Russian higher education institute that offers Bachelor’s, Master’s, and Doctoral programs. It was established as the Women’s Courses of Higher Education in 1872 and underwent a transformative journey to what it is now. The university is well-recognized with International Partners across the globe, such as the University College of Teacher Education Vienna in Austria, the University of Pardubice in the Czech Republic, and the CY Cergy Paris University in France. Accessibility is a forefront advocacy with dedicated institutes for it, such as the Center for Student Disability Services and Psychological Assistance Center.

13 Mendeleev University of Chemical Technology of Russia

The Mendeleev University of Chemical Technology of Russia is the largest institution that offers education, training, and research in chemical technology in the country. The university was established in 1898 and is dedicated to raising future engineers and specialists who can formulate solutions to the most pressing scientific, industrial, and societal problems. It is also the alma mater of several notable individuals with significant contributions to different branches of science and chemistry.  

14 Russian National Research Medical University

Pirogov Russian National Research Medical University (RSMU) is a private university specializing in medicine located in Moscow, Russia. It was founded in 1906 as the Higher Medical Course for Women. Among the programs available at the university are general medicine, pediatrics, biochemistry, dentistry, pharmacy, social work, psychology, neuroscience, and radiology.

15 Moscow State Institute of International Relations

The Moscow State Institute of International Relations is one of the most prestigious and elite universities in Russia and the world, making it the perfect place for studying anything related to diplomacy, economics, international affairs, or languages. This institution strives for internationalization, which is why it has partnerships with multiple universities worldwide with which it offers dozens of double and triple degrees. It has different research institutes that develop studies in diplomacy, governance, energy policy, and global matters. Additionally, it constantly collaborates with international organizations and local governmental bodies.

16 Moscow Aviation Institute

Moscow Aviation Institute is an aviation school that offers Bachelor’s, Master’s, and Postgraduate level programs. Both the Russian and English languages are used as mediums of instruction. Aside from these university programs, Pre-university and Professional training programs are also offered. Nine dormitory options filled with quality service facilities are present for student residents. Three Metro stations are also near the campus, providing sufficient access for students with no personal vehicles.

17 Gubkin Russian State University of Oil and Gas

The Gubkin Russian State University of Oil and Gas is a specialized institution of higher education. This institution mostly focuses on developments in the field of oil and gas extraction and the safety of this direction. The main attraction for students is the affordable tuition prices for top-of-the-crop programs that are taught by experts in the relevant fields.

18 Russian State Social University

The Russian State Social University is a distinguished university in the country of Russia because it provides all levels of study to both domestic and international students with the opportunity to gain various financial aid through university or state-funded scholarships. This university is located in Moscow and was founded in 1991, but it is making its way slowly toward the ranking of the best universities in Russia.

19 Moscow Polytechnic University

Established in 1865, Moscow Polytechnic University, or Moscow Poly, is one of Russia’s educational institutions that provide technology-related programs. Currently, they deliver education to more than 16,000 local and international students. As they provide top-quality education and research in various fields, they also have various activities on campus to foster diversity.

20 Synergy University

Synergy University was established in 1988 and is one of the top business schools in Russia. The university’s programs are focused on providing strong fundamental knowledge of different principles, theories, and concepts and combining it with experiential learning to develop its students’ skill sets, thereby preparing them for the professional world. Synergy University has a student population of over 65,000 and has international campuses and branches in Dubai, London, United Arab Emirates, and New York.

21 National Research University of Electronic Technology

The National Research University of Electronic Technology is a public university that offers undergraduate and graduate-level education. In total, there are 40 Bachelor’s programs and 42 Master’s programs. It was founded in 1965 and was only officially renamed to its current title in 2011. Annual enrolment is estimated to be 4500 students, and over 600 academic staff are present to handle them. Not only do other universities partner with the National Research University of Electronic Technology, but over 131 corporations also cooperate with it.

22 Russian State University of Physical Culture, Sport and Tourism

Russian State University of Physical Culture, Sport, and Tourism is a leading sports university in Russia. It was established in 1918 and is known for producing over 200 outstanding athletes that have made their marks in prestigious international competitions such as the Olympics. The academic and research programs at the university are conducted by highly qualified and reputable coaches, experts, and scientists to further enhance athlete training and prepare future sports champions and professionals. 

23 Moscow City Teachers’ Training University

Moscow City Teachers’ Training University is a public university in Moscow, Russia. The Ministry of Education established it in 1995 as a pedagogical university, with only 1300 students in its first year. The university currently has over 18,000 students and offers degree programs in the humanities, natural sciences, sports technology, law, business, and language studies.

24 New Economic School

The New Economic School (NES) is a private institution located in Moscow that focuses on teaching and research in the field of economics. It takes pride in having a faculty made up of established professionals from the field, most of them holding a Ph.D. NES aims to train students who will be able to make valuable contributions to the growth of Russian society and business.

25 State University of Management

The State University of Management has been a frontrunner in providing management education in Russia for over 100 years. The university offers practice-oriented management education and training in different specializations such as business informatics, hotel management, and advertising. The State University of Management also conducts intensive research and innovative projects aimed at improving its academic programs and responding to the needs of the country’s economy. 

We know that choosing your dream school in Moscow not an easy task. After all, you need to consider other factors like the cost of your education, school background, and population, as it can be overwhelming on your part.

So, to help you out further in weighing your school options for studying in Moscow , make sure to visit our list of the best public and private universities in Moscow! These articles will surely help you in deciding your next study destination!

IMAGES

  1. Guide to Understanding the AP Computer Science Courses

    courses under computer science education

  2. [2021] 500 Free Computer Science Courses from the World's Top CS

    courses under computer science education

  3. Online Course for Computer Science Proper Qualification Now Available

    courses under computer science education

  4. 6 Best Computer Science Courses, Classes and Certificates Online

    courses under computer science education

  5. Best Courses in Computer Science Engineering

    courses under computer science education

  6. Computer Science

    courses under computer science education

VIDEO

  1. Harvard CS50 2023

  2. Harvard CS50 2023

  3. Computer Science

  4. Top 5 Specializations in Computer Science

  5. Top BSc Computer Science Colleges in India #shorts

  6. Supporting your Computer Science department

COMMENTS

  1. Best Computer Science Courses Online [2024]

    For anyone looking to jump into the world of computer science, these five free courses from Coursera offer something for everyone. Take a deep dive into programming with Java with Introduction to Programming with Javaor explore the algorithms and theory of computing with Algorithms, Theory, and Machines.If you are more interested in data science, consider taking Data Science Math Skills.

  2. CS50: Computer Science Courses and Programs from Harvard

    We are excited to offer a series of introductory CS50 courses and Professional Certificate programs from Harvard that are open to learners of all backgrounds looking to explore computer science, mobile app and game development, business technologies, and the art of programming. Play Video.

  3. 10 Best Computer Science Courses to Take in 2022

    Fun Facts. This course has over 18k bookmarks and 120 reviews on Class Central. It is the first of a two-course XSeries Program on edX. The second is Introduction to Computational Thinking and Data Science, which could make for a good follow-up.; One of the instructors, Professor John Guttag, leads the Data Driven Inference Group at MIT's legendary Computer Science and Artificial ...

  4. Computer Science Courses

    CS50 for Lawyers. This course is a variant of Harvard University's introduction to computer science, CS50, designed especially for lawyers (and law students). Free *. 10 weeks long. Available now. Programming. Online.

  5. Computer Science Courses and Certifications

    Learn Computer Science, earn certificates with free online courses from Harvard, Stanford, MIT, University of Pennsylvania and other top universities around the world. Read reviews to decide if a class is right for you.

  6. Best Online Computer Science Courses and Programs

    Computer science jobs. There are many types of computer science jobs, Footnote 5 including: Computer scientists, who explore, construct, and implement complex computing systems, new computing languages, software systems, and other tools to improve user experience with computers. Footnote 6. Network administrators, who regulate the day-to-day operation of computer networks, including local area ...

  7. CS50: Introduction to Computer Science

    An entry-level course taught by David J. Malan, CS50x teaches students how to think algorithmically and solve problems efficiently. Topics include abstraction, algorithms, data structures, encapsulation, resource management, security, software engineering, and web development. Languages include C, Python, SQL, and JavaScript plus CSS and HTML.

  8. Online Computer Science & Engineering Degrees

    With a bachelor's degree in computer science or your master's degree in computer science, you can expect to take courses in programming, security, computer systems, data visualization, and much more.While a bachelor's degree can be a great entry point into the subject matter, a master's degree will deepen your understanding while allowing you the space to specialize in a more niched ...

  9. Introduction to Computer Science and Programming Specialization

    The Specialisation should take approximately 13 weeks to complete. How Computers Work course is 4 weeks long, Introduction to Computer Programming is 3 weeks long, and Mathematics for Computer Science there is 6 weeks long. The courses are flexible so these are indicative timings. Learners can study the courses concurrently but should be ...

  10. Best Online Computer Science Courses

    Online computer science courses can appeal to anyone seeking a flexible and affordable learning pathway. Distance education may benefit people trying to educate themselves while working full time. Older adults worried about whether or not they are too old to learn to code may find computer science online classes a convenient and low-risk way to ...

  11. [2024] 900 Free Computer Science Courses from World's Top Universities

    Einführung in Computer Vision from Technische Universität München (Technical University of Munich) ★★★★☆ (2) Deep Learning for Computer Vision from University of Michigan ★★★★★ (1) Robotics: Vision Intelligence and Machine Learning from University of Pennsylvania. Visual Perception from Columbia University.

  12. Computer science courses: A comprehensive overview

    Computer science courses: A comprehensive overview. Use this guide for tips on computer science courses at the bachelor's, master's, and doctorate level, and learn quick facts about coding ...

  13. Computer Science Degree Overview

    Types of Computer Science Degrees. Students can pursue associate, bachelor's, master's, and doctoral degrees in computer science. Lower levels of education usually take less time to complete and often cost less than advanced degrees, which may lead to better-paying jobs with more responsibility.

  14. Courses in Computer Science and Engineering

    CSE 599H: Computer Science for Social Good The goal of this course is to use computer science tools to tackle real world projects in a productive fashion. The Fall 2017 edition of this course focused on 3D printing and its applications for accessibility, education, sustainability, and the developing world.

  15. CMPSC 190H Quantum Computing

    This course sets the foundational knowledge necessary to understand quantum computing and quantum information science by covering some of the advanced linear algebra tools, and basic quantum mechanics. Students will learn about the four critical postulates of quantum mechanics, explore quantum circuits, and delve into the universal gate set.

  16. Computer Science

    List of courses offered to undergraduate students for the Department of Computer Science. Resources. ... Cybersecurity Education, Research, and Outreach Center; Machine Intelligence and Data Science (MInDS) Center ... Computer Science Internship. X. X. X. X. X. X. X. Lean More About Our Programs. Degree Information. Explore. Top Careers.

  17. CMPSC 190I Introduction to Deep Learning

    This course offers students an introduction to some of the latest state-of-the-art techniques in the field of deep learning. Throughout the course, students will delve into a wide range of advanced topics and methodologies, including convolutional neural networks (CNNs), recurrent neural networks (RNNs), generative models such as large language models, and transformers, among others.

  18. What Is Computer Science? Meaning, Jobs, and Degrees

    Computer science is the study of computer hardware and software. Those who study computer science, consequently, can specialize in a wide range of interrelated subfields, from artificial intelligence and cryptography to computer engineering and software development. Computer science careers can be found in various industries and organizations ...

  19. CMPSC 291A Neural Information Retrieval

    This course covers advanced topics on information retrieval systems and neural ranking algorithms. The content to be focused includes retrieval, ranking, indexing, and online support for large-scale search services. Recent papers in top conferences on neural information retrieval will be reviewed, and issues in relevance, efficiency, and scalability will be studied.

  20. Computer Science Course List in Nigeria and its Requirements

    Computer Science Related Courses. There are some courses that seem like they are under the computer science discipline but are actually not. Rather, they are their own complete and separate courses with different degree awards but have a few subjects of study in common with computer science. Below are some of them. Education and Computer Science

  21. 10 colleges and universities shaping the future of cybersecurity education

    This requires the insights of scholars from diverse fields — information and computer science, design, social sciences, management, law, and policy. Program : Master of Information and ...

  22. Study Master's degrees in Moscow, Russia

    Moscow has long, cold winters usually lasting from November to the end of March. Temperatures can fluctuate between the city centre and the suburbs between 5-10°C (41-50°F). Heat waves may occur during summer. Average low temperatures are -10°C (15°F) in February, while average highs reach 24°C (76°F) in July. Study a Master's degree in ...

  23. 25 Best Universities In Moscow For International Students 2024

    Percentage of International Students. 11%. Total Number of students - 9,000. International Number of students - 950. Pirogov Russian National Research Medical University (RSMU) is a private university specializing in medicine located in Moscow, Russia. It was founded in 1906 as the Higher Medical Course for Women.

  24. Free courses to launch your career in Computer Science

    Blockchain Security. Infosec. Course. 4.6 (35) Beginner Level. Build in-demand skills in cybersecurity, coding, software engineering, and more in these free, top-rated learning programs.

  25. Michigan Legislature

    (2) The computer science course described in subsection (1) must meet the following criteria: (a) It must be of high quality, as prescribed under this state's computer science standards. (b) It must meet or exceed standards established by the state board of education.

  26. Study Online Courses in Moscow, Russia

    Weather Moscow. Moscow has long, cold winters usually lasting from November to the end of March. Temperatures can fluctuate between the city centre and the suburbs between 5-10°C (41-50°F). Heat waves may occur during summer. Average low temperatures are -10°C (15°F) in February, while average highs reach 24°C (76°F) in July. Study a ...

  27. Mitu-masi

    Preparatory courses • Full-time Set of disciplines related to "Acting skills" Cost per year 65 000 ₽ — 75 000 ₽ We invite schoolchildren, school graduates of previous years and students of Secondary Vocational Education institutions to undergo general training for the Unified State Exam and the Basic State Exam, as well as for the entrance tests of creative orientation.

  28. Best Computer Courses Online with Certificates [2024]

    The best advanced computer courses range from Computer Fundamentals to Computer Vision, Computer Communications, Advanced Computer Vision with TensorFlow, and Computer Forensics. All of these courses provide an ideal pathway for those looking to expand their knowledge of computer science and develop greater skills in programming and software ...

  29. Best Online Associate Degrees In Business Management Of 2024

    Based in Roseburg, Oregon, Umpqua Community College features an online Associate of Applied Science in business management that full-time students can complete in two years if they take courses ...

  30. Computer Science Salary: Your 2024 Guide

    You'll see how a computer science salary can be influenced by factors like industry, location, education, certifications, and company. For Individuals For Businesses For Universities For Governments. Explore. ... If you have no experience in the field, you can consider taking an entry-level course in computer science as a starting point.