Get $1 credit for every $25 spent!

The 2022 All-in-One Computer Science Certification Bundle

Ending In:
Add to Cart - $34.99
Add to Cart ($34.99)
$2,200
98% off
wishlist
Courses
11
Lessons
1,005
Enrolled
368

What's Included

Product Details

Access
Lifetime
Content
9.0 hours
Lessons
61

The Complete Java Developer Course: From Beginner to Master!

Get Comfortable with One of the World's Most Popular Programming Languages

By Codestars | in Online Courses

Over 7.6 million developers worldwide use Java to create websites, build apps, and write programs - making it one of the most popular programming languages around! It's an all-purpose language that can run on any platform, it's quick, easy to learn, highly versatile, and there's a huge community of support online as well. This Java course is aimed at beginners and is designed to get students coding in Java as quickly and confidently as possible! There are practical, hands-on coding challenges in every lecture, so you can practice the code straight away and make sure you've mastered every line! In addition, you'll learn all the best tips, tricks, and theories behind the code while also building some exciting portfolio projects.

4.4/5 average rating: ★ ★ ★ ★

  • Access 61 lectures & 9 hours of content 24/7
  • Master the fundamentals of Java programming!
  • Learn all the tips, tricks, & theory behind the code!
  • Build exciting portfolio projects - put your new skills to work straight away
  • Upskill for a project or career change
Rob Percival | Codestars
4.5/5 Instructor Rating: ★ ★ ★ ★

Rob Percival is a best-selling instructor that wants to revolutionize the way people learn to code by making it simple, logical, fun, and, above all, accessible. He created Codestarswith all other instructors to create & teach courses that are well-structured, super interactive, and easy to understand. Codestars wants to make it as easy as possible for learners of all ages and levels to build functional websites and apps.

Important Details

  • Length of time users can access this course: lifetime
  • Access options: desktop & mobile
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: beginner
  • Have questions on how digital purchases work? Learn more here

Requirements

  • Any device with basic specifications

Course Outline

  • Your First Program
  • Getting Started
    • Section Overview - 1:57
  • Introducing Java
    • Section Overview - 1:12
    • Saying "Hello" to Java - 11:02
    • Variables, Constants, and Data Types - 13:33
    • Primitive vs Reference Types - 11:21
    • Comments - 6:31
    • Arithmetic Operators - 17:33
    • Relational Operators - 14:02
    • Logical Operators - 9:35
    • User Input - 17:13
    • Project - Average of Three - 5:56
    • Project - MadLibs Clone - 17:14
    • Section Wrap-Up - 1:19
  • Control Statements
    • Section Overview - 1:40
    • Control Statements Overview - 9:13
    • Selection Control Statements - 20:39
    • Repetition Control Statements - 17:02
    • Continue and Break Statements - 11:23
    • Random Numbers (Side Topic) - 10:06
    • Project - Learning Packages of the Month Club - 10:09
    • Project - Divisible by Three - 4:55
    • Project - Guess the Number - 14:06
    • Section Wrap-Up - 2:28
  • Arrays and ArrayLists
    • Section Overview - 1:40
    • Arrays - 13:09
    • ArrayLists - 7:00
    • Wrapper Classes - 10:48
    • Project - Working with Arrays - 6:33
    • Project - Working with ArrayLists - 8:15
    • Project - Parallel Arrays/ArrayLists - 7:49
    • Section Wrap-Up - 1:30
  • Strings and the StringBuilder Class
    • Section Overview - 1:04
    • String Methods, Part 1 - 12:55
    • String Methods, Part 2 - 13:06
    • The StringBuilder Class - 8:51
    • Project - Name Permutations - 9:04
    • Section Wrap-Up - 1:42
  • Methods
    • Section Overview - 1:48
    • User-Defined Methods, Part 1 - 14:29
    • User-Defined Methods, Part 2 - 10:43
    • Method Calls and Recursion - 13:54
    • 2D Arrays (Side Topic) - 12:13
    • 2D Arrays (Side Topic) - 5:25
    • Project - Tic-Tac-Toe - 18:25
    • Section Wrap-Up - 1:43
  • Introduction to Classes and Objects
    • Section Overview - 1:45
    • Basics of OOP (Object-Oriented Programming) - 3:20
    • Encapsulation: Fields and Methods - 20:51
    • A Rectangle Class - 15:54
    • A Book Class - 11:55
    • Project - A Bank Account Class - 11:59
    • Project - An Ice Cream Class - 10:01
    • Project - A Circle Class - 10:59
    • Section Wrap-Up - 1:49
  • File I/O and Exceptions
    • Section Overview - 1:17
    • File Input - 19:05
    • File Output - 8:29
    • More File I/O - 11:48
    • Project - Creating Rectangles from File - 11:32
    • Project - Creating Circles from File - 10:21
    • Section Wrap-Up - 1:39

View Full Curriculum


Access
Lifetime
Content
18.0 hours
Lessons
208

The Complete Modern C++ 2021 Course

The Most Comprehensive C++ Tutorial with C++11/14/17 Features

By Umar Lone | in Online Courses

This course teaches C++ as an object-oriented language with modern features. It focuses on teaching C++ concepts, both old and new, with clear examples. It builds upon the basic language facilities used to build more complex programs with classes, operator overloading, composition, inheritance, polymorphism, templates, concurrency, etc. It even digs deep into assembly to understand few concepts better. After every few topics, a quiz is presented that tests your understanding of the previous topics. Have fun learning Modern C++.

4.5/5 average rating: ★ ★ ★ ★

  • Access 208 lectures & 18 hours of content 24/7
  • Learn C++ concepts, both old & new, with clear examples
  • Use C++ as an object-oriented language
  • Demystify function & class templates
  • Use STL components in your applications
  • Write real-world applications in C++
  • Apply Modern C++ (C++11/14/17) in programs
Umar Lone | Trainer, Developer & Founder at Poash Technologies
4.5/5 Instructor Rating: ★ ★ ★ ★

Umar is a civil engineer who found his calling in software development. He never worked as a Civil Engineer as he jumped at the first chance and started teaching C++ & Visual C++ 15 years ago. Currently, Umar trains software professionals in various software companies in different technologies, such as Modern C++, Advanced C++, STL, Design Patterns, Android, Unity, Linux, etc.

He is very passionate about teaching and has trained more than 20,000 software professionals in a teaching career spanning more than 17 years. An avid gamer, Umar is currently trying his hand with game development in Unity & Unreal. He has a few Android applications to his credit, including one on Design Patterns.

Important Details

  • Length of time users can access this course: lifetime
  • Access options: desktop & mobile
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: beginner
  • Have questions on how digital purchases work? Learn more here

Requirements

  • Basic programming knowledge in any computer language
  • Modern C++ compiler, preferably Visual Studio 2015/17/19 community (or XCode, Clang, g++, Cevelop, Eclipse CDT, Code::Blocks)

