Get $1 credit for every $25 spent!

The 2019 Complete Computer Science Bundle

Ending In:
Add to Cart - $39
Add to Cart ($39)
$1,450.99
97% off
wishlist
(88)
Courses
11
Lessons
875
Enrolled
873

What's Included

Product Details

Access
Lifetime
Content
3 hours
Lessons
28

An Easy Introduction to Python

Become a Python Programmer in Just a Few Hours

By Loonycorn | in Online Courses

Python is a general-purpose programming language which can be used to solve a wide variety of problems, be they in data analysis, machine learning, or web development. This course lays a foundation to start using Python, which considered one of the best first programming languages to learn. Even if you've never even thought about coding, this course will serve as your diving board to jump right in.

  • Access 28 lectures & 3 hours of content 24/7
  • Gain a fundamental understanding of Python loops, data structures, functions, classes, & more
  • Learn how to solve basic programming tasks
  • Apply your skills confidently to solve real problems
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: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: beginner

Requirements

  • Internet required

Course Outline

  • You, This Course and Us
    • You, This Course and Us (1:56)
    • Source Code
  • Getting Set Up
    • Install Anaconda (2:21)
  • Introducing Python
    • Saying Hello World in Python (5:23)
    • The If-Else Statement (10:32)
    • For Loops (9:45)
  • Data Structures
    • Lists: An Introduction (8:46)
    • Lists: Manipulating Lists with Slicing (9:58)
    • Dictionaries: Storing Key-Value Pairs (6:05)
    • Dictionaries: The setdefault Method, Dictionary of Dictionaries (6:40)
    • Sets and Tuples (4:36)
  • Define your own Functions, Modules and Classes
    • Functions (9:49)
    • Modules: Wrap your Functions into a Module (9:05)
    • Classes: The init Method and Class Variables (7:54)
    • Classes: Enhancing our Class with Decorators and Operator Overloading (7:57)
  • Getting Real - Writing a Web App
    • Build a Simple Web App using the Flask Web Framework (5:13)
    • Extending our Web App to use Web Templates (5:56)
    • Integrating our Web App with our Custom Module (6:57)
  • Common Programming Tasks
    • Parsing JSON Data (7:18)
    • Files and Exception Handling (10:46)
    • Regular Expressions (8:33)
    • Iterators (8:30)
  • Popular Python Libraries
    • Web Scraping with BeautifulSoup (3:57)
    • Pandas: An Introduction to Data Analysis (7:03)
    • Pandas: Transforming JSON Data into a Pandas Data Frame (4:13)
  • Logging
    • Log File: Logging Requests on our Web App to a file (4:37)
    • Databases: Setting up MariaDB to Store Log Data (6:31)
    • Databases: Logging Requests on our Web App to MariaDB (5:30)
    • Using the With Keyword to Manage our Database Connection (10:12)

View Full Curriculum


Access
Lifetime
Content
8.5 hours
Lessons
51

Scalable Programming with Scala and Spark

Get Rich Using Scala & Spark for Data Analysis, Machine Learning & Analytics

By Loonycorn | in Online Courses

The functional programming nature and the availability of a REPL environment make Scala particularly well suited for a distributed computing framework like Spark. Using these two technologies in tandem can allow you to effectively analyze and explore data in an interactive environment with extremely fast feedback. This course will teach you how to best combine Spark and Scala, making it perfect for aspiring data analysts and Big Data engineers.

  • Access 51 lectures & 8.5 hours of content 24/7
  • Use Spark for a variety of analytics & machine learning tasks
  • Understand functional programming constructs in Scala
  • Implement complex algorithms like PageRank & Music Recommendations
  • Work w/ a variety of datasets from airline delays to Twitter, web graphs, & Product Ratings
  • Use the different features & libraries of Spark, like RDDs, Dataframes, Spark SQL, MLlib, Spark Streaming, & GraphX
  • Write code in Scala REPL environments & build Scala applications w/ an IDE
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: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Requirements

  • Internet required
  • Some knowledge of Java or C++ is assumed

