Our Courses

Functional Program Design in Scala (Scala 2 version)

Functional Program Design in Scala (Scala 2 version)

In this course you will learn how to apply the functional programming style in the design of larger Scala applications. You'll get to know important new functional programming concepts, from lazy evaluation to structuring your libraries using monads. We'll work on larger and more involved examples, from state space exploration to random testing to discrete circuit simulators. You’ll also learn some best practices on how to write good Scala code in the real world.

  • Course by
  • Self Paced
  • 34 hours
  • English
Monthly Subscription
Included in
  • Starter @ AED 99 + VAT
Know more
Algorithms, Part I

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. Part I covers elementary data structures, sorting, and searching algorithms. Part II focuses on graph- and string-processing algorithms. All the features of this course are available for free.

  • Course by
  • Self Paced
  • 54 hours
  • English
Monthly Subscription
Included in
  • Starter @ AED 99 + VAT
Know more
Data Structures & Algorithms I: ArrayLists, LinkedLists, Stacks and Queues

Data Structures & Algorithms I: ArrayLists, LinkedLists, Stacks and Queues

Work with the principles of data storage in Arrays, ArrayLists & LinkedList nodes. Understand their operations and performance with visualizations. Implement low-level linear, linked data structures with recursive methods, and explore their edge cases. Extend these structures to the Abstract Data Types, Stacks, Queues and Deques.

  • Course by
  • English
Monthly Subscription
Included in
  • Starter @ AED 99 + VAT
Know more
Data Structures & Algorithms II: Binary Trees, Heaps, SkipLists and HashMaps

Data Structures & Algorithms II: Binary Trees, Heaps, SkipLists and HashMaps

Become familiar with nonlinear and hierarchical data structures. Study various tree structures: Binary Trees, BSTs and Heaps. Understand tree operations and algorithms. Learn and implement HashMaps that utilize key-value pairs to store data. Explore probabilistic data structures like SkipLists. Course tools help visualize the structures and performance.

  • Course by
  • Self Paced
  • English
Monthly Subscription
Included in
  • Starter @ AED 99 + VAT
Know more
Data Structures & Algorithms III: AVL and 2-4 Trees, Divide and Conquer Algorithms

Data Structures & Algorithms III: AVL and 2-4 Trees, Divide and Conquer Algorithms

Learn more complex tree data structures, AVL and (2-4) trees. Investigate the balancing techniques found in both tree types. Implement these techniques in AVL operations. Explore sorting algorithms with simple iterative sorts, followed by Divide and Conquer algorithms. Use the course visualizations to understand the performance.

  • Course by
  • Self Paced
  • English
Monthly Subscription
Included in
  • Starter @ AED 99 + VAT
Know more
Automating your BigQuery Data Pipeline with Cloud Dataprep

Automating your BigQuery Data Pipeline with Cloud Dataprep

This is a self-paced lab that takes place in the Google Cloud console. In this lab, you will examine how Dataprep can be used on complicated data structures in BigQuery.

  • Course by
  • Self Paced
  • 1 hour
  • English
Monthly Subscription
Included in
  • Starter @ AED 99 + VAT
Know more
How to Code: Complex Data

How to Code: Complex Data

Learn how to design more complex programs, using new data structures, abstraction, and generative recursion.

  • Course by
  • English
Monthly Subscription
Included in
  • Starter @ AED 99 + VAT
Know more
Data Structures Fundamentals

Data Structures Fundamentals

Learn about data structures that are used in computational thinking – both basic and advanced.

  • Course by
  • Self Paced
  • English
Monthly Subscription
Included in
  • Starter @ AED 99 + VAT
Know more
Algorithms and Data Structures Capstone

Algorithms and Data Structures Capstone

Synthesize your knowledge of algorithms and biology to build your own software for solving a biological challenge.

  • Course by
  • Self Paced
  • English
Monthly Subscription
Included in
  • Starter @ AED 99 + VAT
Know more
R Programming Basics for Data Science

R Programming Basics for Data Science

This course introduces you to R language fundamentals and covers common data structures, programming techniques, and how to manipulate data all with the help of the R programming language.

  • Course by
  • 13
  • English