Course Outline

  • Software Installation
    • Instructor & Course Introduction - 3:01
    • Source Code & Slide Deck
    • Required Software
    • Visual Studio 2015 Installation - 4:32
    • Visual Studio 2017/19 Installation - 2:44
    • CodeBlocks Installation - 5:06
    • Cevelop Installation - 5:31
    • XCode Installation - 3:32
  • Fundamental Language Facilities
    • What is C++? - 3:31
    • First C++ Program - 9:12
    • Compilation & Build - 3:09
    • C++ Fundamental Types - 7:57
    • Basic Console Input/Output - 5:56
    • Functions - I - 9:13
    • Functions - II - 9:05
    • Debugging Basics - 5:40
    • Uniform Initialization - 9:21
    • Pointer Type - 8:25
    • Reference Type - 5:31
    • Reference Vs Pointer - 6:58
    • const Qualifier - 4:19
    • const Qualifier & Compound Types - 7:30
    • Automatic Type Inference (auto) - 7:00
    • Range-based For Loop - I - 4:32
    • Range-based For Loop - II - 6:18
    • Function Overloading - 9:07
    • Default Function Arguments - 3:43
    • Inline Functions - 7:36
    • Function Pointers - 4:53
    • Namespace - 9:24
    • Assignments
    • Quiz
  • Memory Management - I
    • Dynamic Memory Allocation - I (malloc) - 9:36
    • Dynamic Memory Allocation - II (new) - 6:19
    • Dynamic Memory Allocation - III (new[]) - 6:40
    • Dynamic Memory Allocation - IV (2D Arrays) - 5:07
  • Classes & Objects
    • Object Oriented Programming Basics - 5:50
    • Class - 5:30
    • Constructor & Destructor - 4:28
    • Structures - 2:38
    • Non-static data member initialization - 4:39
    • this Pointer - 4:46
    • Constant Member Functions - 3:14
    • Static Members - 5:12
    • Copy Constructor - I - 4:52
    • Copy Constructor - II - 4:40
    • Delegating Constructor - 4:01
    • Default & Deleted Functions - 5:18
    • Quiz
  • Move Semantics
    • Value Categories - 7:10
    • Move Semantics Basics - 3:23
    • Move Semantics Implementation - 3:44
    • Rule of 5 & 0 - 14:30
    • Copy Elision - 8:22
    • std::move Function - 7:52
    • Quiz
  • Operator Overloading
    • Operator Overloading - I (Basics) - 8:28
    • Operator Overloading - II - (Assignment Operator) - 4:17
    • Operator Overloading - III (Global Operators) - 5:48
    • Operator Overloading - IV - (Friend Functions) - 2:29
    • Operator Overloading - V (Smart Pointers) - 5:04
    • Operator Overloading - VI (Smart Pointers) - 4:34
    • Operator Overloading - VII (Rules) - 1:55
    • Type Conversion - I - 5:56
    • Type Conversion - II (Primitive to User-defined) - 5:39
    • Type Conversion - III (User-defined to primitive) - 2:50
    • Initialization vs assignment - 5:18
    • Quiz
  • Memory Management - II
    • unique_ptr - I - 5:11
    • unique_ptr - II - 10:10
    • shared_ptr - 10:27
    • weak_ptr - I - 8:49
    • weak_ptr - II - 6:26
    • Circular Reference & weak_ptr - 10:26
  • More C++ Features
    • enum Type - I - 3:42
    • enum Type - II - 5:32
    • C Style Strings - 6:49
    • C++ std::string - 11:41
    • String Streams - 9:45
    • Constant Expressions (constexpr) - 9:24
    • User-defined Literals - 5:59
    • Initializer List - 8:27
    • Automatic Dynamic Array (vector) - 8:43
    • Union Type - I - 4:51
    • Union Type - II - 4:56
    • Assignments
    • Quiz
  • Object Oriented Programming with C++
    • Inheritance & Composition - 6:01
    • Inheritance & Access Modifiers - 3:54
    • Project - I (Introduction) - 2:06
    • Project - II (Account & Savings classes) - 6:59
    • Project - III (Inheriting Constructor) - 6:31
    • Project - IV (virtual Keyword) - 8:53
    • Project - V (Virtual Mechanism Internals) - 7:11
    • Project - VI (Virtual Mechanism Walkthrough) - 6:42
    • Project VII (override & final Specifiers) - 6:13
    • Project VIII (Upcasting & Downcasting) - 5:45
    • Project - IX (RTTI Overview) - 7:11
    • Project - X (RTTI Operators) - 3:17
    • 13. Inheritance - Project XI - 6:03
    • Abstract Class - 6:03
    • Multiple Inheritance - 9:21
    • Quiz
  • Exception Handling
    • Introduction to Exception Handling - 7:58
    • Catch Handlers - 3:58
    • Stack Unwinding - 6:31
    • Nested Exceptions - 5:10
    • Exceptions in Constructors/Destructors - 7:06
    • noexcept Specifier - 8:20
    • Quiz
  • File I/O
    • Raw String Literals - 4:03
    • Experimental Filesystem Library - 3:49
    • Overview of File I/O - 6:44
    • Error Handling in Files - 5:43
    • File Copy Utility - 3:29
    • Character Input/Output & Seeking - 7:22
    • Binary Input/Output - 8:30
    • Assignments
  • Templates
    • Introduction to Templates - 7:48
    • Template Argument Deduction & Instantiation - 6:27
    • Explicit Specialization - 5:54
    • Nontype Template Arguments - 7:14
    • Perfect Forwarding - I - 7:23
    • Perfect Forwarding - II - 5:32
    • Variadic Templates - I - 9:47
    • Variadic Templates - II - 4:50
    • Class Templates - 8:39
    • Class Explicit Specialization - I - 5:41
    • Class Explicit Specialization - II - 4:02
    • Class Partial Specialization - 6:52
    • Alias Templates - 8:07
    • Static Assertion - 4:19
    • Type Traits - 7:21
    • Assignments
  • Lambda Expressions
    • Function Objects - I - 6:39
    • Function Objects - II - 6:57
    • Lambda Expressions & Syntax - 4:36
    • Lambda Expressions Internals - 5:00
    • Lambda Capture List - I - 8:25
    • Lambda Capture List - II - 4:07
    • Lambda Capture List - III - 5:57
    • Generalized Lambda Capture - 4:33
    • Assignments
    • Quiz
  • Standard Template Library
    • Standard Library Components - 2:50
    • std::array - 4:02
    • std::vector - 4:38
    • std::deque - 2:21
    • std::list & std::forward_list - 4:59
    • std::set & std::multiset - 5:42
    • std::map & std::multimap - 7:34
    • Unordered Containers Overview - 4:38
    • std::unorderedset & std::unorderedmap - 5:48
    • Custom Hasher - 2:42
    • Containers Comparison - 5:04
    • Algorithms - I - 8:15
    • Algorithms - II - 7:04
    • Assignment
    • Quiz
  • Concurrency
    • Concurrency Basics - 5:42
    • Thread Creation - 5:47
    • Passing Arguments To Threads - 4:18
    • Thread Synchronization - 6:17
    • std::lock_guard - 2:45
    • More Thread functions - 7:48
    • Task-based Concurrency - I - 5:07
    • Task-based Concurrency - II - 3:44
    • Task Launch Policies - 4:38
    • std::future Functions - 5:07
    • std::promise - 5:36
    • Exception Propagation In Threads - 3:15
  • C++17 Core Language Additions
    • Deprecated & Removed Features - 3:53
    • Changes To Existing Features - 3:12
    • Attributes - 5:58
    • Feature Test Macros - 5:50
    • if/switch With Initialization - 5:47
    • Inline Variables - 5:45
    • Nested Namespaces - 1:51
    • noexcept Specifier Changes - 3:35
    • constexpr Lambda - 7:47
    • Structured Binding - 8:07
    • Argument Evaluation Order - 6:36
    • Mandatory Copy Elision - I - 4:28
    • Mandatory Copy Elision - II - 4:33
  • C++17 Template Additions
    • Class Template Argument Deduction - 5:41
    • Fold Expressions - I - 4:05
    • Fold Expressions - II - 4:26
    • Fold Expressions - III - 5:51
    • Fold Expressions - IV - 2:34
    • Type Trait Suffixes - 3:22
    • Compile-Time if - I - 7:42
    • Compile-Time if - II - 4:42
  • C++17 Standard Library Additions
    • std::optional - I - 5:18
    • std::optional - II - 3:50
    • std::optional - III - 3:37
    • std::variant - I - 5:57
    • std::variant - II - 4:34
    • std::variant - III (Visitation) - 5:58
    • std::any - 6:33
    • std::string_view - I - 8:39
    • std::string_view - II - 8:13
    • Filesystem Library - I (path) - 5:49
    • Filesystem Library - II (directory_entry) - 7:00
    • Filesystem Library - III (Directory Functions) - 5:09
    • Filesystem Library - IV (File Permissions) - 5:44
    • Parallel Algorithms - I - 3:49
    • Parallel Algorithms - II - 7:32
    • Parallel Algorithms - III - 4:24

View Full Curriculum


Access
Lifetime
Content
14.0 hours
Lessons
126

2021 Complete Ruby on Rails 6 Bootcamp

Start From the Basics of Ruby on Rails & Go All the Way to Creating Your Own Applications

By Tony Staunton | in Online Courses

This is one of the most comprehensive yet straightforward courses for the Ruby programming language and the Ruby on Rails web development framework you can take! Whether you have never programmed before, already know basic syntax, or want to learn about Ruby and Ruby's advanced features on Rails, this course is for you! This course includes full source code for you to download and use offline to learn at your own pace. You also get instructor access so you can ask questions as you learn.

4.5/5 average rating: ★ ★ ★ ★

  • Access 126 lectures & 14 hours of content 24//7
  • Use Ruby & Ruby on Rails professionally
  • Learn advanced Ruby on Rails features, like the deployment & rapid development
  • Understand complex topics, like Ruby blocks, built-in & custom helpers
  • Create web applications with HTML, CSS, testing, version control & production deployment
  • Create 3 Ruby on Rails projects, including a fully-functioning user authentication & login application
  • Understand how to use version control with Git & GitHub
Tony Staunton
4.2/5 Instruction Rating: ★ ★ ★ ★

Tony Staunton is a Python development and productivity consultant, helping over 20,000 students. He loves all things to do with programming, productivity, books, and the internet. Tony created and ran his own software business and won several awards from, a most innovative startup to the best product.

Important Details

  • Length of time users can access this course: lifetime
  • Access options: desktop & mobile
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: beginner
  • Have questions on how digital purchases work? Learn more here

Requirements

  • Any device with basic specifications