Course Outline

  • You, This Course and Us
    • You, This Course and Us (2:16)
    • Installing Scala and Hello World (9:43)
  • Introduction to Spark
    • What does Donald Rumsfeld have to do with data analysis? (8:45)
    • Why is Spark so cool? (12:23)
    • An introduction to RDDs - Resilient Distributed Datasets (9:39)
    • Built-in libraries for Spark (15:37)
    • Installing Spark (11:44)
    • The Spark Shell (6:55)
    • See it in Action : Munging Airlines Data with Spark (3:44)
    • Transformations and Actions (17:06)
  • Resilient Distributed Datasets
    • RDD Characteristics: Partitions and Immutability (12:35)
    • RDD Characteristics: Lineage, RDDs know where they came from (6:06)
    • What can you do with RDDs? (11:09)
    • Create your first RDD from a file (14:54)
    • Average distance travelled by a flight using map() and reduce() operations (6:59)
    • Get delayed flights using filter(), cache data using persist() (6:11)
    • Average flight delay in one-step using aggregate() (12:21)
    • Frequency histogram of delays using countByValue() (2:10)
  • Advanced RDDs: Pair Resilient Distributed Datasets
    • Special Transformations and Actions (14:45)
    • Average delay per airport, use reduceByKey(), mapValues() and join() (13:35)
    • Average delay per airport in one step using combineByKey() (8:23)
    • Get the top airports by delay using sortBy() (2:51)
    • Lookup airport descriptions using lookup(), collectAsMap(), broadcast() (10:57)
  • Advanced Spark: Accumulators, Spark Submit, MapReduce , Behind The Scenes
    • Get information from individual processing nodes using accumulators (9:25)
    • Long running programs using spark-submit (7:11)
    • Spark-Submit with Scala - A demo (6:10)
    • Behind the scenes: What happens when a Spark script runs? (14:30)
    • Running MapReduce operations (10:53)
  • PageRank: Ranking Search Results
    • What is PageRank? (16:44)
    • The PageRank algorithm (6:15)
    • Implement PageRank in Spark (9:45)
    • Join optimization in PageRank using Custom Partitioning (6:28)
  • Spark SQL
    • Dataframes: RDDs + Tables (15:48)
  • MLlib in Spark: Build a recommendations engine
    • Collaborative filtering algorithms (12:19)
    • Latent Factor Analysis with the Alternating Least Squares method (11:39)
    • Music recommendations using the Audioscrobbler dataset (5:38)
    • Implement code in Spark using MLlib (14:45)
  • Spark Streaming
    • Introduction to streaming (9:55)
    • Implement stream processing in Spark using Dstreams (9:19)
    • Stateful transformations using sliding windows (8:17)
  • Graph Libraries
    • The Marvel social network using Graphs (14:30)
  • Scala Language Primer
    • Scala - A "better Java"? (10:13)
    • How do Classes work in Scala? (11:02)
    • Classes in Scala - continued (15:50)
    • Functions are different from Methods (7:31)
    • Collections in Scala (10:12)
    • Map, Flatmap - The Functional way of looping (11:36)
    • First Class Functions revisited (8:46)
    • Partially Applied Functions (7:31)
    • Closures (8:07)
    • Currying (10:34)
  • Supplementary Installs
    • Installing Intellij (12:43)
    • Installing Anaconda (9:00)
    • [For Linux/Mac OS Shell Newbies] Path and other Environment Variables (8:25)

View Full Curriculum


Access
Lifetime
Content
24 hours
Lessons
100

Break Away: Programming And Coding Interviews

Ace Your Next Programming Interview with These Technical Fundamentals & Interview Tips

By Loonycorn | in Online Courses

Getting a little stressed about a job interview is completely natural. Interviews for programming jobs are a bit different, however, and it's important to plan accordingly so you have all of your many bases covered. This immersive course was compiled by a team that has conducted hundreds of technical interviews at Google and Flipkart, and will give you not just interview tips, but an in-depth review of all the programming knowledge you'll need to ace any programming interview.

  • Access 83 lectures & 20.5 hours of content 24/7
  • Learn how to approach & prepare for coding interviews
  • Understand pointer concepts & memory management at a deep & fundamental level
  • Tackle a wide variety of linked list problems & know how to answer linked list questions in interviews
  • Master a variety of general programming problems that may come up in an interview
  • Visualize how common sorting & searching algorithms work
  • Gain step-by-step solutions to dozens of programming problems from Game of Life to Sudoku Validator & more
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: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Requirements

  • Internet required