Monthly Subscription
Included in
  • Starter @ AED 99 + VAT
Know more
Introduction to Java and Object-Oriented Programming

Introduction to Java and Object-Oriented Programming

This course provides an introduction to the Java language and object-oriented programming, including an overview of Java syntax and how it differs from a language like Python. Students will learn how to write custom Java classes and methods, and how to test their code using unit testing and test-driven development. Topics include basic data structures like Arrays and ArrayLists and overloading methods.

  • Course by
  • Self Paced
  • 19 hours
  • English
Monthly Subscription
Included in
  • Starter @ AED 99 + VAT
Know more
Process Map Data using C++ Adjacency List Shortest Path

Process Map Data using C++ Adjacency List Shortest Path

In this project you will use the adjacency list data structure and other data structures to find the shortest distance between a set of towns loaded from a file. The shortest path problem is well known in the field of computer science. An adjacency list is probably the best data structure to represent a set of connected vertices to find the shortest path from one vertex to another. One application for shortest paths is in computer networking routing.

  • Course by
  • Self Paced
  • 2 hours
  • English
Monthly Subscription
Option not available
    Buy Now
  • Free
Know more
Dart: Using Functions with Lists and Maps

Dart: Using Functions with Lists and Maps

This is a self-paced lab that takes place in the Google Cloud console. In this lab you will learn how Dart is used with data structures. Understand the utility of Maps and Lists and how these are used to reference infor…

  • Course by
  • Self Paced
  • English
Monthly Subscription
Included in
  • Starter @ AED 99 + VAT
Know more
Java Built in Data Structures

Java Built in Data Structures

In this project you will read weather data from a file and populate a Java ArrayList with the file data. The data is then uniquified in a Set data structure and stored in a HashMap for accessing data by year. Java's collections framework contains data structures that are built for efficiency. They are used to store and retrieve data in various formats. A list such as an ArrayList can be used in place of an array to contain data where the size cannot be determined ahead of time.

  • Course by
  • Self Paced
  • 2 hours
  • English
Monthly Subscription
Option not available
    Buy Now
  • Free
Know more
Computing in Python III: Data Structures

Computing in Python III: Data Structures

Learn more complex ways of handling data, including files, lists, and dictionaries for building complex programs.

  • Course by
  • Self Paced
  • English
Monthly Subscription
Included in
  • Starter @ AED 99 + VAT
Know more
Intro to Operating Systems 3: Concurrency

Intro to Operating Systems 3: Concurrency

Learn the inner workings of operating systems without installing anything! This course is designed for learners who are looking to maximize performance by understanding how operating systems work at a fundamental level. The modules in this course cover concurrency, threads, locks, locking data structures and multi-CPU scheduling. To allow for a truly hands-on, self-paced learning experience, this course is video-free. Assignments contain short explanations with images and runnable code examples with suggested edits to explore code examples further, building a deeper understanding by doing.

  • Course by
  • Self Paced
  • 7 hours
  • English
Monthly Subscription
Included in
  • Starter @ AED 99 + VAT
Know more
Approximation Algorithms

Approximation Algorithms

Many real-world algorithmic problems cannot be solved efficiently using traditional algorithmic tools, for example, because the problems are NP-hard. The goal of the Approximation Algorithms course is to become familiar with important algorithmic concepts and techniques needed to effectively deal with such problems. These techniques apply when we don't require the optimal solution to certain problems, but an approximation that is close to the optimal solution. We will see how to efficiently find such approximations.

  • Course by
  • Self Paced
  • 15 hours
  • English
Monthly Subscription
Included in
  • Starter @ AED 99 + VAT
Know more
Python for Beginners: Data Structures

Python for Beginners: Data Structures

This Guided Project "Python for Beginners: Data Structures" is for individuals who are new to programming and want to learn the basics of Python data structures. In this 2-hour long project-based course, you will learn about lists, tuples, sets, and dictionaries and how to use them to solve real-world problems through a student performance analysis short project.

  • Course by
  • Self Paced
  • 3 hours
  • English