Course Outline

  • Course Overview
    • Course Introduction - 4:18
    • Auto-Welcome Message
  • Ruby on Rails Setup
    • Installing Ruby on Rails on Windows - 9:42
    • Installing Ruby on Rails on macOS - 12:48
    • Installing Ruby on Rails using AWS Cloud9 (Online IDE)
  • Your First Ruby on Rails Application
    • Setting up a local Ruby on Rails Web Server - 9:46
    • Creating a Hello World Application - 6:37
    • Introducing version control with Git - 6:16
    • Introducing GitHub - 11:02
    • Deploying to Heroku - 13:26
  • Rapid Rails Application Development
    • Introduction to Scaffolding - 13:28
    • Creating a Users Resource - 14:02
    • Introduction to Controllers - 5:26
    • Creating a Resource to Receive Feedback - 7:32
    • How to Associate Models - 10:27
  • Milestone Project - Orbit Application Setup
    • Setting up the Orbit Application - 13:10
    • Creating a HTML Controller - 5:51
    • How to Configure Rails Routes - 5:30
    • How to Add HTML Pages - 10:21
    • Creating Automated Tests for Page Titles - 6:39
    • How to Create Dynamic Page Titles - 15:09
    • Version Control and Red Green Testing - 6:57
  • A Ruby Crash Course
    • Built-in and Custom Helpers - 9:25
    • Ruby Strings - 5:44
    • Object and Message Passing - 11:18
    • How to Create Methods - 3:20
    • Application Helpers - 3:08
    • Ruby Arrays and Ranges - 13:08
    • Ruby Blocks - 6:05
    • Ruby Hashes and Symbols - 6:04
    • Nested Hashes - 3:49
    • Updating CSS - 2:49
    • Ruby Classes - 3:12
    • Class Inheritance - 7:10
    • Modifying Built-in Classes - 2:39
    • The Controller Class - 3:43
    • The User Class - 12:15
  • Updating the Orbit Application Layout
    • Adding CSS to Orbit - 8:57
    • Adding the Bootstrap Framework to Orbit - 7:36
    • Creating a Header Logo - 4:03
    • Creating Ruby Partials - 8:32
    • The Asset Pipeline - 4:37
    • Implementing SASS - 11:06
    • Adding Layout Links - 8:02
    • Working with Rails Routes - 5:07
    • Adding Integration Tests - 7:27
    • Creating the Initial User Signup - 12:17
    • Running our First Migration - 10:50
  • The User Model
    • Creating the User Model - 8:00
    • User Objects - 6:17
    • Adding User Validations - 4:33
    • Validating for Presence - 7:50
    • Validating for Length - 4:37
    • Validating for Correct Email Address Format - 10:47
    • Validating for Uniqueness - Part 1 - 7:26
    • Validating for Uniqueness - Part 2 - 7:21
    • Adding a Secure Password to our Application - 4:23
    • Secure Passwords and Standards - 5:40
    • Creating and Authenticating a User - 7:49
  • Signing Users Up
    • Add Debug Information to Orbit - 7:05
    • Add Styling to Debug Information - 3:25
    • Retrieving Users from the Database - 11:03
    • Add a Gravatar Image - 9:47
    • Add a Sidebar to the User Profile Page - 3:18
    • Creating a Signup Form - 7:22
    • How to Handle Invalid Signups - 5:59
    • Ruby Mass Assignment - 4:04
    • Adding an Error Message Partial - 12:18
    • How to Test for Invalid Submissions - 9:44
    • Adding a Flash Message to our Application - 5:23
    • Configuring our Application for Production - 13:13
  • Logging Users In
    • Creating a Basic Login Sessions Controller - 5:29
    • Creating a Login Form - 1:40
    • Finding and Authenticating a User - 4:10
    • Displaying a Flash Error Message - 5:44
    • Logging in to our Application - Part 1 - 5:01
    • Creating a Current User - 3:31
    • Logging in to our Application - Part 2 - 7:54
    • How to Test Layout Changes - 8:38
    • How to Set Login at Signup - 3:03
    • Logging Users Out - 3:47
    • Committing and Merging our Code - 3:08
  • Add, Edit, Update and Delete Users
    • Updating User Profiles - 5:46
    • How to Handle Unsuccessful User Profile Edits - 2:28
    • Testing for Unsuccessful User Profile Edits - 3:46
    • Introduction to Test Driven Development (TDD) - 4:56
    • Add Authorization to Orbit - 8:18
    • Updating Authorization Text - 6:10
    • Ensuring Correct User Login - 6:47
    • Adding friendly Forwarding - 5:24
    • Creating a Users Homepage - 9:36
    • Creating Sample Users - 3:00
    • Adding Pagination - 4:28
    • Adding Tests for the Users Homepage - 2:28
    • Refactoring the Users Homepage - 3:11
    • Add the Ability to Delete Users - Part 1 - 3:10
    • Add the Ability to Delete Users - Part 2 - 5:29
    • Add Tests to Ensure Users are Deleted Corrcetly - 6:14
    • Commit and Merge our Code - 5:41
  • Creating Snapshots
    • Creating a New Snapshot Table - 6:20
    • Adding Snapshot Validations - 4:54
    • Adding User Snapshot Associations - 6:05
    • Snapshot Improvements - 8:06
    • Displaying Snapshots - 5:28
    • Creating Sample Snapshots - 5:50
    • Add Snapshot Tests to our Test Suite - 6:10
    • Create Snapshot Interface Tests - 8:03
    • Creating a Snapshot View - 12:43
    • Creating a Snapshot Feed - 9:50
    • Deleting Snapshots - 6:19
    • Testing Snapshot Deletion - 4:26
    • Add Images to Snapshots - 6:18
    • Adding Image Validations - 3:55
    • Add the Ability to Resize Images - 5:02
    • How to Add Images in Production - 11:31
    • Commit and Merge our Code - Part 1 - 3:46
    • Commit and Merge our Code - Part 2 - 3:07
  • Following Users
    • Add the Ability to Follow Users - 7:28
    • Adding User Relationship Associations - 5:52
    • Implementing Follow and Following Relationships - 4:00
    • Add Test for Follow Functionality - 3:24
    • Implement Follow Buttons to User Interface - 8:39
    • Adding Pages to Display Following and Followers - 4:58
    • Add Follow and Unfollow Buttons - 5:14
    • Add a Snapshot Status Feed - 7:29
    • The Final Commit and Code Merge - 3:01

View Full Curriculum


Access
Lifetime
Content
3.0 hours
Lessons
30

C# for Beginners: Learn C# Programming from Scratch

Learn the Most Popular Game Development Language C# Fundamentals with Visual Studios & Examples

By Oak Academy | in Online Courses

If all you want to learn is C#, this new beginner course is the perfect place for you to start. This course is designed to give you everything you need to become productive with C#. C# is a cross-platform language that can be used to build a variety of applications. With C#, you can build mobile apps (for Windows, Android, iOS), games, websites, and desktop applications. C# is also a widely used and the most popular game development language among Unity developers.

4.5/5 average rating: ★ ★ ★ ★

  • Access 30 lectures & 3 hours of content 24/7
  • Learn C# from scratch
  • Install the tools & learn some terminology
  • Gain valuable insights on how things work under the hood
  • Be very confident in the basics of coding & game development
  • Build variety of mobile apps, games, & websites using C#
OAK Academy | Long Live Tech Knowledge
4.3/5 average rating: ★ ★ ★ ★

By 2024, there will be more than 1 million unfilled computing jobs and the skills gap is a global problem. This was OAK's starting point. OAK Academy is a group of tech experts who have been in the sector for years and years. Deeply rooted in the tech world, they know that the tech industry's biggest problem is "tech skills gap" and their online course are their solution.

They specialize in critical areas like cybersecurity, coding, IT, game development, app monetization, and mobile. Thanks to their practical alignment, they are able to constantly translate industry insights into the most in-demand and up-to-date courses.

Important Details

  • Length of time users can access this course: lifetime
  • Access options: desktop & mobile
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: beginner
  • Have questions on how digital purchases work? Learn more here

Requirements

  • Any device with basic specifications

Course Outline

  • Introduction To The Course
    • 1 - What We Will Learn? - 4:48
  • Introduction to C#
    • 2 - What is C#? - 3:34
  • Setting Up the Environment
    • 3 - What is Visual Studio ? - 0:55
    • 4 - Installing Visual Studio Community Version ( Free ) - 4:19
  • Console Environment
    • 5 - What is Console App? - 1:09
    • 6 - Functions in Console Enviroment - 2:07
    • 7 - Practice The Write and Read Functions - 3:21
  • Primitive Types and Operators
    • 9 - String Type - 5:26
    • 10 - Practicing String Type - 1:10
    • 11 - Double and Float Types - 7:48
    • 12 - Char Type - 3:39
    • 13 - Bool Type - 12:11
    • 14 - Constant Keyword - 2:00
    • 15 - Integer Type - 7:59
    • 16 - Challenge - 4:12
  • Control Flow
    • 17 - If, Else, Else If Statements - 12:08
    • 18 - Switch Statement - 3:50
    • 19 - While, Do While Statements - 11:23
    • 20 - "For" Statement - 6:42
    • 21 - Foreach Statement - 4:52
    • 22 - Challenge 2 - Summing Numbers Until Zero Comes - 2:07
  • Array and Lists
    • 23 - Arrays - 10:14
    • 24 - Lists - 6:06
  • Non-Primitive Types
    • 25 - Classes - 19:45
  • Functions
    • 26 - Function - 8:12
  • Error Handling
    • 27 - Try Catch Statements - 11:55
  • Files
    • 28 - File Processing - 9:22
  • DateTime
    • 29 - Time Calculations - 7:05
    • 30 - Challenge 3 - Quiz Game - 12:36
  • Final
    • 31 - Final Evaluations - 4:25