Course Outline

  • Introduction
    • Coding interviews are tough - but beatable (17:13)
  • Pointer and Arrays
    • Introduction to pointers (20:01)
    • Pointer problems and arrays (13:37)
    • Pointer arithmetic (11:45)
    • Practice makes perfect - pointer problems (7:39)
  • Strings are just pointers at heart
    • Working with strings (14:09)
    • Pointer as arguments to functions (9:41)
    • Practice makes perfect - string problems (19:25)
  • Linked lists can be fun!
    • Pointers to pointers - bend your mind (10:30)
    • Pointers to pointers - reassignment and modification (11:14)
    • Get started with linked lists (17:18)
    • Warming up to - they get tricky quickly (16:21)
    • Cruising along - linked lists are fun aren't they? (19:01)
    • Autopilot - linked lists are easy after all (16:33)
    • Do not overlook the doubly linked list (10:03)
  • Bit Manipulation
    • Bit Manipulation - I (10:09)
    • Bit Manipulation - II (8:41)
    • Useful Bit Manipulation Techniques (13:15)
    • Get And Set The Nth Bit (13:32)
    • Print And Count Bits (18:56)
    • Reverse The Bits In An Integer (10:12)
  • General programming problems - practice makes perfect
    • Starting up - palindromes and points within a distance (18:18)
    • Play the Game Of Life and Break A Document Into Chunks (18:35)
    • Run Length Encoding And Adding Numbers Digit By Digit (19:48)
    • Sudoku Board Validation and Incrementing A Number In Another Number System (19:57)
  • Big-O Notation, Sorting And Searching Algorithms
    • Performance and Complexity (16:04)
    • Big O Notation (15:58)
    • Big O Notation More Examples (19:15)
    • Sorting Trade-Offs (10:54)
    • Selection Sort (15:26)
    • Bubble Sort (14:44)
    • Insertion Sort (14:34)
    • Shell Sort (14:26)
    • Merge Sort (19:25)
    • Quick Sort (15:30)
    • Binary Search - search quickly through a sorted list (11:36)
  • Recursion and the recursive sense
    • What is recursion - why is it so hard? (17:35)
    • Binary search - implemented recursively (13:50)
    • Find all subsets of a set (15:26)
    • Check whether 2 binary trees are the same (15:35)
    • Implement paint fill to color a region on screen (11:44)
    • Build A car Given Tasks And Dependencies (15:09)
    • Generate Anagrams Of A Word (17:19)
    • Help A Rat Find It's Way Through a Maze (13:03)
    • Place 8 Queens On A Board Safely (17:52)
  • Stacks And Queues
    • Meet The Stack - Simple But Powerful (15:42)
    • Building A Stack Using Java (16:55)
    • Match Parenthesis To Check A Well Formed Expression (11:23)
    • Find The Minimum Element In A Stack In Constant Time (8:53)
    • Meet The Queue - A Familiar Sight In Everyday Life (14:13)
    • The Circular Queue - Tricky But Fast (19:46)
    • Build A Queue With Two Stacks (17:32)
  • Binary Trees
    • Meet The Binary Tree - A Hierarchical Data Structure (13:05)
    • Breadth First Traversal (18:45)
    • Depth First - Pre-OrderTraversal (14:37)
    • Depth First - In-Order and Post-Order Traversal (13:53)
  • Binary Search Trees
    • The Binary Search Tree - an introduction (9:51)
    • Insertion and Lookup in a Binary Search Tree (17:02)
  • Binary Tree Problems
    • Minimum Value, Maximum Depth and Mirror (12:14)
    • Count Trees, Print Range and Is BST (14:41)
    • Has Path Sum, Print Paths, Least Common Ancestor (14:51)
  • Heaps
    • The Heap Is Just The Best Way to Implement a Priority Queue (17:17)
    • Meet The Binary Heap - It's A Tree At Heart (12:41)
    • The Binary Heap - Logically A Tree Really An Array (17:16)
    • The Binary Heap - Making It Real With Code (7:40)
    • Heapify! (19:35)
    • Insert And Remove From A Heap (16:36)
  • Revisiting Sorting - The Heap Sort
    • Heap Sort Phase I - Heapify (19:33)
    • Heap Sort Phase II - The Actual Sort (17:44)
  • Heap Problems
    • Maximum Element In A Minimum Heap and K Largest Elements In A Stream (15:56)
    • Merge K Sorted Lists Into One Sorted List Using A Heap (11:42)
    • Find The Median In A Stream Of Elements (16:06)
  • Graphs
    • Introducing The Graph (15:42)
    • Types Of Graphs (7:23)
    • The Directed And Undirected Graph (14:31)
    • Representing A Graph In Code (8:11)
    • Graph Using An Adjacency Matrix (15:27)
    • Graph Using An Adjacency List And Adjacency Set (17:55)
    • Comparison Of Graph Representations (10:11)
    • Graph Traversal - Depth First And Breadth First (14:58)
  • Graph Algorithms
    • Topological Sort In A Graph (17:30)
    • Implementation Of Topological Sort (6:56)
    • Design A Course Schedule Considering Pre-reqs For Courses (13:01)
  • Shortest Path Algorithms
    • Introduction To Shortest Path In An Unweighted Graph - The Distance Table (12:38)
    • The Shortest Path Algorithm Visualized (14:15)
    • Implementation Of The Shortest Path In An Unweighted Graph (6:19)
    • Introduction To The Weighted Graph (3:29)
    • Shortest Path In A Weighted Graph - A Greedy Algorithm (18:47)
    • Dijkstra's Algorithm Visualized (14:14)
    • Implementation Of Dijkstra's Algorithm (8:15)
    • Introduction To The Bellman Ford Algorithm (8:40)
    • The Bellman Ford Algorithm Visualized (11:22)
    • Dealing With Negative Cycles In The Bellman Ford Algorithm (7:36)
    • Implementation Of The Bellman Ford Algorithm (6:54)
  • Spanning Tree Algorithms
    • Prim's Algorithm For a Minimal Spanning Tree (17:27)
    • Use Cases And Implementation Of Prim's Algorithm (9:52)
    • Kruskal's Algorithm For a Minimal Spanning Tree (8:43)
    • Implementation Of Kruskal's Algorithm (7:33)
  • Graph Problems
    • Design A Course Schedule Considering Pre-reqs For Courses (13:01)
    • Find The Shortest Path In A Weighted Graphs - Fewer Edges Better (14:31)