Monthly Subscription
Option not available
    Buy Now
  • Free
Know more
Getting Started with R

Getting Started with R

In this 2 hour-long project, you will learn the basics of R programming language. In addition, you will take your first steps in the use of R programming language for Data Analysis. By the end of this 2-hour long project, you will understand how to use the R GUI called R studio. By extension, you will learn the different data types and data structures used in R. Finally, you will learn how to install packages and how to import data sets into the R studio work space. This course is aimed at learners who are looking to get started with the R programming language.

  • Course by
  • Self Paced
  • 4 hours
  • English
Monthly Subscription
Option not available
    Buy Now
  • Free
Know more
Dart: Variables, Data Structures, Objects, and Conditionals

Dart: Variables, Data Structures, Objects, and Conditionals

This is a self-paced lab that takes place in the Google Cloud console. In this lab you will learn more about the basics of Dart. Build on your knowledge of Dart development…

  • Course by
  • Self Paced
  • English
Monthly Subscription
Included in
  • Starter @ AED 99 + VAT
Know more
Data Science with NumPy, Sets, and Dictionaries

Data Science with NumPy, Sets, and Dictionaries

Become proficient in NumPy, a fundamental Python package crucial for careers in data science. This comprehensive course is tailored to novice programmers aspiring to become data scientists, software developers, data analysts, machine learning engineers, data engineers, or database administrators. Starting with foundational computer science concepts, such as object-oriented programming and data organization using sets and dictionaries, you'll progress to more intricate data structures like arrays, vectors, and matrices.

  • Course by
  • Self Paced
  • 31 hours
  • English
Monthly Subscription
Included in
  • Starter @ AED 99 + VAT
Know more
Analytical Solutions to Common Healthcare Problems

Analytical Solutions to Common Healthcare Problems

In this course, we’re going to go over analytical solutions to common healthcare problems. I will review these business problems and you’ll build out various data structures to organize your data. We’ll then explore ways to group data and categorize medical codes into analytical categories. You will then be able to extract, transform, and load data into data structures required for solving medical problems and be able to also harmonize data from multiple sources. Finally, you will create a data dictionary to communicate the source and value of data.

  • Course by
  • Self Paced
  • 11 hours
  • English
Monthly Subscription
Included in
  • Starter @ AED 99 + VAT
Know more
Dynamic Programming, Greedy Algorithms

Dynamic Programming, Greedy Algorithms

This course covers basic algorithm design techniques such as divide and conquer, dynamic programming, and greedy algorithms. It concludes with a brief introduction to intractability (NP-completeness) and using linear/integer programming solvers for solving optimization problems. We will also cover some advanced topics in data structures. This course can be taken for academic credit as part of CU Boulder’s MS in Data Science or MS in Computer Science degrees offered on the Coursera platform.

  • Course by
  • Self Paced
  • 38 hours
  • English
Monthly Subscription
Included in
  • Starter @ AED 99 + VAT
Know more
Scripting with Python and SQL for Data Engineering

Scripting with Python and SQL for Data Engineering

In this third course of the Python, Bash and SQL Essentials for Data Engineering Specialization, you will explore techniques to work effectively with Python and SQL. We will go through useful data structures in Python scripting and connect to databases like MySQL. Additionally, you will learn how to use a modern text editor to connect and run SQL queries against a real database, performing operations to load and extract data. Finally, you will use extracted data from websites using scraping techniques.

  • Course by
  • Self Paced
  • 18 hours
  • English
Monthly Subscription
Included in
  • Starter @ AED 99 + VAT
Know more
C++ Data Structures in the STL

C++ Data Structures in the STL

In this project you will read weather data from a file and populate a C++ Vector with the file data. The data is then uniquified in a Set data structure and stored in a Map for accessing data by year. C++'s standard template library or STL contains data structures or containers that are built for efficiency. They are used to store and retrieve data in various formats. A list such as a Vector can be used in place of an array to contain data where the size cannot be determined ahead of time.

  • Course by
  • Self Paced
  • 3 hours
  • English
Monthly Subscription
Option not available
    Buy Now
  • Free
Know more