View Full Curriculum


Access
Lifetime
Content
6.0 hours
Lessons
36

Applied Probability/Stats for Computer Science, DS & ML

Real-World, Code-Oriented Learning for Programmers to Use Prob/Stats in All of CS, Data Science, & Machine Learning

By Mohammad Nauman | in Online Courses

Everyone wants to excel at machine learning and data science these days -- and for a good reason. Data is the new oil, and everyone should be able to work with it. However, it's challenging to become great in the field because the latest and greatest models seem too complicated. This course takes a code-oriented approach to give you the strong foundations needed to excel in all areas of computer science -- specifically data science and machine learning. It focuses on the more useful concepts for data science, machine learning, and other areas of computer science.

4.6/5 average rating: ★ ★ ★ ★

  • Access 36 lectures & 6 hours of content 24/7
  • Learn necessary concepts in stats & probability
  • Understand important concepts in the subject necessary for Data Science and/or ML
  • Know distributions & their importance
  • Understand entropy, the foundation of all machine learning
Mohammad Nauman | Ph.D., Programmer, Researcher, Designer, and Teacher
4.4/5 Instructor Rating: ★ ★ ★ ★

Mohammad Nauman has a Ph.D. in Computer Sciences and a PostDoc from the Max Planck Institute for Software Systems. He has been programming since early 2000 and has worked with many different languages, tools, and platforms. He has extensive research experience with many state-of-the-art models to his name. His research in Android security has led to some major shifts in the Android permission model.

Important Details

  • Length of time users can access this course: lifetime
  • Access options: desktop & mobile
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: beginner
  • Have questions on how digital purchases work? Learn more here

Requirements

  • Basic coding knowledge

Course Outline

  • Diving in with code
    • Code env setup and Python crash course - 18:48
    • Getting started with code: Feel of data - 11:57
    • Foundations, data types and representing data - 21:28
    • Practical note: one-hot vector encoding - 4:46
    • Exploring data types in code - 12:18
    • Central tendency, mean, median, mode - 19:33
    • Section Review Tasks
  • Measures of Spread
    • Dispersion and spread in data, variance, standard deviation - 9:35
    • Dispersion exploration through code - 11:02
    • Section Review Tasks
  • Applications and Rules for Probability
    • Intro to uncertainty, probability intuition - 12:14
    • Simulating coin flips for probability - 17:16
    • Conditional probability; the most important concept in stats - 21:58
    • Applying conditional probability - Bayes rule - 9:40
    • Application of Bayes rule in real world - Spam detection - 8:21
    • Spam detection - implementation issues - 10:08
    • Section Review Tasks
  • Counting
    • Rules for counting (Mostly optional) - 16:34
    • Section Review Tasks
  • Random Variables - Rationale and Applications
    • Quantifying events - random variables - 10:09
    • Two random variables - joint probabilities - 13:45
    • Distributions - rationale and importance - 18:28
    • Discrete distributions through code - 5:03
    • Continuous distributions - probability densities - 20:08
    • Continuous distributions code - 5:03
    • Case study - sleep analysis, structure and code - 18:15
    • Section Review Tasks
  • Visualization in Intuition Building
    • Visualizing joint distributions - the road to ML success - 13:03
    • Dependence and variance of two random variables - 11:13
    • Section Review Tasks
  • Applications to the Real World
    • Expected values - decision making through probabilities - 6:34
    • Entropy - The most important application of expected values - 18:46
    • Applying entropy - coding decision trees for machine learning - 26:55
    • Foundations of Bayesian inference - 11:40
    • Bayesian inference code through PyMC3 - 6:13
    • Section Review Task

View Full Curriculum


Access
Lifetime
Content
4.0 hours
Lessons
35

Hands-On Chatbots with Google Dialogflow

Learn About Google's Answer to Amazon Lex

By Loonycorn | in Online Courses

Chatbots are voice-aware bots, i.e. computer programs designed to simulate human conversations with users. Chatbots have become ubiquitous across sites and apps and a multitude of AI platforms exist which help you get up and running with a chatbot quickly. This course introduces DialogFlow, a conversational interface for bots, devices, and applications. It's Google's bot technology and a direct rival of Amazon Lex.

  • Access 35 lectures & 4 hours of content 24/7
  • Discuss voice & text interfaces and current trends in human-computer interaction
  • Explore interaction models such as intents, entities, contexts & their resolution into API calls
  • Manage the flow of conversations using linear & non-linear dialogs
  • Use webhooks to fulfill user intents & learn how to connect to external services to respond to queries
  • Deploy a flask app to Heroku
  • Understand how a chatbot can be added to your Slack workspace
Loonycorn | An Ex-Google, Stanford, and Flipkart Team
4.2/5 Instructor Rating: ★ ★ ★ ★

Loonycorn is comprised of two individuals—Janani Ravi and Vitthal Srinivasan—who have honed their respective tech expertise at Google and Flipkart. The duo graduated from Stanford University and believes it has distilled the instruction of complicated tech concepts into funny, practical, engaging courses, and is excited to be sharing its content with eager students.

Important Details

  • Length of time users can access this course: lifetime
  • Access options: desktop & mobile
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: beginner
  • Have questions on how digital purchases work? Learn more here

Requirements

  • Basic proficiency at programming in Python
  • Basic understanding of HTTP and how REST APIs work

Course Outline

  • Section 1: Introduction
    • You,This Course And Us - 2:10
    • Code for This Course
  • Section 2 : The Big Picture
    • Course Outline and Pre-reqs - 4:45
    • Introducing DialogFlow - 12:32
    • The Big Picture - 6:55
    • Setting Up Dialogflow - 8:40
  • Section 3 : Building Blocks of Interaction Models
    • Section Outline - 2:49
    • Creating Your First Agent - 5:41
    • Exploring Agent Settings - 8:51
    • Default Intents - 6:45
    • Small talk - 6:03
    • Custom Intents - 6:32
    • System Entities And Developer Entities - 6:10
    • Defining Developer Entities - 8:38
    • User Expressions for Intents - 11:29
    • Configuring and Testing the BookCars Intent - 10:27
    • Configuring and Testing the BookRooms Intent - 6:54
  • Section 4 : Linear and Non-linear Dialogs
    • Section Overview - 3:41
    • Contexts - 13:50
    • Follow up Intents - 9:27
    • Linear Dialogs - 2:23
    • Non-Linear Dialogs - 12:35
    • Non-Linear Dialogs Continued - 6:42
  • Section 5 : Fulfillment, Deploymentand 3rd Party Integration
    • Section Outline - 4:49
    • Check Weather Intent - 5:48
    • Basic Setup Of Webhook Code - 5:32
    • Extracting Parameter Values And Structuring Response - 6:01
    • Calling The Open Weather Map API - 5:37
    • Retrieving Weather Info From Open Weather Map - 5:02
    • Introducing Heroku - 8:27
    • Deploying Your Web Application - 10:12
    • Fulfillment Using Webhooks - 7:12
    • Configuring A Slack App - 7:40
    • Integrating Dialogflow With Slack - 6:10
    • Fulfillment Using Cloud Functions - 11:32

View Full Curriculum


Access
Lifetime
Content
3.0 hours
Lessons
37

Building Voice Apps Using Amazon Alexa

Alexa Skills for Echo & Other Amazon Devices

By Loonycorn | in Online Courses

Alexa, Siri, Cortana, and Google Now — voice-activated personal assistants are one of the hottest trends in technology these days. They are a great way to convey complex information to your customers in a free-flowing, conversational way. Alexa is a great way to build them — an AWS service for building conversational interfaces for Echo, FireTV, and a bunch of Alexa-aware devices. In this course, you'll learn how to start building apps for use with Alexa

4.5/5 average rating: ★ ★ ★ ★

  • Access 37 lectures & 3 hours of content 24/7
  • Learn voice & text interfaces and current trends in human-computer interaction
  • Discover how Alexa, Lex, Echo, & other bits of the amazon ecosystem come together
  • Explore interaction models like utterances, intents, slots, prompts, & their resolution into API calls
  • Learn about fulfillment models
Loonycorn | An Ex-Google, Stanford, and Flipkart Team
4.2/5 Instructor Rating: ★ ★ ★ ★

Loonycorn is comprised of two individuals—Janani Ravi and Vitthal Srinivasan—who have honed their respective tech expertise at Google and Flipkart. The duo graduated from Stanford University and believes it has distilled the instruction of complicated tech concepts into funny, practical, engaging courses, and is excited to be sharing its content with eager students.

Important Details

  • Length of time users can access this course: lifetime
  • Access options: desktop & mobile
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: beginner
  • Have questions on how digital purchases work? Learn more here