View Full Curriculum


Access
Lifetime
Content
21 hours
Lessons
212

The Web Development Omnibus: jQuery, AngularJS and 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 212 lectures & 21 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 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: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Requirements

  • Internet required

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
3.5 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 host of Alexa-aware devices. In this course, you'll learn how to start building apps for use with Alexa.

  • Access 37 lectures & 3.5 hours of content 24/7
  • Cover 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 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: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Requirements

  • Internet required

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
    • AWS Lambdas (6:07)
    • Link the Alexa Skill with the Lambda Function
    • 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
3.5 hours
Lessons
31

Building 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 31 lectures & 3.5 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 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: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Requirements

  • Internet required

Course Outline

  • Section 0: You, This course And Us.
    • You,This Course And Us. (3:48)
  • Section 1 : The Big Picture
    • Course Outline (7:01)
    • Introduction To Chatbots (7:46)
    • Setting Up The Platform (6:47)
  • Section 2 : Building Blocks
    • Module Outline (2:05)
    • Agent Creation (5:18)
    • Exploring Agent Settings (6:52)
    • Default Intents (5:48)
    • Custom Intents (7:00)
    • Entities (8:27)
    • User Says (9:27)
    • Parameters and Responses (6:54)
    • Configuring BookRooms Intent (5:40)
    • Contexts (8:06)
    • Follow-up Intents (7:44)
  • Section 3 : Dialogs
    • Module Outline (2:29)
    • Linear Dialogs (5:35)
    • Non-linear Dialogs (8:45)
    • Non-linear Dialogs (contd) (7:35)
  • Section 4 : Fulfillment & Deployment
    • Module Outline (4:10)
    • Creating CheckWeather Intent (4:52)
    • Webhooks (4:52)
    • Setting Up A Flask App (5:16)
    • OpenWeatherMap API (4:27)
    • Adding Logic to Webhook (5:40)
    • Introduction To Heroku (5:37)
    • Deploying to Heroku Using GitHub (7:09)
    • Intent Fulfillment Using Webhooks (4:11)
    • Building A Slack App (4:50)
    • Integrating DialogFlow Bot With Slack App (6:40)
  • Appendix : Source Files
    • Resource Materials

View Full Curriculum


Access
Lifetime
Content
6 hours
Lessons
59

Using Elasticsearch and Kibana

Scalable Search & Analytics for Document Data

By Loonycorn | in Online Courses

