Best of Coursera
Top Computer Science Courses

share ›
‹ links

These are the top 100 Computer Science courses and offerings found from analyzing all discussions on Reddit that mention any Coursera course.

#1
Algorithms, Part I
This course covers the essential information that every serious programmer needs to know about algorithms and data structures, with emphasis on applications and scientific performance analysis of Java implementations.
Princeton University
Kevin Wayne
1 reddit posts
385 mentions
#2
Python for Everybody Specialization
This Specialization builds on the success of the Python for Everybody course and will introduce fundamental programming concepts including data structures, networked application program interfaces, and databases, using the Python programming language.
University of Michigan
Charles Russell Severance
14 reddit posts
615 mentions
#3
Bitcoin and Cryptocurrency Technologies
To really understand what is special about Bitcoin, we need to understand how it works at a technical level.
Princeton University
Arvind Narayanan
35 reddit posts
181 mentions
#4
Cryptography I
Cryptography is an indispensable tool for protecting information in computer systems.
Stanford University
Dan Boneh
34 reddit posts
373 mentions
#5
Algorithms Specialization
Algorithms are the heart of computer science, and the subject has countless practical applications as well as intellectual depth.
Stanford University
Tim Roughgarden
1 reddit posts
189 mentions
#6
Build a Modern Computer from First Principles
From Nand to Tetris (Project-Centered Course)
What you’ll achieve: In this project-centered course* you will build a modern computer system, from the ground up.
Hebrew University of Jerusalem
Shimon Schocken
7 reddit posts
207 mentions
#7
Fundamentals of Computing Specialization
This Specialization covers much of the material that first-year Computer Science students take at Rice University.
Rice University
John Greiner
1 reddit posts
263 mentions
#8
Programming for Everybody (Getting Started with Python)
This course aims to teach everyone the basics of programming computers using Python.
University of Michigan
Charles Russell Severance
10 reddit posts
311 mentions
#9
Data Structures and Algorithms Specialization
This specialization is a mix of theory and practice: you will learn algorithmic techniques for solving various computational problems and will implement about 100 algorithmic coding problems in a programming language of your choice.
University of California San Diego
Alexander S. Kulikov
3 reddit posts
219 mentions
#10
Algorithms, Part II
This course covers the essential information that every serious programmer needs to know about algorithms and data structures, with emphasis on applications and scientific performance analysis of Java implementations.
Princeton University
Robert Sedgewick
0 reddit posts
151 mentions
#11
Functional Programming in Scala Specialization
Discover how to write elegant code that works the first time it is run.
École Polytechnique Fédérale de Lausanne
Martin Odersky
8 reddit posts
110 mentions
#12
An Introduction to Interactive Programming in Python (Part 1)
This two-part course is designed to help students with very little or no computing background learn the basics of building simple interactive applications.
Rice University
John Greiner
0 reddit posts
131 mentions
#13
Learn to Program
The Fundamentals
Behind every mouse click and touch-screen tap, there is a computer program that makes things happen.
University of Toronto
Jennifer Campbell
0 reddit posts
92 mentions
#14
Object Oriented Programming in Java Specialization
This Specialization is for aspiring software developers with some programming experience in at least one other programming language (e.
Duke University
Owen Astrachan
0 reddit posts
111 mentions
#15
Programming Languages, Part A
This course is an introduction to the basic concepts of programming languages, with a strong emphasis on functional programming.
University of Washington
Dan Grossman
6 reddit posts
81 mentions
#16
Object Oriented Java Programming Specialization
Data Structures and Beyond
This Specialization covers intermediate topics in software development.
University of California San Diego
Mia Minnes
1 reddit posts
126 mentions
#17
Java Programming and Software Engineering Fundamentals Specialization
Take your first step towards a career in software development with this introduction to Java—one of the most in-demand programming languages and the foundation of the Android operating system.
Duke University
Susan H. Rodger
1 reddit posts
125 mentions
#18
Game Design and Development Specialization
Break into the video game industry with theoretical, technical, and business knowledge from one of the world’s best programs.
Michigan State University
Brian Winn
1 reddit posts
79 mentions
#19
Cybersecurity Specialization
The Cybersecurity Specialization covers the fundamental concepts underlying the construction of secure systems, from the hardware to the software to the human-computer interface, with the use of cryptography to secure interactions.
University of Maryland, College Park
Jennifer Golbeck
6 reddit posts
75 mentions
#20
Ruby on Rails Web Development Specialization
This Specialization covers the fundamentals of web development with Ruby on Rails.
Johns Hopkins University
Kalman Hazins
3 reddit posts
109 mentions
#21
Functional Programming Principles in Scala
Functional programming is becoming increasingly widespread in industry.
École Polytechnique Fédérale de Lausanne
Martin Odersky
0 reddit posts
54 mentions
#22
Interaction Design Specialization
You will learn how to design technologies that bring people joy, rather than frustration.
University of California San Diego
Scott Klemmer
3 reddit posts
84 mentions
#23
Introduction to Discrete Mathematics for Computer Science Specialization
Discrete Math is needed to see mathematical structures in the object you work with, and understand their properties.
University of California San Diego
Alexander S. Kulikov
0 reddit posts
41 mentions
#24
Introduction to Programming with MATLAB
This course teaches computer programming to those with little to no previous experience.
Vanderbilt University
Akos Ledeczi
2 reddit posts
53 mentions
#25
Software Product Management Specialization
In this Software Product Management Specialization, you will master Agile software management practices to lead a team of developers and interact with clients.
University of Alberta
Kenny Wong
0 reddit posts
55 mentions
#26
Web Design for Everybody Specialization
Basics of Web Development & Coding
This Specialization covers how to write syntactically correct HTML5 and CSS3, and how to create interactive web experiences with JavaScript.
University of Michigan
Colleen van Lent, Ph.D.
1 reddit posts
104 mentions
#27
Python 3 Programming Specialization
This specialization teaches the fundamentals of programming in Python 3.
University of Michigan
Paul Resnick
0 reddit posts
18 mentions
#28
Build a Modern Computer from First Principles
Nand to Tetris Part II (project-centered course)
In this project-centered course you will build a modern software hierarchy, designed to enable the translation and execution of object-based, high-level languages on a bare-bone computer hardware platform.
Hebrew University of Jerusalem
Shimon Schocken
2 reddit posts
33 mentions
#29
Audio Signal Processing for Music Applications
In this course you will learn about audio signal processing methodologies that are specific for music and of use in real applications.
Universitat Pompeu Fabra of Barcelona
Xavier Serra
2 reddit posts
21 mentions
#30
Object Oriented Programming in Java
Welcome to our course on Object Oriented Programming in Java using data visualization.
University of California San Diego
Mia Minnes
0 reddit posts
39 mentions
#31
Responsive Website Development and Design Specialization
Responsive web design is all about creating the best user experience regardless of whether a user is accessing your site from a desktop computer, a mobile phone, or a tablet.
University of London
Dr Matthew Yee-King
0 reddit posts
72 mentions
#32
Learn to Program
Crafting Quality Code
Not all programs are created equal.
University of Toronto
Jennifer Campbell
0 reddit posts
28 mentions
#33
HTML, CSS, and Javascript for Web Developers
Do you realize that the only functionality of a web application that the user directly interacts with is through the web page? Implement it poorly and, to the user, the server-side becomes irrelevant! Today’s user expects a lot out of the web page: it has to load fast, expose the desired service, an...
Johns Hopkins University
Yaakov Chaikin
0 reddit posts
35 mentions
#34
User Experience Research and Design Specialization
Integrate UX Research and UX Design to create great products through understanding user needs, rapidly generating prototypes, and evaluating design concepts.
University of Michigan
Mark Newman
5 reddit posts
18 mentions
#35
Computer Science
Programming with a Purpose
The basis for education in the last millennium was “reading, writing, and arithmetic;” now it is reading, writing, and computing.
Princeton University
Robert Sedgewick
0 reddit posts
19 mentions
#36
Full-Stack Web Development with React Specialization
Learn front-end and hybrid mobile development, with server-side support, for implementing a multi-platform solution.
The Hong Kong University of Science and Technology
Jogesh K. Muppala
0 reddit posts
28 mentions
#37
Introduction to TensorFlow for Artificial Intelligence, Machine Learning, and Deep Learning
If you are a software developer who wants to build scalable AI-powered algorithms, you need to understand how to use the tools to build them.
deeplearning.ai
Laurence Moroney
0 reddit posts
16 mentions
#38
Gamification
Gamification is the application of game elements and digital game design techniques to non-game problems, such as business and social impact challenges.
University of Pennsylvania
Kevin Werbach
7 reddit posts
30 mentions
#39
Accelerated Computer Science Fundamentals Specialization
Topics covered by this Specialization include basic object-oriented programming, the analysis of asymptotic algorithmic run times, and the implementation of basic data structures including arrays, hash tables, linked lists, trees, heaps and graphs, as well as algorithms for traversals, rebalancing a...
University of Illinois at Urbana-Champaign
Wade Fagen-Ulmschneider
0 reddit posts
20 mentions
#40
Introduction to Game Development
If you love games and want to learn how to make them, then this course will start you down that path.
Michigan State University
Brian Winn
0 reddit posts
24 mentions
#41
Algorithmic Toolbox
The course covers basic algorithmic techniques and ideas for computational problems arising frequently in practical applications: sorting and searching, divide and conquer, greedy algorithms, dynamic programming.
University of California San Diego
Alexander S. Kulikov
0 reddit posts
33 mentions
#42
Android App Development Specialization
This Specialization enables learners to successfully apply core Java programming languages features & software patterns needed to develop maintainable mobile apps comprised of core Android components, as well as fundamental Java I/O & persistence mechanisms.
Vanderbilt University
Dr. Jerry Roth
0 reddit posts
29 mentions
#43
Cryptography
This course will introduce you to the foundations of modern cryptography, with an eye toward practical applications.
University of Maryland, College Park
Jonathan Katz
4 reddit posts
31 mentions
#44
Full Stack Web and Multiplatform Mobile App Development Specialization
Learn front-end and hybrid mobile development, with server-side support, for implementing a multi-platform solution.
The Hong Kong University of Science and Technology
Jogesh K. Muppala
1 reddit posts
50 mentions
#45
The Arduino Platform and C Programming
The Arduino is an open-source computer hardware/software platform for building digital devices and interactive objects that can sense and control the physical world around them.
University of California, Irvine
Ian Harris
1 reddit posts
17 mentions
#46
Discrete Optimization
Tired of solving Sudokus by hand? This class teaches you how to solve complex search problems with discrete optimization concepts and algorithms, including constraint programming, local search, and mixed-integer programming.
The University of Melbourne
Professor Pascal Van Hentenryck
0 reddit posts
23 mentions
#47
Introduction to Programming in C Specialization
This specialization develops strong programming fundamentals for learners who want to solve complex problems by writing computer programs.
Duke University
Andrew D. Hilton
2 reddit posts
27 mentions
#48
Using Databases with Python
This course will introduce students to the basics of the Structured Query Language (SQL) as well as basic database design for storing data as part of a multi-step data gathering, analysis, and processing effort.
University of Michigan
Charles Russell Severance
1 reddit posts
27 mentions
#49
C# Programming for Unity Game Development Specialization
This specialization is intended for beginning programmers who want to learn how to program Unity games using C#.
University of Colorado System
Dr. Tim "Dr. T" Chamillard
1 reddit posts
19 mentions
#50
Blockchain Specialization
This specialization introduces blockchain, a revolutionary technology that enables peer-to-peer transfer of digital assets without any intermediaries, and is predicted to be just as impactful as the Internet.
University at Buffalo
Bina Ramamurthy
1 reddit posts
17 mentions
#51
C++ For C Programmers, Part A
This course is for experienced C programmers who want to program in C++.
University of California, Santa Cruz
Ira Pohl
0 reddit posts
22 mentions
#52
Parallel, Concurrent, and Distributed Programming in Java Specialization
Parallel, concurrent, and distributed programming underlies software in multiple domains, ranging from biomedical research to financial services.
Rice University
Vivek Sarkar
0 reddit posts
20 mentions
#53
Data Structures
A good algorithm usually comes together with a set of good data structures that allow the algorithm to manipulate the data efficiently.
University of California San Diego
Alexander S. Kulikov
0 reddit posts
38 mentions
#54
Python Programming
A Concise Introduction
The goal of the course is to introduce students to Python Version 3.
Wesleyan University
Bill Boyd
0 reddit posts
11 mentions
#55
Programming Foundations with JavaScript, HTML and CSS
Learn foundational programming concepts (e.
Duke University
Susan H. Rodger
0 reddit posts
27 mentions
#56
Using Python to Access Web Data
This course will show how one can treat the Internet as a source of data.
University of Michigan
Charles Russell Severance
0 reddit posts
21 mentions
#57
Software Defined Networking
In this course, you will learn about software defined networking and how it is changing the way communications networks are managed, maintained, and secured.
The University of Chicago
Dr. Nick Feamster
2 reddit posts
19 mentions
#58
Internet History, Technology, and Security
The impact of technology and networks on our lives, culture, and society continues to increase.
University of Michigan
Charles Russell Severance
0 reddit posts
25 mentions
#59
Mastering the Software Engineering Interview
You’ve hit a major milestone as a computer scientist and are becoming a capable programmer.
University of California San Diego
Mia Minnes
0 reddit posts
18 mentions
#60
Python Data Structures
This course will introduce the core data structures of the Python programming language.
University of Michigan
Charles Russell Severance
1 reddit posts
53 mentions
#61
Cloud Computing Specialization
The Cloud Computing Specialization takes you on a tour through cloud computing systems.
University of Illinois at Urbana-Champaign
Indranil Gupta
0 reddit posts
25 mentions
#62
An Introduction to Interactive Programming in Python (Part 2)
This two-part course is designed to help students with very little or no computing background learn the basics of building simple interactive applications.
Rice University
Joe Warren
0 reddit posts
20 mentions
#63
Control of Mobile Robots
Control of Mobile Robots is a course that focuses on the application of modern control theory to the problem of making robots move around in safe and effective ways.
Georgia Institute of Technology
Dr. Magnus Egerstedt
0 reddit posts
13 mentions
#64
Data Structures and Performance
How do Java programs deal with vast quantities of data? Many of the data structures and algorithms that work with introductory toy examples break when applications process real, large data sets.
University of California San Diego
Christine Alvarado
0 reddit posts
22 mentions
#65
Algorithmic Thinking (Part 1)
Experienced Computer Scientists analyze and solve computational problems at a level of abstraction that is beyond that of any particular programming language.
Rice University
Luay Nakhleh
0 reddit posts
19 mentions
#66
Securing Digital Democracy
In this course, you'll learn what every citizen should know about the security risks--and future potential — of electronic voting and Internet voting.
University of Michigan
J. Alex Halderman
1 reddit posts
14 mentions
#67
Creative Programming for Digital Media & Mobile Apps
This course is for anyone who would like to apply their technical skills to creative work ranging from video games to art installations to interactive music, and also for artists who would like to use programming in their artistic practice.
University of London
Dr Marco Gillies
4 reddit posts
15 mentions
#68
Divide and Conquer, Sorting and Searching, and Randomized Algorithms
The primary topics in this part of the specialization are: asymptotic ("Big-oh") notation, sorting and searching, divide and conquer (master method, integer and matrix multiplication, closest pair), and randomized algorithms (QuickSort, contraction algorithm for min cuts).
Stanford University
Tim Roughgarden
1 reddit posts
12 mentions
#69
Programming Languages, Part B
[As described below, this is Part B of a 3-part course.
University of Washington
Dan Grossman
0 reddit posts
12 mentions
#70
Human-Centered Design
an Introduction
In this course, you will learn how to design technologies that bring people joy, rather than frustration.
University of California San Diego
Scott Klemmer
0 reddit posts
14 mentions
#71
Database Management Essentials
Database Management Essentials provides the foundation you need for a career in database development, data warehousing, or business intelligence, as well as for the entire Data Warehousing for Business Intelligence specialization.
University of Colorado System
Michael Mannino
0 reddit posts
20 mentions
#72
iOS App Development with Swift Specialization
Master Swift, design elegant interactions, and create a fully functioning iOS app.
University of Toronto
Parham Aarabi
1 reddit posts
35 mentions
#73
Principles of Game Design
You have a great idea for a game.
Michigan State University
Casey O'Donnell
0 reddit posts
10 mentions
#74
Programming Languages, Part C
[As described below, this is Part C of a 3-part course.
University of Washington
Dan Grossman
0 reddit posts
11 mentions
#75
The Raspberry Pi Platform and Python Programming for the Raspberry Pi
The Raspberry Pi is a small, affordable single-board computer that you will use to design and develop fun and practical IoT devices while learning programming and computer hardware.
University of California, Irvine
Ian Harris
2 reddit posts
9 mentions
#76
Ruby on Rails
An Introduction
Did you ever want to build a web application? Perhaps you even started down that path in a language like Java or C#, when you realized that there was so much “climbing the mountain” that you had to do? Maybe you have heard about web services being all the rage, but thought they were too complicated...
Johns Hopkins University
Kalman Hazins
0 reddit posts
18 mentions
#77
Software Security
This course we will explore the foundations of software security.
University of Maryland, College Park
Michael Hicks
1 reddit posts
13 mentions
#78
Google Cloud Platform Fundamentals for AWS Professionals
This accelerated 6-hour course with labs introduces AWS professionals to the core capabilities of Google Cloud Platform (GCP) in the four technology pillars: networking, compute, storage, and database.
Google Cloud
Google Cloud Training
0 reddit posts
10 mentions
#79
Advanced Data Structures in Java
How does Google Maps plan the best route for getting around town given current traffic conditions? How does an internet router forward packets of network traffic to minimize delay? How does an aid group allocate resources to its affiliated local partners? To solve such problems, we first represen...
University of California San Diego
Leo Porter
0 reddit posts
16 mentions
#80
Code Yourself! An Introduction to Programming
Have you ever wished you knew how to program, but had no idea where to start from? This course will teach you how to program in Scratch, an easy to use visual programming language.
The University of Edinburgh
Dr Areti Manataki
0 reddit posts
18 mentions
#81
Analysis of Algorithms
This course teaches a calculus that enables precise quantitative predictions of large combinatorial structures.
Princeton University
Robert Sedgewick
0 reddit posts
9 mentions
#82
Java Programming
Solving Problems with Software
Learn to code in Java and improve your programming and problem-solving skills.
Duke University
Owen Astrachan
0 reddit posts
25 mentions
#83
User Interface Design Specialization
In this Specialization, you will learn industry-standard theory and methods for developing successful user interfaces (UIs).
University of Minnesota
Loren Terveen
0 reddit posts
9 mentions
#84
Single Page Web Applications with AngularJS
Do you want to write powerful, maintainable, and testable front end applications faster and with less code? Then consider joining this course to gain skills in one of the most popular Single Page Application (SPA) frameworks today, AngularJS.
Johns Hopkins University
Yaakov Chaikin
0 reddit posts
10 mentions
#85
Functional Program Design in Scala
In this course you will learn how to apply the functional programming style in the design of larger applications.
École Polytechnique Fédérale de Lausanne
Martin Odersky
0 reddit posts
10 mentions
#86
Networking and Security in iOS Applications
You will learn to extend your knowledge of making iOS apps so that they can securely interact with web services and receive push notifications.
University of California, Irvine
Don Patterson
0 reddit posts
7 mentions
#87
Programming Mobile Applications for Android Handheld Systems
Part 1
This course introduces you to the design and implementation of Android applications for mobile devices.
University of Maryland, College Park
Dr. Adam Porter
0 reddit posts
15 mentions
#88
Java for Android
This MOOC teaches you how to program core features and classes from the Java programming language that are used in Android, which is the dominant platform for developing and deploying mobile device apps.
Vanderbilt University
Dr. Jerry Roth
0 reddit posts
11 mentions
#89
Java Programming
Arrays, Lists, and Structured Data
Build on the software engineering skills you learned in “Java Programming: Solving Problems with Software” by learning new data structures.
Duke University
Andrew D. Hilton
0 reddit posts
15 mentions
#90
Introduction to Web Development
This course is designed to start you on a path toward future studies in web development and design, no matter how little experience or technical knowledge you currently have.
University of California, Davis
Daniel Randall
0 reddit posts
7 mentions
#91
Parallel programming
With every smartphone and computer now boasting multiple processors, the use of functional ideas to facilitate parallel programming is becoming increasingly widespread.
École Polytechnique Fédérale de Lausanne
Prof. Viktor Kuncak
1 reddit posts
8 mentions
#92
Introduction to Meteor.js Development
In this course, you will learn how to create a complete, multi-user web site using the Meteor.
University of London
Dr Matthew Yee-King
0 reddit posts
14 mentions
#93
Java Programming
Principles of Software Design
Solve real world problems with Java using multiple classes.
Duke University
Robert Duvall
0 reddit posts
13 mentions
#94
Web Applications for Everybody Specialization
This Specialization is an introduction to building web applications for anybody who already has a basic understanding of responsive web design with JavaScript, HTML, and CSS.
University of Michigan
Charles Russell Severance
0 reddit posts
9 mentions
#95
Cybersecurity and Its Ten Domains
This course is designed to introduce students, working professionals and the community to the exciting field of cybersecurity.
University System of Georgia
Dr. Humayun Zafar
1 reddit posts
4 mentions
#96
Computer Science
Algorithms, Theory, and Machines
This course introduces the broader discipline of computer science to people having basic familiarity with Java programming.
Princeton University
Robert Sedgewick
0 reddit posts
11 mentions
#97
Introduction to CSS3
The web today is almost unrecognizable from the early days of white pages with lists of blue links.
University of Michigan
Colleen van Lent, Ph.D.
0 reddit posts
15 mentions
#98
Responsive Website Basics
Code with HTML, CSS, and JavaScript
In this course you will learn three key website programming and design languages: HTML, CSS and JavaScript.
University of London
Dr Matthew Yee-King
0 reddit posts
13 mentions
#99
Interactive Computer Graphics
Computer graphics can be a powerful tool for supporting visual problem solving, and interactivity plays a central role in harnessing the users' creativity.
The University of Tokyo
Takeo Igarashi
0 reddit posts
15 mentions
#100
Approximation Algorithms Part I
Approximation algorithms, Part I How efficiently can you pack objects into a minimum number of boxes? How well can you cluster nodes so as to cheaply separate a network into components around a few centers? These are examples of NP-hard combinatorial optimization problems.
École normale supérieure
Claire Mathieu
0 reddit posts
12 mentions