Requirements

  • Basic javascript programming
  • Basic understanding of HTTP/s and how REST APIs work

Course Outline

  • Introduction
    • You, This Course and Us - 2:40
  • Alexa Basics: Eco-system and Skill Concepts
    • Introducing Alexa - 1:59
    • Evolution Of Human Computer Interaction And Voice Interfaces - 7:34
    • Prereqs And Course Overview - 2:53
    • Alexa, Echo And AWS - 5:57
    • Skill Concepts: Invocations, Utterances and Intents - 8:43
    • Tools and Platforms: AWS, Amazon Developer Console and Echosim.io - 8:17
    • Types Of Skills - 6:02
  • Build a Basic Alexa Skill
    • Overview Of The Stock Market Tracker - 4:27
    • Utterance-Intent Mapping - 4:45
    • Financial Data From AlphaVantage - 3:20
    • Setup And Configure An Alexa Skill - 8:10
    • AWS Lambdas - 6:07
    • Link the Alexa Skill with the Lambda Function - 8:15
    • Set up and Test Lambda Code - 7:59
    • Code And Test the Launch Request - 5:07
    • Code And Test the Intent Request - 4:53
    • Handle Help And Stop Intents - 5:03
    • Test Using Echosim.io - 1:41
  • Multi-turn Dialogs for Rich Conversation
    • Slots As Request Configuration Parameters - 6:23
    • Slots, Prompts And Utterances - 8:09
    • Financial Data From Intrinio - 2:28
    • What Exactly are Slots? - 5:06
    • Configure the Dialog Model - 8:42
    • Handle Start, End and Launch Requests - 7:00
    • Handle the GetStockInfo Intent - 9:50
    • Handle Help, Stop and Cancel Intents - 1:18
    • Testing With Echosim.io - 1:53
  • Persist State Across Sessions
    • Remember Data Across Sessions - 5:47
    • Create A Dynamo DB Table - 2:06
    • Configure Full Access To Dynamo DB from Lambda - 7:34
    • Handle Start, End and Launch Requests - 1:50
    • Handle Add, Remove And List Stock Intents - 8:03
    • Test Using Echosim.io - 1:12
  • Build a Flash Briefing Skill
    • Understanding Flash Briefing Skills - 6:20
    • Set Up A Twitter RSS Feed - 3:07
    • Set Up A Flash Briefing Skill - 4:19

View Full Curriculum


Access
Lifetime
Content
21.0 hours
Lessons
213

Web Development Omnibus: jQuery, AngularJS, & ReactJS

Master Web Dev Essentials All in One Course

By Loonycorn | in Online Courses

This comprehensive course covers three powerful and versatile JavaScript frameworks: jQuery, AngularJS, and ReactJS. These three frameworks form the advanced building blocks of many websites, and learning them all here will teach you how to build interactive websites from scratch.

  • Access 213 lectures & 13 hours of content 24/7
  • Install & set up a basic web server w/ jQuery & jQuery UI libraries
  • Cover the basics, advanced topics, & plugins of jQuery
  • Explore AngularJS in-depth, including custom directives for template expansion, DOM manipulation, scope inheritance, & more
  • Discover the React component lifecycle, the component mounting, updating & unmounting phases, & more
  • Learn about React in production environments
Loonycorn | An Ex-Google, Stanford, and Flipkart Team
4.2/5 Instructor Rating: ★ ★ ★ ★

Loonycorn is comprised of two individuals—Janani Ravi and Vitthal Srinivasan—who have honed their respective tech expertise at Google and Flipkart. The duo graduated from Stanford University and believes it has distilled the instruction of complicated tech concepts into funny, practical, engaging courses, and is excited to be sharing its content with eager students.

Important Details

  • Length of time users can access this course: lifetime
  • Access options: desktop & mobile
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: beginner
  • Have questions on how digital purchases work? Learn more here

Requirements

  • Any device with basic specifications