Elasticsearch wears two hats: It is both a powerful search engine built atop Apache Lucene, as well as a serious data warehousing and Business Intelligence technology. This course will help you use the power of ES in both contexts.

  • Access 59 lectures & 6 hours of content 24/7
  • Learn how search works, & the role that inverted indices and relevance scoring play
  • Discover the tf-idf algorithm & the intuition behind term frequency, inverse document frequency and field length
  • Perform horizontal scaling using sharding & replication
  • Explore powerful querying functionality including a query-DSL
  • Use REST APIs - from browser as well as from cURL
  • Dive into Kibana for exploring data & finding insights
  • Cover aggregations — metrics, bucketing & nested aggs
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: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Requirements

  • Internet required

Course Outline

  • First Section
    • You, This Course, and Us (2:23)
  • Introducing Elasticsearch
    • Course Outline (3:00)
    • Course Materials
    • A Brief History of Search (7:51)
    • Steps in Search (8:14)
    • Inverted Index
    • Using the Inverted Index (5:19)
    • Lucene (7:20)
    • Elasticsearch Introduced (5:37)
    • Installing ES (8:43)
    • Clusters and Nodes
    • Indices and Documents (8:26)
    • Cluster Health (7:00)
  • CRUD Operations in Elasticsearch
    • Curl (7:20)
    • Create Index (8:15)
    • Create Document (8:20)
    • Retrieve Documents (5:23)
    • Update Documents (8:18)
    • Script Elements (4:40)
    • Delete (4:34)
    • mGet (4:39)
    • The Bulk API (9:06)
    • Bulk Loading (9:05)
  • The Query DSL (Domain-Specific Language)
    • Search Recap (4:21)
    • Random Data Gen (5:19)
    • Contexts (5:52)
    • Contexts (5:56)
    • Query Params
    • Request Body (9:03)
    • Source Filtering (8:32)
    • Full Text Search_Match (4:10)
    • Full Text Search_MatchPhrasePrefix (7:14)
    • Relevance (8:10)
    • TfIdf (6:06)
    • Common Terms (6:17)
    • Boolean Compound Queries (6:42)
    • Term Queries Boosting Terms (4:42)
    • Filters (6:01)
    • Wildcards (6:09)
  • Aggregations
    • Types Of Aggregations (3:59)
    • Metric Aggregations (7:12)
    • Cardinality Aggregations (9:07)
    • Bucketing Aggregations (5:31)
    • Bucketing Aggregations_2 (6:09)
    • Multilevel Nested Aggregations (5:13)
    • FilterBucketAggs (6:43)
  • Elasticsearch and Python
    • Pythonsetup (8:32)
    • Create Index (4:59)
    • Documents (5:07)
    • Search_Count (4:40)
  • Kibana
    • Kibana_elk (4:26)
    • Kibana_Install (2:48)
    • Mapping (7:51)
    • Loading Logs (6:37)
    • Discovery (6:49)
    • Visualize
    • Timelion (8:01)
    • Dashboard (3:50)
    • Anaconda And Pip (9:00)

View Full Curriculum


Access
Lifetime
Content
8 hours
Lessons
52

From 0 to 1 : Spark for Data Science in Python

Make Your Data Fly Using Spark for Analytics, Machine Learning, & Data Science

By Loonycorn | in Online Courses

Analysts and data scientists typically have to work with several systems to effectively manage mass sets of data. Spark, on the other hand, provides you a single engine to explore and work with large amounts of data, run machine learning algorithms, and perform many other functions in a single interactive environment. This course's focus on new and innovating technologies in data science and machine learning makes it an excellent one for anyone who wants to work in the lucrative, growing field of Big Data.

  • Access 52 lectures & 8 hours of content 24/7
  • Use Spark for a variety of analytics & machine learning tasks
  • Implement complex algorithms like PageRank & Music Recommendations
  • Work w/ a variety of datasets from airline delays to Twitter, web graphs, & product ratings
  • Employ all the different features & libraries of Spark, like RDDs, Dataframes, Spark SQL, MLlib, Spark Streaming & GraphX
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: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels, but some knowledge of Python and Java are assumed

Requirements

  • Internet required

