Computer Science Specializations Fundamentals of Computer Science (10 specializations) # Specialization Course Name Hrs 01 Getting started with Google WorkspaceSpecializationby Google Cloud Gmail 3 Google Calendar 2 Google Drive 2 Google Docs 2 Google Sheets 3 Google Slides 3 Google Meet 2 Google Chat 2 Google Sheets - Advanced Topics 2 02 Introduction to Computer Science and ProgrammingSpecializationby University of London Introduction to Computer Programming 20 How Computers Work 15 Mathematics for Computer Science 45 03 Mathematics for EngineersSpecializationby The Hong Kong University of Science and Technology Matrix Algebra for Engineers 20 Numerical Methods for Engineers 40 Differential Equations for Engineers 30 Vector Calculus for Engineers 25 Numerical Methods for Engineers 40 Mathematics for Engineers: The Capstone Course 10 04 by The University of Sydney Introduction to Calculus 55 Introduction to Linear Algebra 40 Introduction to Advanced Calculus 40 05 by Stanford University Introduction to Statistics 15 by University of Zurich An Intuitive Introduction to Probability 20 by Duke University Data Science Math Skills 15 06 Differential Calculus through Data and ModelingSpecializationby Johns Hopkins University Calculus through Data & Modeling: Precalculus Review 10 Calculus through Data & Modeling: Limits & Derivatives 10 Calculus through Data & Modeling: Differentiation Rules 10 Calculus through Data & Modeling: Applying Differentiation 10 07 Integral Calculus through Data and ModelingSpecializationby Johns Hopkins University Calculus through Data & Modelling: Series and Integration 10 Calculus through Data & Modelling: Techniques of Integration 5 Calculus through Data & Modelling: Integration Applications 10 Calculus through Data & Modelling: Vector Calculus 5 08 Precalculus through Data and ModellingSpecializationby Johns Hopkins University Precalculus: Relations and Functions 15 Precalculus: Periodic Functions 10 Precalculus: Mathematical Modeling 10 09 Bayesian StatisticsSpecializationby University of California Santa Cruz Bayesian Statistics: From Concept to Data Analysis 15 Bayesian Statistics: Techniques and Models 30 Bayesian Statistics: Mixture Models 25 Bayesian Statistics: Time Series Analysis 25 Bayesian Statistics: Capstone Project 15 10 Google IT SupportProfessional Certificateby Google Technical Support Fundamentals 25 The Bits and Bytes of Computer Networking 35 Operating Systems and You: Becoming a Power User 30 System Administration and IT Infrastructure Services 30 IT Security: Defense against the digital dark arts 30 C++, Python Programming Languages (10 specializations) # Specialization Course Name Hrs 01 Computational Thinking & Block Programming in K-12 EducationSpecializationby University of California San Diego Sequences and Loops 15 Variables and Nested Loops 20 Conditional Loops and If Statements 15 Nested If Statements and Compound Conditionals 15 Abstraction, Methods, and Lists 10 Computational Thinking for K-12 Educators Capstone 15 02 Introduction to Scripting in PythonSpecializationby Rice University Python Programming Essentials 10 Python Data Representations 10 Python Data Analysis 10 Python Data Visualization 10 03 Python 3 ProgrammingSpecializationby University of Michigan Python Basics 35 Python Functions, Files, and Dictionaries 35 Data Collection and Processing with Python 20 Python Classes and Inheritance 20 Python Project: pillow, tesseract, and opencv 25 04 Fundamentals of ComputingSpecializationby Rice University An Introduction to Interactive Programming in Python (Part 1) 25 An Introduction to Interactive Programming in Python (Part 2) 20 Principles of Computing (Part 1) 20 Principles of Computing (Part 2) 15 Algorithmic Thinking (Part 1) 15 Algorithmic Thinking (Part 2) 15 The Fundamentals of Computing Capstone Exam 5 05 Programming in Python: A Hands-on IntroductionSpecializationby Codio Python Basics: Selection and Iteration 10 Python Basic Structures: Lists, Strings, and Files 10 Python Object Basics: Functions, Recursion, and Objects 10 Object-Oriented Python: Inheritance and Encapsulation 10 06 Introductory C ProgrammingSpecializationby Duke University Programming Fundamentals 15 Writing, Running, and Fixing Code in C 15 Pointers, Arrays, and Recursion 15 Interacting with the System and Managing Memory 25 07 Computational Thinking with Beginning C ProgrammingSpecializationby University of Colorado Boulder Algorithms, Data Collection, and Starting to Code 15 Data Analysis and Representation, Selection and Iteration 10 Abstraction, Problem Decomposition, and Functions 20 Simulation, Algorithm Analysis, and Pointers 15 08 Coding for Everyone: C and C++Specializationby University of California Santa Cruz C for Everyone: Programming Fundamentals 25 C for Everyone: Structured Programming 20 C++ For C Programmers, Part A 20 C++ For C Programmers, Part B 20 09 Programming in C++: A Hands-on IntroductionSpecializationby Codio C++ Basics: Selection and Iteration 10 C++ Basic Structures: Vectors, Pointers, Strings, and Files 10 C++ Object Basics: Functions, Recursion, and Objects 10 Object-Oriented C++: Inheritance and Encapsulation 10 10 Object Oriented ProgrammingSpecializationby University of London Introduction to Object-Oriented Programming in C++ 10 C++ Programming: Classes and Data 10 Object-Oriented Programming in C++: Functions 10 Working with Objects in C++ 15 Use C++ to build a Crypto Trading Platform: Final System 10 Java, C# Programming Languages (8 specializations) # Specialization Course Name Hrs 01 Core JavaSpecializationby LearnQuest Introduction to Java 15 Introduction to Object-Oriented Programming with Java 20 Object-Oriented Hierarchies in Java 20 Java Class Library 30 02 Object Oriented Java Programming: Data Structures and BeyondSpecializationby University of California San Diego Object Oriented Programming in Java 40 Data Structures and Performance 40 Advanced Data Structures in Java 30 Mastering the Software Engineering Interview 20 Capstone: Analyzing (Social) Network Data 20 03 Object Oriented Programming in JavaSpecializationby University of California San Diego Java Programming: Solving Problems with Software 15 Java Programming: Arrays, Lists, and Structured Data 15 Object Oriented Programming in Java 40 Data Structures and Performance 40 04 Java as a Second LanguageSpecializationby LearnQuest Introduction to Java as a Second Language 10 The Java Language 10 Writing Java Application Code 15 05 Programming in Java: A Hands-on IntroductionSpecializationby Codio Java Basics: Selection and Iteration 10 Java Basic Structures: Arrays, Strings, and Files 10 Java Object Basics: Functions, Recursion, and Objects 10 Object-Oriented Java: Inheritance and Encapsulation 10 Core Java 10 06 Java Enterprise EditionSpecializationby LearnQuest Introduction to Java Enterprise Edition (EE) 10 Managing Scope in a Java Enterprise Edition Application 15 Java Servlet Pages (JSPs) 15 Enterprise Java Beans (EJBs) and the Jakarta Persistence API (JPA) 15 07 Learn to Teach JavaSpecializationby University of California San Diego Learn to Teach Java: Sequences, Primitive Types and Using Objects 15 Learn to Teach Java: Boolean Expressions, If Statements, and Iteration 15 Learn to Teach Java: Writing Classes and Arrays 15 Learn to Teach Java: ArrayLists and 2D Arrays 15 Learn to Teach Java: Inheritance and Recursion 15 08 Java TestingSpecializationby LearnQuest Overview of JUnit Testing 10 Mocking with JUnit 10 Java Testing: An Introduction to TDD 10 Parameterized and Dynamic Testing in JUnit 10 Data Structures and Algorithms (8 specializations) # Specialization Course Name Hrs 01 Introduction to Discrete Mathematics for Computer ScienceSpecializationby University of California San Diego Mathematical Thinking in Computer Science 35 Combinatorics and Probability 20 Introduction to Graph Theory 20 Number Theory and Cryptography 20 Delivery Problem 15 02 by Shanghai Jiao Tong University Discrete Mathematics 45 03 by University of California San Diego Data Structures and Performance 45 04 Accelerated Computer Science FundamentalsSpecializationby University of Illinois at Urbana-Champaign Object-Oriented Data Structures in C++ 25 Ordered Data Structures 20 Unordered Data Structures 20 05 AlgorithmsSpecializationby Stanford University Divide and Conquer, Sorting and Searching, and Randomized Algorithms 15 Graph Search, Shortest Paths, and Data Structures 15 Greedy Algorithms, Minimum Spanning Trees, and Dynamic Programming 15 Shortest Paths Revisited, NP-Complete Problems and What To Do About Them 15 06 Data Structures and AlgorithmsSpecializationby University of California San Diego Algorithmic Toolbox 35 Data Structures 25 Algorithms on Graphs 55 Algorithms on Strings 20 Advanced Algorithms and Complexity 25 Genome Assembly Programming Challenge 20 07 Foundations of Data Structures and AlgorithmsSpecializationby University of Colorado Boulder Algorithms for Searching, Sorting, and Indexing 35 Trees and Graphs: Basics 35 Dynamic Programming, Greedy Algorithms 40 08 by Princeton University Computer Science: Programming with a Purpose 90 Analysis of Algorithms 20 Algorithms, Part I 55 Algorithms, Part II 65 Computer Science: Algorithms, Theory, and Machines 20 Operating Systems and Parallel Computing (10 specializations) # Specialization Course Name Hrs 01 Open Source Software Development, Linux and GitSpecializationby The Linux Foundation Open Source Software Development Methods 10 Linux for Developers 20 Linux Tools for Developers 20 Using Git for Distributed Development 20 02 Learning Linux for LFCA CertificationSpecializationby LearnQuest Linux Fundamentals 20 Managing Linux Systems 20 Securing Linux Systems 15 Linux Cloud and DevOps 15 03 Google IT Automation with PythonProfessional Certificateby Google Crash Course on Python 30 Using Python to Interact with the Operating System 30 Introduction to Git and GitHub 20 Troubleshooting and Debugging Techniques 20 Configuration Management and the Cloud 20 Automating Real-World Tasks with Python 15 04 Introduction to Operating SystemsSpecializationby Codio Intro to Operating Systems 1: Virtualization 10 Intro to Operating Systems 2: Memory Management 10 Intro to Operating Systems 3: Concurrency 10 Intro to Operating Systems 4: Persistence 10 05 Unix and Bash for BeginnersSpecializationby Codio Unix System Basics 10 Bash Scripting and System Configuration 10 Connecting to Devices and Networks 10 Container Creation and Orchestration Basics 10 06 C Programming with LinuxSpecializationby Dartmouth C Programming: Getting Started - 1 10 C Programming: Language Foundations - 2 15 C Programming: Modular Programming and Memory Management - 3 10 C Programming: Pointers and Memory Management - 4 10 C Programming: Advanced Data Types - 5 10 Linux Basics: The Command Line Interface - 6 10 C Programming: Using Linux Tools and Libraries - 7 10 07 Computer Security and Systems ManagementSpecializationby University of Colorado Boulder Enterprise System Management and Security 15 Windows Server Management and Security 15 Linux Server Management and Security 15 Planning, Auditing and Maintaining Enterprise Systems 15 08 Programming with Google GoSpecializationby University of California, Irvine Getting Started with Go 10 Functions, Methods, and Interfaces in Go 10 Concurrency in Go 10 09 GPU ProgrammingSpecializationby Johns Hopkins University Introduction to Concurrent Programming with GPUs 20 Introduction to Parallel Programming with CUDA 20 CUDA at Scale for the Enterprise 30 CUDA Advanced Libraries 25 10 Parallel, Concurrent, and Distributed Programming in JavaSpecializationby Rice University Parallel Programming in Java 20 Concurrent Programming in Java 20 Distributed Programming in Java 20