Course Outline

  • You, This Course and Us
    • You, This Course and Us - 2:13
  • Introducing jQuery
    • jQuery: You, This Course and Us - 1:59
  • Introduction To jQuery
    • Client side programming with Javascript - 7:44
    • Why is jQuery cool? - 8:09
    • The Document Object Model - 4:45
  • Install And Set Up
    • Npm and Http Server install - 4:49
    • Download and set up jQuery - 3:32
    • Set up examples used in this course - 2:14
  • Selectors
    • Example 1: Hello jQuery World! - 11:33
    • Selectors - 4:27
    • Example 2: Simple selectors - 4:12
    • Example 3: More selectors - 9:12
    • Example 4: Traversing The DOM - 8:37
    • Example 5: Advanced selectors - 4:47
    • Example 6: Select using functions - the filter() selector - 4:34
  • Some Loose Ends
    • Example 7: Chaining - 4:38
    • Example 8: jQuery in the no-conflict mode - 7:21
    • Accessing native browser element - 1:20
  • Event Handling
    • Events and event handling - 7:31
    • Example 9: Event handlers - 9:14
    • The event object - 6:04
    • Example 10: Accessing the event object properties - 5:28
    • Event capture and bubble phases - 8:09
    • Example 11: Multiple event handlers - 4:34
    • Example 12: Passing data to event handlers - 3:12
    • Example 13: Listen just once - 3:10
    • Example 14: Remove event handlers - 4:31
    • Example 15: Events in namespaces - 6:22
    • Event delegation - 6:07
    • Example 16: Setting up delegated events - 5:07
    • Example 17: Listening to key events - 3:06
    • Example 18: Event triggers - 4:32
    • Custom events - 4:06
    • Example 19: Working with custom events - 4:29
  • CSS And Animations
    • Effects and animations - 3:57
    • Example 20: The css() function - 9:03
    • Example 21: The show() and hide() functions - 6:03
    • Example 22: The fadeIn() and fadeOut() animations - 3:01
    • Example 23: The slideUp() and slideDown() animations - 2:15
    • Example 24: The toggle() function - 2:44
    • How do jQuery animations work? - 4:17
    • Example 25: Run code after an animation completes - 4:38
    • Example 26: The animate() function - 5:33
    • Example 27: More animation fun - 4:02
    • Example 28: Stop animations using the stop() function - 7:40
    • Example 29: Delay animations using delay() - 3:47
    • Example 30: Chaining and queueing animations - 7:34
    • Example 31: Custom animation queues - 5:05
    • Example 32: Bypassing the queue - 4:55
  • DOM Manipulation
    • Manipulating the DOM - 1:15
    • Example 33: Manipulating element contents - 4:29
    • Example 34: The attr() and removeAttr() functions - 4:39
    • Example 35: Add DOM elements relative to selected elements - 9:49
    • Example 36: Create or clone elements - 6:31
    • Example 37: The remove(), detach() and empty() functions - 7:34
    • Example 38: The wrap() and wrapAll() functions - 4:03
    • Example 39: Explicit iteration using each() - 2:24
  • Ajax Requests
    • Ajax - 5:09
    • Example 40: The $.ajax() request - 10:10
    • Example 41: Syntactic sugar - the $.get(), $.getScript(), $.getJSON() - 6:37
    • Example 42: The load() function - 2:37
    • Example 43: Sezrialize form contents using serialize() and serializeArray() - 7:18
    • Example 44: Local and global Ajax events - 9:30
  • Performance Optimizations
    • Categories of optimization techniques - 4:24
    • Performance optimizations tips and tricks - 8:58
  • Plugins
    • What are plugins? - 4:00
    • Example 45: The Slick carousel - 9:27
    • Building your own custom plugin - 4:20
    • Example 46: Our first custom plugin, the fancyButton() - 4:33
    • Example 47: Best practices to follow in the fancyButton() plugin - 7:44
  • The Widget Factory
    • What is the Widget Factory? - 5:35
    • Example 48: Build your first widget - 7:52
    • Example 49: Widgets which expose methods to manipulate them - 9:31
    • Example 50: Widgets which trigger events - 7:05
  • The jQuery UI Library
    • Download and install the jQuery UI library - 8:44
    • Example 51: Set up components using the jQuery UI library - 5:31
    • Example 52: The effects() function - 3:12
    • The jQuery UI theme roller - 5:24
    • Example 53: Try a custom theme - 1:26
  • Introducing Angular
    • Angular: You, This Course And Us - 2:08
  • Introduction To Angular
    • Pure Javascript doesn't cut it anymore - 9:52
    • Why is Angular cool? - 10:15
  • Install And Setup
    • Installing Angular - 3:38
    • What are those Angular files all about? - 6:02
    • Npm And Http Server Install - 5:03
  • Basic Overview Of Angular Components
    • Conceptual overview - 9:24
    • Example 1: Hello Angular World! - 4:15
    • Example 2: Data Binding - 5:39
    • Example 3: Controllers - 10:15
    • Example 4: Services - 10:01
  • Controllers: Digging Deeper
    • Traditional data binding vs Angular data binding: Angular wins hands down! - 6:34
    • So, what exactly is a controller? - 5:04
    • Example 5: Controller holds state and behavior - 11:11
  • Services: Digging Deeper
    • So, what exactly is a service? - 3:10
    • Example 6: Lazily instantiated singleton services - 11:02
  • Scopes And Scope Inheritance
    • Scopes - 3:55
    • Example 7: Different controllers have different scopes - 11:53
    • Example 8: Nested scopes - 7:25
    • Scope inheritance and hierarchy - 5:45
    • Example 9: Scope inheritance at work - 7:55
    • Scope event propagation - 2:27
    • Example 10: Emit and broadcast events - 9:04
  • Built-In And Custom Directives
    • So, what exactly are directives? - 10:58
    • Example 11: The template expanding directive - 6:37
    • Example 12: Using the templateUrl property - 3:04
    • Example 13: Functions in the templateUrl property - 5:55
    • Example 14: Custom directives with the restrict option - 4:14
  • Directives And Isolated Scopes
    • Example 15: Using the same directive in different controllers - 4:44
    • Isolated scopes - 11:40
    • Example 16: Understand how isolated scopes work - 3:44
  • Behind The Scenes: $watch, $apply and $digest
    • Data binding and $watch(), $apply() and $digest() - 11:21
    • Example 17: The watch list - 3:44
    • The Angular context - 11:09
    • Example 18: The $apply() function and the $digest() loop - 4:29
    • Example 19: Prefer $apply(fn) to $apply() - 4:33
    • Example 20: Use Angular libraries where possible - 2:27
    • Example 21: Watches on objects and collections - 8:32
  • Expressions
    • Example 22: Expressions - 5:00
    • Javascript Vs Angular Expressions - 4:47
    • Example 23: One-time binding - 5:20
  • Filters
    • Filters - 2:55
    • Example 24: Built In Filters - 8:08
    • Example 25: The orderBy filter - 11:31
    • Example 26: The "filter" filter - 10:31
    • Example 27: Build your own custom filter - 6:38
  • Forms And Validation
    • Forms - 1:50
    • Example 28: A simple form - 6:19
    • Example 28 continued: Forms and CSS classes - 6:38
    • Example 29: Forms and the control state - 13:57
    • Example 30: The select options UI control - 2:57
  • Directives: Digging Deeper
    • Example 31: DOM manipulating directives - 5:33
    • Example 32: Event listening directives - 4:50
  • Behind The Scenes: Dependency Injection
    • Dependency injection - 7:34
    • Example 33: Different ways of injecting dependencies - 7:53
    • Provider recipes - yes that is what it is called - 9:18
    • Example 34: The Provider, Service and Factory recipes - 8:18
  • The Final Stretch
    • Modules and Configs - 4:06
    • Example 35: The Http service - 6:15
    • Example 36: Routing and Single Page Applications - 9:20
  • Introducing React
    • React: You, This Course and Us - 2:31
  • Introduction
    • What Is React? - 9:18
    • What Makes React Cool? - 8:47
  • Install and Set up
    • Npm And Http Server Install - 4:49
    • Running Examples On The Http Server - 2:41
    • Accessing ReactJS Files - 1:51
    • Using SublimeText For Coding In React - 2:16
  • React Basics
    • Example 1: Hello World - 5:13
    • The Virtual DOM - 5:20
    • Example 2: Nested Elements - 5:25
    • Terms In React - 4:59
    • Example 3: Factory Functions - 3:48
  • JSX and the Babel Compiler
    • What Is JSX? - 8:30
    • The Babel REPL Environment - 4:32
    • Babel For Development And Production Environments - 4:58
    • Example 4: Elements With JSX - 3:14
  • React Components
    • Introduction To Components - 2:24
    • Example 4: A Stateless React Component - 7:15
    • Example 5: The Render Function - 5:30
  • State and Props: Immutable Props
    • Introduction To State And Props - 4:26
    • Example 7: Props - 3:48
    • Example 8: Passing Props To Nested Components - 5:02
    • Example 9: Transferring Props To Child Components - 5:27
    • Example 10: The Spread Operator - 4:48
    • Example 11: Dynamic Types Using Props - 8:53
    • Example 12: Validation With Prop Types - 10:50
    • Example 13: Accessing A Component's Children Using Props - 4:45
    • Example 14: Lambda Expressions As Children - 4:45
    • Example 15: Components And Child Expressions - 7:52
  • State and Props: The Component as a State Machine
    • Components As State Machines - 4:47
    • Example 16: State - 3:13
    • Example 17: Update State - 9:53
    • Example 18: Accessing Previous State - 5:22
    • Properties Of State - 6:12
  • Synthetic Events in React
    • Capture And Bubble Phases - 7:48
    • Example 19: Events - 6:18
    • The Synthetic Event - 12:34
    • Example 20: Working With Synthetic Events - 3:52
  • Bringing It All Together in A Single Application
    • Example 21: The Comment App Visual Representation - 9:09
    • Example 22: The Comment App With Props - 5:04
    • Example 23: Adding A New Comment - 9:30
    • Example 23: Deleting Comments - 5:43
  • The React Component Lifecycle
    • Component Lifecycle Methods: The Mounting Phase - 5:59
    • Example 24: The Mounting Phase Lifecycle Methods - 8:35
    • Example 25: The Unmounting Phase Lifecycle Methods - 11:11
    • Component Lifecycle Methods: The Updating Phase - 3:24
    • Example 26: The Updating Phase, componentWillReceiveProps() - 9:15
    • Example 27: The Updating Phase, shouldComponentUpdate() - 12:13
    • Example 28: The Updating Phase Lifecycle Methods - 7:06
  • Mixins
    • Mixins - 4:12
    • Example 29: Mixins - 5:09
    • Example 30: Nested And Multiple Mixins - 6:30
  • ES Syntactic Sugar
    • ES6 Classes For React - 3:23
    • Example 31: ES6 Classes And The React.createClass() Function - 11:09
  • Forms
    • Introduction To Forms - 2:18
    • Example 32: Controlled Components - 7:04
    • Example 32: Controlled Components Continued - 6:35
    • Example 33: Componentize Forms - 7:01
    • Example 33: Componentize Forms Continued - 4:26
    • Example 34: Form Validation - 10:49
  • Miscellaneous
    • Example 35: Accessing Native DOM Elements - 7:07
    • Example 36: Accessing DOM Elements In A React Component - 5:28
    • Example 36: The React Context - 7:43
    • DOM Reconciliation - 9:25
  • React In Production
    • React In Production: Setting Up Webpack - 8:29
    • React In Production: The Babel Loader - 6:07
    • React In Production: Watching For App Changes - 3:04
  • Animations
    • Animation Add Ons In React - 2:01
    • Example 38: The React Transition Group - 5:54
    • Example 38: The React Transition Group continued - 9:06
    • Example 39: The React CSS Transition Group - 6:23
  • Routing
    • Example 40: React Router: Basic Routing - 5:48
    • Example 40: React Router: Routing With Links - 6:10
  • One Last Thing…
    • The Webpack Dev Server - 2:23

View Full Curriculum


Access
Lifetime
Content
16.0 hours
Lessons
146

Software Testing Omnibus: Sikuli, Selenium, JUnit, & Principles of Testing

Cover 3 Technologies & All of the Underlying Principles of Software Testing

By Loonycorn | in Online Courses

This massive package covers three powerful and versatile testing technologies, as well as the theory and fundamental principles behind software testing. You'll dive into Sikuli, Selenium, and JUnit to learn not only how to use each, but solve specific, real-world problems with them. Before you know it, you'll have a real foundation in testing.

  • Access 146 lectures & 16 hours of content 24/7
  • Use image recognition to automate just about anything that appears on-screen with Sikuli
  • Work with Selenium's Java API to test browser functionality & automate tasks with nearly 45 solved examples
  • Test user interactions of all kinds such as clicking, entering text, dragging & dropping, & selecting from dropdowns
  • Interact with HTML5 based elements like video players
  • Write simple tests using all the different features of JUnit tests

Loony Corn | An ex-Google, Stanford, & Flipkart team

4.3/5 Instructor Rating: ★ ★ ★ ★


Loonycorn is comprised of a couple of individuals —Janani Ravi and Vitthal Srinivasan—who have honed their tech expertises at Google and Stanford. The team believes it has distilled the instruction of complicated tech concepts into funny, practical, engaging courses, and is excited to be sharing its content with eager students.

Important Details

  • Length of time users can access this course: lifetime
  • Access options: desktop & mobile
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: beginner
  • Have questions on how digital purchases work? Learn more here

Requirements

  • Any device with basic specifications