Course Outline

  • You, This Course and Us
    • You, This Course and Us (2:15)
  • Introduction to Spark
    • What does Donald Rumsfeld have to do with data analysis? (8:45)
    • Why is Spark so cool? (12:23)
    • An introduction to RDDs - Resilient Distributed Datasets (9:39)
    • Built-in libraries for Spark (15:37)
    • Installing Spark (6:42)
    • The PySpark Shell (4:51)
    • Transformations and Actions (13:33)
    • See it in Action : Munging Airlines Data with PySpark - I (10:13)
  • Resilient Distributed Datasets
    • RDD Characteristics: Partitions and Immutability (12:35)
    • RDD Characteristics: Lineage, RDDs know where they came from (6:06)
    • What can you do with RDDs? (11:09)
    • Create your first RDD from a file (16:11)
    • Average distance travelled by a flight using map() and reduce() operations (5:50)
    • Get delayed flights using filter(), cache data using persist() (5:24)
    • Average flight delay in one-step using aggregate() (15:10)
    • Frequency histogram of delays using countByValue() (3:26)
    • See it in Action : Analyzing Airlines Data with PySpark - II (6:25)
  • Advanced RDDs: Pair Resilient Distributed Datasets
    • Special Transformations and Actions (14:45)
    • Average delay per airport, use reduceByKey(), mapValues() and join() (18:11)
    • Average delay per airport in one step using combineByKey() (11:53)
    • Get the top airports by delay using sortBy() (4:34)
    • Lookup airport descriptions using lookup(), collectAsMap(), broadcast() (14:03)
    • See it in Action : Analyzing Airlines Data with PySpark - III (4:58)
  • Advanced Spark: Accumulators, Spark Submit, MapReduce , Behind The Scenes
    • Get information from individual processing nodes using accumulators (13:35)
    • See it in Action : Using an Accumulator variable (2:41)
    • Long running programs using spark-submit (5:58)
    • See it in Action : Running a Python script with Spark-Submit (3:58)
    • Behind the scenes: What happens when a Spark script runs? (14:30)
    • Running MapReduce operations (13:44)
    • See it in Action : MapReduce with Spark (2:05)
  • Java and Spark
    • The Java API and Function objects (15:59)
    • Pair RDDs in Java (4:49)
    • Running Java code (3:49)
    • Installing Maven (2:20)
    • See it in Action : Running a Spark Job with Java (5:09)
  • PageRank: Ranking Search Results
    • What is PageRank? (16:44)
    • The PageRank algorithm (6:15)
    • Implement PageRank in Spark (12:01)
    • Join optimization in PageRank using Custom Partitioning (7:27)
    • See it Action : The PageRank algorithm using Spark (3:46)
  • Spark SQL
    • Dataframes: RDDs + Tables (16:05)
    • See it in Action : Dataframes and Spark SQL (4:50)
  • MLlib in Spark: Build a recommendations engine
    • Collaborative filtering algorithms (12:19)
    • Latent Factor Analysis with the Alternating Least Squares method (11:39)
    • Music recommendations using the Audioscrobbler dataset (7:51)
    • Implement code in Spark using MLlib (16:05)
  • Spark Streaming
    • Introduction to streaming (9:55)
    • Implement stream processing in Spark using Dstreams (10:54)
    • Stateful transformations using sliding windows (9:26)
    • See it in Action : Spark Streaming (4:17)
  • Graph Libraries
    • The Marvel social network using Graphs (18:01)

View Full Curriculum


Access
Lifetime
Content
6.5 hours
Lessons
67

Learn By Example: Scala

Master This Highly Scalable General-Purpose Language with 65 Examples

By Loonycorn | in Online Courses

The best way to learn is by example, and in this course you'll get the lowdown on Scala with 65 comprehensive, hands-on examples. Scala is a general-purpose programming language that is highly scalable, making it incredibly useful in building programs. Over this immersive course, you'll explore just how Scala can help your programming skill set, and how you can set yourself apart from other programmers by knowing this efficient tool.

  • Access 67 lectures & 6.5 hours of content 24/7
  • Use Scala w/ an intermediate level of proficiency
  • Read & understand Scala programs, including those w/ highly functional forms
  • Identify the similarities & differences between Java & Scala to use each to their advantages
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: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: intermediate

Compatibility

  • Internet required

Course Outline

  • You, This Course and Us
    • You, This Course and Us
  • Introducing Scala
    • Introducing Scala: Java's Cool Cousin
    • Installing Scala
    • Examples 1 and 2 - Hello world
    • Example 3 - Mutable and Immutable ‘variables’
    • Example 4 - Type Inference
    • Example 5 - String Operations
    • Example 6 - A Unified Type System
    • Example 7 - Emptiness in Scala
    • Example 8 - Type Operations
  • Expressions or Statements?
    • Example 9 - Statements v Expressions
    • Example 10 - Defining Values and Variables via Expressions
    • Example 11 - Nested Scopes in Expression Blocks
    • Example 12 - If/Else expression blocks
    • Example 13 - match expressions
    • Example 14 - match expressions: Pattern guards & OR-ed expressions
    • Example 15 - match expressions: catch-all to match-all
    • Example 16 - match expressions: down casting with Pattern Variables
    • Example 17 - for loops can be expressions OR statements
    • Example 18 - for loops: 2 types of iterators
    • Example 19 - for loops with if conditions: Pattern Guards
    • Example 21 - while/do-while Loops: Pure Statements
  • First Class Functions
    • First Class Functions
    • Example 22 - Functions are named, reusable expressions
    • Example 23 - Procedures are named, reusable statements
    • Example 24 - Functions with No Inputs
    • Example 25 - Invoking Functions with Expression Blocks
    • Example 26 - Nested Functions
    • Example 27 - Named Function Parameters
    • Example 28 - Parameter Default Values
    • Example 29 - Type Parameters: Parametric Polymorphism (5:11)
    • Example 30 - Vararg Parameters
    • Example 31 - Assigning Functions to Values
    • Example 32 - Higher Order Functions
    • Example 33 - Anonymous Functions (aka Function Literals)
    • Example 34 - Placeholder Syntax
    • Example 35 - Partially Applied Functions
    • Example 36 - Currying
    • Example 37 - By-Name Parameters
    • Example 38 - Closures
  • Collections
    • Example 39 - Tuples
    • Example 40 - Lists: Creating Them
    • Example 41 - Lists: Using Them
    • Example 42 - Lists: Higher Order Functions
    • Example 43 - Scan, ScanLeft, ScanRight
    • Example 44 - Fold, FoldLeft, FoldRight
    • Example 45 - Reduce,ReduceLeft,ReduceRight
    • Example 46 - Other, Simpler Reduce Operations
    • Example 47 - Sets and Maps
    • Example 48 - Mutable Collections, and Arrays
    • Example 49 - Option Collections
    • Example 50 - Error handling with util.Try
  • Classes and Objects
    • Example 51 - Classes
    • Example 52 - Primary v Auxiliary Constructors
    • Example 53 - Inheritance from Classes
    • Example 54 - Abstract Classes
    • Example 55 - Anonymous Classes
    • Example 56 - Type Parameters
    • Example 57 - Lazy Values
    • Example 58 - Default Methods with apply
    • Example 59 - Operators
    • Example 60 - Access Modifiers
    • Example 61 - Singleton Objects
    • Example 62 - Companion Objects
    • Example 63 - Traits
    • Example 64 - Case Classes
    • Example 65 - Self Types

View Full Curriculum


Access
Lifetime
Content
16.5 hours
Lessons
145

Software Testing Omnibus: Sikuli, Selenium, JUnit and 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 145 lectures & 16.5 hours of content 24/7
  • Use image recognition to automate just about anything that appears on-screen w/ Sikuli
  • Work w/ Selenium's Java API to test browser functionality & automate tasks w/ nearly 45 solved examples
  • Test user interactions of all kinds such as clicking, entering text, dragging & dropping, & selecting from dropdowns
  • Interact w/ HTML5 based elements like video players
  • Write simple tests using all the different features of JUnit tests
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: web streaming, mobile streaming
  • Certification of completion not included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: all levels

Requirements

  • Internet required

Course Outline

  • 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:26)
    • 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 24: Creating Mock Objects and Verifying Interactions (6:01)
    • Example 25: Stubbing Objects for Expected Results (4:27)
  • 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
13 hours
Lessons
93

Learn By Example: The Foundations of HTML, CSS & JavaScript

Lay the Foundations for Your Web Development Career with Training in HTML, CSS & JavaScript

By Loony Corn | in Online Courses

There are many short cuts in web coding that may ultimately lead to issues down the line. This course will teach you solid fundamentals of JavaScript, HTML, and CSS, and give you the skills you need to write efficient and lasting code. Perfect for the inexperienced, this course provides a great background in a range of popular web coding frameworks that will facilitate the learning of other languages in the future.

  • Access 13 hours of content & 93 lessons 24/7
  • Begin your programming path w/ basic HTML
  • Understand inheritance & selection in CSS, two essential concepts
  • Discover closures & prototypes in JavaScript, and how they differ from other languages
  • Learn JSON & its importance to linking back-ends written in Java/front-ends written in JavaScript
  • Use the Document-Object-Model to tie it all together
  • Reach the instructors any time by e-mail
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: web streaming, mobile streaming
  • Certification of completion included
  • Redemption deadline: redeem your code within 30 days of purchase
  • Experience level required: beginner