Course Outline

  • Introduction
    • You, This Course, and Us - 1:39
  • Introducing Sikuli
    • You, This Course, and Us - 2:13
    • Something Completely Fresh - 10:53
    • Installation - 7:31
  • Getting Stuff Done
    • Hello world - 6:41
    • Under the hood - 4:34
    • Opening up a calculator - the naive way - 9:17
    • Opening up a calculator - a smarter way - 8:41
    • Regions and Patterns - 8:24
    • Matching - 4:09
    • Working with Applications - 6:38
    • Typing into Applications - 9:50
    • System and Environment Variables - 2:48
  • Language Constructs
    • User Interactions - 5:50
    • Conditionals - If, else and elif - 1:19
    • Dynamic calculations using the calculator - 9:04
  • More Language Constructs
    • For-loops - 5:51
    • Hotkeys - 4:34
  • Sikuli and Java
    • Sikuli and Java - 9:23
    • Sikuli and Selenium - 10:48
  • Unusual Use-cases and Smart Sikuli
    • Working with Microsoft Word - 5:41
    • Drag-and-Drop - 3:30
    • System Power Settings via Checkboxes - 4:02
    • Deleting loads of emails in one go - 5:05
    • Locating icons in a crowded folder - 4:36
    • Emptying the Recycle Bin - 4:40
    • Facebook automation - 3:01
    • Skype automation - 2:09
    • Image searches inside large PDFs - 3:59
    • OCR introduced - 4:03
    • OCR with Excel - 3:31
    • Mass data downloads - 3:18
    • Automating a simple game - 4:23
  • Introducing Selenium
    • You, This Course and Us - 2:09
  • Understanding Selenium
    • The Role of Selenium WebDriver - 13:09
    • The Selenium Suite of Tools - 5:44
  • Setting up your Testing Environment
    • Setting Up a Maven Project - 6:37
    • Ex 1: Check Title of a webpage - 8:55
  • Locating Elements in a WebPage
    • Exploring a Webpage with Developer Tools - 5:42
    • Ex 2: Locating an element - 8:27
    • Ex 3: Locating multiple elements - 4:51
    • Ex 4: Locating links - 3:48
    • The A Tag - 8:18
    • Ex 5: Locating an element by tag name - 2:59
    • Ex 6: Retrieving the element attributes - 6:10
    • Ex 7: Retrieving data from a webtable - 7:32
    • Ex 8: Locating with CSS selectors - 4:27
    • Ex 9: Locating using XPath expressions - 3:33
  • Testing and Automating User Interactions
    • Ex 10: Clicking on a Button - 4:29
    • Ex 11: Clicking on a Location - 7:43
    • Ex 12: Entering/Clearing Text in a textbox - 5:37
    • Ex 13: Selecting from a dropdown - 6:31
    • Ex 14: Verifying properties of a list - 4:49
    • Ex 15: Selecting/Deselecting a Radio Button - 6:07
    • Ex 16: Selecting/Deselecting a Checkbox - 5:24
    • Ex 17: Selecting multiple rows in a table (with Ctrl) - 5:22
    • Ex 18: Double Clicking an element - 4:39
    • Ex 19: Drag and Drop - 4:41
    • Ex 20: Interacting with a Context menu (right click menu) - 5:06
  • Automating Browser Navigation Actions
    • Ex 21: Minimizing/Maximizing the Browser window - 4:20
    • Ex 22: Navigating Backwards and Forwards in the Browser - 4:16
    • Ex 23: Handling Session cookies - 9:55
    • Ex 24: Implicitly waiting for a condition - 3:13
    • Ex 25: Explicitly waiting for a condition - 4:39
  • Windows, Frames and Alerts
    • Ex 26: Switching to a HTML frame - 6:56
    • Ex 27: Switching to an IFRAME - 4:09
    • Ex 28: Identifying and switching to a pop up window - 3:06
    • Ex 29: Closing extraneous pop-up windows - 3:38
    • Ex 30: Identifying and interacting with an an Alert box - 4:07
  • WebDrivers for Different Browsers
    • Ex 31: FireFoxDriver - 5:27
    • Ex 32: ChromeDriver - 3:43
    • Ex 33: InternetExplorerDriver - 2:31
    • Ex 34: RemoteWebDriver - 8:02
  • Capturing Screenshots
    • Ex 35: Capturing a Screenshot of the browser - 3:45
    • Ex 36: Capturing a Screenshot of an element - 7:40
  • Listening to Events and Executing JavaScript
    • The Observer Design Pattern - 9:34
    • Ex 37: Listening to events - 8:39
    • Ex 38: Executing JavaScript from Selenium - 4:39
  • Building Maintainable Scripts using the Page Object Model
    • Ex 39: Using PageFactory to set up a POM testing script - 9:52
  • Extending Selenium
    • Ex 40: Extending the WebElement interface to set up a WebTable - 7:48
  • Automating Interactions with HTML5 elements
    • Ex 41: Interacting with a Videoplayer - 4:39
    • Ex 42: Drawing On a Canvas - 7:31
  • Cross Browser Testing with Selenium Grid
    • Setting up Selenium Grid - 9:21
    • Ex 43: Running a cross browser test with Selenium grid - 10:37
  • HTML and CSS primer
    • Introduction to HTML and CSS - 9:15
    • Introducing HTML - 12:33
    • Introducing CSS - 6:43
    • Domain Object Model - 12:35
  • Introducing JUnit
    • You, This Course and Us - 1:44
  • Getting Started with JUnit Tests and Assertions
    • Example 1 : The @Test Annotation : Writing a test - 11:42
    • Example 2: The Anatomy of a Test Method - 7:38
    • Example 3: Assertions - 8:58
  • Granular Checks with Matchers
    • Example 4: assertThat and Matchers - 6:27
    • Example 5: Types of Matchers - 7:56
    • Example 6: Using Matchers for Debugging - 4:52
    • Example 7: Implementing a Custom Matcher - 7:35
  • Assumptions
    • Example 8: Checking Preconditions with Assumptions - 7:17
  • Fixtures
    • Example 9: Using Fixtures for Setup and Cleanup - 7:43
  • Working with Different TestRunners
    • Example 10: The @RunWith Annotation - 14:37
    • Example 11: Aggregating tests in a Suite - 5:12
    • Example 12: Parameterized Tests - 9:26
    • Example 13: Running Subsets of Tests - 7:00
    • Example 14: Theories - 8:14
  • Controlling Test Behavior with Rules
    • Example 15: External Resource Rules - 6:26
    • Example 16: The Temporary Folder Rule - 4:12
    • Example 17: Error Collector Rule - 4:56
    • Example 18: Verifier Rule - 3:29
    • Example 19: Test Watcher Rule - 6:59
    • Example 20: TestName Rule - 3:47
    • Example 21: ExpectedException Rule - 4:12
    • Example 22: Timeout Rule - 3:15
    • Example 23: Class Rule - 2:48
  • Mockito : The Mock Object Framework
    • Example 25: Stubbing Objects for Expected Results - 4:27
    • Example 24: Creating Mock Objects and Verifying Interactions - 6:01
  • Introducing the Principles of Software Testing
    • A Brief Introduction to the Principles of Software Testing - 0:45
  • Principles of Software Testing
    • Why test software? - 15:24
    • General Principles of Testing - 15:58
    • The Testing Process - 13:27
    • Psychology of Testing - 12:30
  • The Systems Development Life Cycle (SDLC)
    • Sequential SDLC - 13:04
    • Iterative SDLC - 12:15
    • Component Testing - 7:43
    • Integration Testing - 6:44
    • System Testing - 4:29
    • More thoughts on testing - 7:28
    • Test Types - 8:20
    • Maintenance Testing - 4:17
  • Static Testing
    • Static v Dynamic - 12:28
    • A Review Process - 7:09
    • Success Factors - 9:20
    • Types of Reviews - 5:26
    • Static Analysis - 10:45
  • Dynamic Testing
    • Dynamic Testing - Structure, Specification, Experience-Based - 11:45
    • Test Development Process - 10:59
    • Black Box (Specification-Based) Testing - 7:20
    • Boundary Value Analysis - 7:24
    • Decision Tables - 6:40
    • State Transitions - 9:04
    • Specification-based Testing - 5:09
    • White Box Testing - 10:05
    • Coverage Metrics - 8:29
    • Experience Based Testing - 5:01
  • Testing Processes
    • Organizing Testing - 12:12
    • Estimation, Planning and Strategising - 8:13
    • Progress Reporting and Control - 9:39
    • Incident Management - 12:18

View Full Curriculum


Access
Lifetime
Content
9.0 hours
Lessons
85

Python 3: From Zero to GUI programming

Expand Your Python Horizon to Other Features Such as Pygame, PyTorch, & Qiskit

By Joe Rahl | in Online Courses

Python 3 is one of the strongest programming languages and has a high demand on the market. Whether it is for scientific programming, gaming, or web development, Python has the tools and libraries that will make your project come to life. This course will help you set afoot in the world of Python without any prior knowledge. Each chapter is filled with practical examples, allowing you to code right away from the very beginning. Once this course is finished, you will be able to expand your Python horizon to other features such as Pygame, which is for gaming development under Python, PyTorch for machine learning, and even Qiskit for Quantum Computing.

4.5/5 average rating: ★ ★ ★ ★

  • Access 85 lecture & 9 hours of content 24/7
  • Get an overview of Python 3
  • Learn about elementary programming
  • Work with mathematical functions, strings, & objects
  • Explore conditional statements, loops, & functions
  • Learn GUI programming with Tkinter
  • Learn about Inheritance & Polymorphism, FIles & Exception Handling, and more