Requirements

  • Internet required

Course Outline

  • Welcome to HTML, CSS and Javascript!
    • Welcome to HTML, CSS and Javascript!
  • HTML
    • Introducing HTML and CSS
    • Introduction to HTML
    • Introduction to CSS
    • The A Tag
    • Paths
    • Quotes
    • Lists - Ordered and Unordered
    • Other Miscellaneous HTML Tags
    • URL and Domain Names
    • The img Tag
    • The HTML Standard
  • CSS
    • Cascading Stylesheets reintroduced
    • Inheritance in CSS
    • CSS Selectors
    • Fonts
    • Colors
    • The Box Model
    • The
  • Javascript Basics
    • Introducing Javascript
    • Example 1: Executing Javascript code
    • Example 2: Basic programming constructs
    • Example 3: Separating HTML and JS files
    • Example 4: Using the console.log statement
    • Example 5: Local and global variables
    • Example 6: Undeclared variables in JS are global
    • Example 7: Local variables hide global variables of the same name
    • Example 8: Javascript is ephemeral, reloading a page resets everything
    • Example 9: Creating and using arrays
    • Example 10: Copying an array
    • Example 11: Adding an element to an array
    • Example 12: Deleting elements from an array
    • Example 13: Arrays can contain different types
    • Example 14: Non-existent array elements are undefined
    • First class functions
  • Objects in Javascript
    • Introduction to Javascript objects
    • Example 15: Creating an object using JSON
    • Example 16: Creating an object using a constructor
    • Example 17: Adding properties to objects dynamically
    • Example 18: Removing properties from objects dynamically
    • Example 19: Object properties can be functions
    • Example 20: Object constructors can have property functions
    • Example 21: Two ways of accessing object properties
    • Example 22: Iterating over all properties in an object
    • Example 23: Calling a constructor without new
    • Example 24: Understanding the typeof operator
    • Example 25: Paternity tests using instanceof
    • Example 26: Faking public and private properties
  • First Class Functions - In Detail
    • Example 27: Functions as arguments to functions
    • Example 28: Functions that return functions
    • Example 29: Arguments pass by value to functions
    • Example 30: Arguments pass by reference
  • Javascript Quirks
    • Example 31: Understanding undefined
    • Example 32: Understanding null
    • Example 33: Understanding NaN
    • Example 34: Strings and numbers and conversions between them
    • Example 35: Strange comparison operators
    • Example 36: Truthy and falsy
    • Example 37: Simple string operations
  • Functions Yet Again
    • Example 38: Declared Functions, Function Literals and Hoisting
    • Example 39: Named And Anonymous Function Literals
    • Example 40: Nested Functions
    • Example 41: Nested functions can be declared
  • Closures
    • Introduction to closures
    • Example 42: Closure variables win over local variables
    • Example 43: Closures with declared functions and function literals
    • Example 44: Referencing environment with function parameters
    • Example 45: Closure variables cooler than global variables
  • Prototypes, Dynamic Prototyping and Inheritance
    • Introduction to prototypes
    • Example 46: Prototypical Inheritance In Action
    • Example 47: Dynamic Prototyping
    • Example 48: Inheritance hierarchy using chained prototypes
    • Example 49: Overriding properties using prototypes
    • Example 50: The base object as the ultimate prototype
    • Example 51: Overriding properties of built-in objects
  • The Document Object Model & Event Handling
    • Introduction to the Document Object Model
    • Example 52: Modifying the HTML of a page using the DOM
    • Example 53: Event Handling
    • Example 54: Adding Multiple Event Handlers on the Same Event
    • Example 55: Setting Arbitrary HTML Attributes
    • Example 56: The window object
  • JSON
    • Introduction To JSON
    • Example 57: Simple JSON Use Cases
    • Example 58: Creating meaningful objects with JSON

View Full Curriculum



Terms

×
Your Ad Blocker Is On!
Sadly, recent updates to your Ad Blocker are preventing crucial parts of our shop from loading. Frustrating. We know. We hate to nag, but please turn off your Ad Blocker or whitelist us to continue exploring our shop.