LearningWhilePracticing | Joe Rahl
4.6/5 Instructor Rating: ★ ★ ★ ★

LearningWhilePracticing has one of the most practical approaches when it comes to learning. Our goal is to let you be operational as quickly as possible while at the same grasping all the concepts required. Being able to work on your projects through software while learning it at the same time, is a source of motivation that will make you go further.

Important Details

  • Length of time users can access this course: lifetime
  • Access options: desktop & mobile
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: beginner
  • Have questions on how digital purchases work? Learn more here

Requirements

  • Any device with basic specifications

Course Outline

  • Section 1 - Introduction to Python 3
    • Introduction - 6:48
    • C1Ex1 - Olympic Circles - 10:10
  • Section 2 - Elementary Programming
    • Elementary Programming - 11:05
    • C2Ex1 - Area with input - 5:55
    • C2Ex2 - Show current time - 9:18
    • C2Ex3 - Compute distance with graphical representation - 6:12
  • Section 3 - Mathematical Functions, Strings, Objects
    • Mathematical Functions, Strings, Objects - 12:40
    • C3Ex1 - Math functions - 4:02
    • C3Ex2 - Compute change - 4:01
    • C3Ex3 - Simple shapes - 2:37
    • C3Ex4 - Color shapes - 3:24
  • Section 4 - Conditional Statements
    • Conditional Statements - 13:02
    • C4Ex1 - Guess the birthday date - 6:16
    • C4Ex2 - Subtraction quiz - 2:51
    • C4Ex3 - Chinese Zodiac - 2:12
    • C4Ex4 - Lottery - 4:04
    • C4Ex5 - Point in a circle - 3:59
  • Section 5 - Loops
    • Loops - 12:04
    • C5Ex1 - Guess the number - 4:28
    • C5Ex2 - Subtraction quiz loop - 7:14
    • C5Ex3 - Multiplication table - 4:59
    • C5Ex4 - Prime number - 5:00
    • C5Ex5 - Random walk - 5:46
  • Section 6 - Functions
    • Functions - 9:59
    • C6Ex1 - Test Max - 5:26
    • C6Ex2Ex3 - GCD function - 6:05
    • C6Ex4 - Random character - 10:38
    • C6Ex5 - Print Calendar - 9:27
    • C6Ex6Ex7 - Useful Turtle functions - 4:00
  • Section 7 - Objects and Classes
    • Objects and Classes - 14:34
    • C7Ex1Ex2 - TV - 4:59
    • C7Ex3 - Immutable vs Mutable Object - 3:07
  • Section 8 - GUI Programming with Tkinter
    • GUI Programming with Tkinter - 3:22
    • C8Ex1 - Simple GUI - 3:00
    • C8Ex2 - Process Button Event - 2:41
    • C8Ex3 - Widget Demo - 6:10
    • C8Ex4 - Change Label Demo - 5:24
    • C8Ex5 - Canvas Demo - 7:45
    • C8Ex6 - Place Manager Demo - 2:02
    • C8Ex7 - Loan Calculator - 5:52
    • C8Ex8 - Image Demo - 3:26
    • C8Ex9 - Menu Demo - 7:15
    • C8Ex10 - Popup Menus - 3:29
    • C8Ex11 - Mouse Key Event Demo - 5:41
    • C8Ex12 - Enlarge Shrink Circle - 5:00
    • C8Ex13 - Animation Demo - 5:16
    • C8Ex14 - Control Animation - 4:59
    • C8Ex15 - Scroll Text - 2:21
    • C8Ex16 - Dialog Demo - 2:45
  • Section 9 - Lists
    • Lists - 30:21
    • C9Ex1 - Data Analysis - 2:20
    • C9Ex2 - Lotto Numbers - 4:31
    • C9Ex3 - Deck Of Cards GUI - 2:49
    • C9Ex4 - Bounce Balls - 5:59
  • Section 10 - Inheritance and Polymorphism
    • Inheritance and Polymorphism - 18:51
    • C10Ex1E2Ex3Ex4 - Geometric Objects - 7:33
    • C10Ex5 - Polymorphism Demo - 4:01
    • C10Ex6Ex7 - Clock - 5:14
  • Section 11 - Files and Exception Handling
    • Files - 24:42
    • C11Ex1 - Write Demo - 2:19
    • C11Ex2 - Read Demo - 2:20
    • C11Ex3 - Copy File - 1:37
    • C11Ex4 - Append Demo - 1:57
    • C11Ex5 - Write Read Numbers - 2:25
    • C11Ex6 - File Editor - 2:41
    • C11Ex7 - Test Exception - 3:32
    • C11Ex8Ex9 - Circle With Exception - 2:42
    • C11Ex10 - Processing Exception Object - 1:46
  • Section 12 - Tuples, Sets, and Dictionaries
    • Tuples, Sets, and Dictionaries - 33:27
    • C12Ex1 - Tuple Demo - 5:17
    • C12Ex2 - Set Demo - 5:09
    • C12Ex3 - Set List Performance Test - 4:09
    • C12Ex4 - Count Keywords - 4:59
    • C12Ex5 - Count Occurrence Of Words - 3:09
  • Section 13 - Recursion
    • Recursion - 13:34
    • C13Ex1 - Compute Factorial - 4:12
    • C13Ex2 - Compute Fibonacci - 4:03
    • C13Ex3 - Recursive Palindrome Using Substring - 2:49
    • C13Ex4 - Recursive Selection Sort - 4:36
    • C13Ex5 - Recursive Binary Search - 7:11
    • C13Ex6 - Directory Size - 4:54
    • C13Ex7 - Sierpinski Triangle - 6:27
    • C13Ex8 - Eight Queens - 5:53
  • Bonus - Additional Modules
    • 14-osdatetimerandom - 28:03
  • Resource Files
    • GitHub repository to access files

View Full Curriculum


Access
Lifetime
Content
4.0 hours
Lessons
28

JavaScript for Beginners: The Complete introduction to JS 2021

Learn the Basics of JavaScript & Create Various Programs and Applications

By Yassin Marco | in Online Courses

Learning how to program in any programming language properly can be very complicated, especially if you never did any programming before. Having the capacity to program in JavaScript is not different. This is why this course has been created to help you learn how to program in JavaScript properly. Here, you will also understand everything you need to know about JavaScript to master this programming language. The goal here is that by the end of this course, you have a solid understanding of how to write your code with Javascript and create your own JavaScript programs and applications.

4.4/5 average rating: ★ ★ ★ ★

  • Access 28 lectures & 4 hours of content 24/7
  • Create your own basic programs with JavaScript
  • Understand basic & more complex JavaScript functions
  • Use JavaScript on a daily basis
  • Learn how to use JavaScript the right way
  • Learn different tips & tricks to improve your JavaScript skills
Yassin Marco
4.2/5 Instructor Rating: ★ ★ ★ ★

Yassin has a BS in international management and multiple certifications in management and IT. He works on a daily basis with various Microsoft apps and is a specialist in excel as well as in various other fields such as online business creation and promotion, marketing, and many more. Also, he has a passion for finances and has helped many people in taking their first steps in the trading and investing world, from basic financial coaching to advanced Stock/Forex data analysis.

He has developed a passion for coaching and educating and has helped more than 380,000+ students on multiple online platforms. Teaching in English and French, he has been able to reach across to people spanning from over 198 countries.

Important Details

  • Length of time users can access this course: lifetime
  • Access options: desktop & mobile
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: beginner
  • Have questions on how digital purchases work? Learn more here

Requirements

  • Any device with basic specifications

Course Outline

  • Introduction
    • Introduction - 6:15
    • Introduction to JavaScript - 6:26
    • Downloading your text Editor - 5:58
  • Programming in JavaScript
    • Writing our first line of code - 6:49
    • Various Data Types - 6:01
    • Working with variables - 10:54
    • Basic string methods Part 1 - 6:35
    • Basic string methods Part 2 - 7:56
    • Working with numbers - 12:08
    • Google console and taking user input - 9:07
    • Practicing everything Part 1 - 12:46
    • Practicing everything Part 2 - 7:08
  • More Programming
    • Using arrays Part 1 - 13:29
    • Using Arrays Part 2 - 2:45
    • Creating Basic Functions - 11:17
    • Practice Part 1 - 11:32
    • Practice Part 2 - 7:39
    • Practice Part 3 - 1:16
  • Statements and Loops
    • Introduction to Statements - 5:16
    • Practicing the IF statement Part 1 - 13:59
    • Practicing the IF statement Part 2 - 4:24
    • The Basics of Loops - 5:44
    • The basics of the FOR loop - 6:46
    • Understanding the WHILE loop - 12:10
  • Final Project
    • Final Project part 1 - 13:16
    • Final Project part 2 - 11:51
    • Final Project part 3 - 24:16
    • Conclusion - 3:58

View Full Curriculum



Terms

  • Unredeemed licenses can be returned for store credit within 30 days of purchase. Once your license is redeemed, all sales are final.