Course Library - Learn by Building

  1. This high quality curriculum is carefully designed to teach you job skills as a programmer. You're going to learn a massive set of skills ranging from fundamentals of programming and computer science, data structures and algorithms, state-of-the-art tools, libraries, and frameworks.
  2. You'll learn by building real-world applications, and learn theory along the way.
  3. These lessons are taught by seasoned teachers who explain everything in surprisingly simple language. That's what makes Upskill unique!
  4. Don't wait to get started - we offer over 200 free lessons and add new lessons regularly!

Curriculum

The Essential Web Developer Course FREE 197 Lessons

Skills covered: HTML CSS JS jQuery Ruby Rails Databases E-commerce Bootstrap Git Servers HTTP Object Oriented Programming API's
This massive, free course covers full-stack web development using modern tools like HTML, CSS, JavaScript and Ruby on Rails. The ... read more
Introduction
1. Welcome to the Course! (2:18) Preview
2. Important! Read Me! Preview
4. How Computers Work (4:04)
HTML
6. Sublime Text & Other Tools (3:46) Preview
7. First HTML Page (3:57) Preview
8. The HTML Page Structure (4:07) Preview
9. Text (11:24)
10. Lists (5:45)
11. Images (8:57)
12. Tables (10:26)
13. Forms (13:02)
14. Links (6:29)
15. Divs and Spans (12:09)
16. Comments (2:32)
CSS
18. Selecting HTML (4:30)
19. Color Values (5:28)
20. CSS Gradients (3:48)
21. Text and Fonts (7:28)
22. Listomania (2:54)
23. Comments (1:49)
26. Display Options (8:14)
27. Inspector Gadget (7:04)
28. CSS Is Classy (7:41)
29. Selectors Revisited (8:57)
Deep Dive: Build a Blog
32. Turn Cloud9 Into a Server (7:16) Preview
33. Creating Blog Posts (6:17)
36. Displaying the Date (4:49)
The Ruby Language
37. Scripting Languages (12:18)
38. Ruby Files & IRB (5:42)
39. Numbers & Strings (8:18)
41. Booleans (8:18)
42. If Statements (8:34)
43. Arrays (8:31)
44. Hashes (4:22)
45. Iterators (11:55)
46. Methods (13:16)
47. Classes (11:13)
48. Inheritance (11:32)
Build a Real Startup
58. Explanation of Git (4:07)
62. Gemfile Changes (7:12)
72. Bootstrap Navbar (6:59)
73. Background Gradient (7:07)
77. Navbar Text Color (8:26)
83. Links in Rails (5:27)
85. Route Prefixes (6:58)
89. Bootstrap JavaScript (10:34)
90. The Asset Pipeline (7:48)
Forms, Databases, and Sending Emails
93. Contact Form Page (10:45)
95. Contact Form Fields (6:54)
97. Bootstrap the Form (7:37)
101. Contacts Table (6:46)
103. Contact Model File (3:52)
109. Form Validations (5:49)
111. The Flash and Errors (7:34)
112. Explanation of Flash (4:51)
115. Custom URLs (3:40)
117. HTTP, REST, and Rails (14:11)
118. Cleaning Up the Routes (16:05)
119. Contact Mailer File (6:58)
121. The Mailer View (4:57)
User Memberships and Accepting Subscription Payments
131. Devise Gem Setup (11:26)
136. Nav Links for Devise (4:53)
137. Link Helpers (10:06)
140. Hiding with CSS (6:31)
145. Pseudocode (4:26)
149. Accessing Parameters (5:43)
155. Explanation of Figaro (5:53)
156. Stripe Requirements (16:29)
User Profiles and Relational Databases
177. Profiles Create Action (11:01)
185. Image Upload (8:36)
188. Home Improvement (15:20)
190. Profile Update Action (11:33)
192. Users Index Page (5:53)
195. Copy Improvements (3:31)
196. Final Deploy (5:12)

HTML & CSS Syntax Review FREE 24 Lessons

Skills covered: HTML CSS Box Model Typography
Review the fundamentals of HTML and CSS. HTML (Hypertext Markup Language) is used for putting content on a web page. With... read more
HTML
1. Sublime Text & Other Tools (3:46) Preview
2. First HTML Page (3:57) Preview
4. Text (11:24)
5. Lists (5:45)
6. Images (8:57)
7. Tables (10:26)
8. Forms (13:02)
9. Links (6:29)
10. Divs and Spans (12:09)
11. Comments (2:32)
CSS
13. Selecting HTML (4:30)
14. Color Values (5:28)
15. CSS Gradients (3:48)
16. Text and Fonts (7:28)
17. Listomania (2:54)
18. Comments (1:49)
21. Display Options (8:14)
22. Inspector Gadget (7:04)
23. CSS Is Classy (7:41)
24. Selectors Revisited (8:57)

JavaScript Basics FREE 18 Lessons

Skills covered: JavaScript Loops Conditionals Operators Data Types Variables
JavaScript - the standard for web development. JavaScript, not to be confused with Java, was created in 1995 by Brendan Eich while he ... read more
1. Setting Up to Code (2:56) Preview
2. The JavaScript Console (4:13) Preview
3. Getting a Feel for JavaScript (10:23) Preview
4. The Text Editor (14:09) Preview
5. Numbers (6:51)
6. Strings (5:30)
7. Variable Assignment (6:23) Preview
8. Booleans (4:46)
10. Logical Operators (5:13)
11. Comments (3:51)
12. If Statements (8:14)
13. Ternary Operator (4:33)
14. Switch Statements (5:46)
15. While Loops (6:24)
16. Do While Loops (2:52)
17. For Loops (8:02)
18. Nested for Loops (6:34)

Intermediate JavaScript PRO 14 Lessons

Skills covered: JavaScript Functions Recursion Arrays Scope Object Oriented Programming Prototypal Inheritance Regular Expressions
Learn programming concepts with JavaScript. In these lessons, we'll go over concepts that apply to many other programming languages. T... read more
1. Arrays (9:28) Preview
2. Array Functions (5:24)
3. Functions (7:59)
4. Function Return (3:57)
5. Recursion (7:08)
6. Scope (10:02)
7. Closure (8:57)
8. Advanced Arrays (11:01)
9. Objects (4:58)
10. Classes (9:01)
11. Regex (6:18)
12. Errors (8:02)
13. Var Let Const (6:01)

JavaScript and the Browser PRO 20 Lessons

Skills covered: JavaScript Functions DOM Objects Prototypal Inheritance Events
Controlling browsers with JavaScript. Every major browser has a JavaScript engine built-in. As you'll see, the three core web languages... read more
1. Html Structure (6:47) Preview
2. DOM Intro (6:57)
3. DOM Levels Webapis (3:06)
4. Window Properties (9:12)
5. Window Methods (6:51)
6. Document (12:20)
7. Node Properties (8:14)
8. Node Methods (4:40)
10. Events Intro (9:12)
11. More Common Events (4:05)
12. Bubbling Target (6:27)
13. Propagation Phases (2:43)
14. Delegation (4:09)
15. Prevent Default (2:37)
16. Page Lifecycle (5:43)
17. Forms (8:06)
18. Form Validation (6:46)
19. Jquery (12:20)
20. Cookies (6:23)

Build a Game in the Browser: Tic Tac Toe FREE 6 Lessons

Skills covered: JavaScript DOM HTML CSS Arrays Functions Objects
Learn by applying your skills. It's time to apply the skills you've learned so far to build a mini-game: an interactive Tic Tac Toe gam... read more
1. Intro (4:41)
2. Drawing Board (10:20)
3. Executing Moves (11:55)
4. Updating Dom (7:10)
5. Scoring the Game (13:49)
6. Code Review (9:04)

Build an Application from Scratch and Structure Your Code PRO 31 Lessons

Skills covered: HTML CSS JavaScript Data Storage HTTP Form Validation Application Structure MVC
Applying ES6 to build an MVC application. In this course, you'll get to build a practical application from scratch with HTML, CSS, and ... read more
1. Demo (0:52) Preview
2. Html Form (5:41)
3. Add Js (3:47)
4. Select Form (3:57)
5. Controller Setup (4:39)
6. Form Values (2:52)
8. Model Setup (3:43)
9. Bind This (3:20)
11. Expense Row Setup (4:17)
12. Expense Row P2 (2:52)
13. Db Setup (3:08)
14. localStorage (5:25)
15. Delete Button Setup (4:27)
16. Delete Button P2 (4:29)
17. Edit Button Setup (3:00)
18. Edit Row Setup (5:12)
19. Edit Form (2:47)
20. Edit Form Cancel (4:05)
22. Wrap Up Edit Form (5:11)
25. Validate Amount P2 (3:32)
26. Format Amount (4:13)
27. Hide Error on Reset (1:36)
29. Validate Date Setup (3:24)
30. Display Date Error (3:10)

How to Use APIs: Cryptocurrency Tracker PRO 7 Lessons

Skills covered: HTML CSS JavaScript API's HTTP DOM
Learn by applying your skills. Here, you'll get to apply the skills you've learned so far to build a mini-application: a cryptocurrency... read more
1. Intro (3:24) Preview
2. Crypto Compare Api (13:15)
3. Http Requests (6:41)
4. Getting Coin Prices (10:08)
6. Updating Prices (12:46)
7. Code Review (3:24)

Understanding Frameworks: Rebuilding the Expense Tracker PRO 44 Lessons

Skills covered: HTML CSS JavaScript Frameworks Backbone.js jQuery Data Storage HTTP Form Validation Sorting Routing MVC
Rebuilding an application with a framework. In this course, you'll get firsthand experience using Backbone.js - one of the earlier, pop... read more
1. Demo (1:02) Preview
2. Basic Setup (1:44)
3. Backbone Setup (5:39)
4. Add Form (4:51)
5. Add App and View (2:39)
6. Form View Intro (3:37)
7. Append Form View (4:38)
8. Move Form to Js (4:39)
9. Form Submit Setup (3:29)
10. Log Form Values (3:08)
11. Expense Model (4:26)
12. Expenses Collection (5:26)
13. Expenses View (5:06)
14. Expense (5:57)
15. Fix Expenses View (1:34)
16. Display Expense (5:52)
17. Expense Id (3:57)
20. Remove Expense View (3:25)
29. Format Amount Setup (5:41)
32. Format Dates (4:09)
33. Format on Edit (1:48)
34. Fix Firefox (2:43)
35. Sorting Setup (4:29)
36. Router Setup (4:35)
37. Router Params (4:32)
40. Comparator (5:20)

Develop Custom Themes with Wordpress PRO 63 Lessons

Skills covered: HTML CSS Wordpress PHP MySQL
Wordpress powers a quarter of the Internet. Learn how to build and launch custom sites and web apps using Wordpress, PHP, HTML, ... read more
Introduction
1. What We'll Cover (6:19) Preview
Setup
3. Setup With Cloud9 (5:57)
6. Wordpress Workflow (6:04)
Theme Basics
7. Activating Themes (3:15)
11. CMS in Action (3:58)
13. The Loop (11:06)
14. Admin Bar (4:57)
15. HTML Boilerplate (4:32)
17. Head Section (6:26)
18. WP Head (3:33)
19. Footer (2:05)
20. Bootstrap Container (3:59)
21. Jumbotron (5:17)
22. CSS Gradients (4:58)
23. Functions File (11:29)
24. Code Comments (3:34)
Navigation Menu
25. Navbar Intro (3:32)
26. Navbar Template (5:55)
27. Navbar CSS (8:31)
28. Navbar Text Color (5:20)
30. Add Dynamic Menu (10:28)
31. Review of Nav Menu (5:00)
32. Navbar Animation (7:45)
Template Files
33. Header Partial (6:25)
34. Footer Partial (4:26)
35. Labelling Files (5:44)
36. Page Templates (9:07)
37. Multiple Templates (12:09)
38. Body Class (8:53)
39. Register Sidebar (11:02)
40. Display Sidebar (5:26)
41. Sidebar Partial (2:38)
42. Multiple Sidebars (1:26)
43. Single Template (4:25)
44. Blog Layout (7:12)
46. Displaying the Date (4:04)
47. Pagination (8:55)
48. Post Class (3:56)
49. Blog Comments (6:11)
50. Custom Partials (5:10)
51. Bootstrap Tips (4:29)
52. Review (7:15)
Finishing Touches
53. Shortcodes for Home (6:21)
54. Custom Shortcode (9:02)
56. Remove Title (2:50)
57. Footer Code (8:00)
60. Template Hierarchy (6:59)
61. Google Fonts (8:43)
62. Disable Debug Mode (4:05)

Visualize Your Code: The Debugger FREE 5 Lessons

Skills covered: Debugger Algorithms Loops Functions Arrays
The debugger that comes built-in with Google Chrome is a powerful tool for learning JavaScript. Not only does it help you track d... read more
1. Introduction to the Debugger (1:25) Preview
2. Basic Example (12:46)
5. Breakpoints (11:20)

Algorithm Exercises in JavaScript FREE 13 Lessons

Skills covered: Algorithms Data Structures Loops Recursion Arrays Objects
These are exercise/solution sets for algorithms written in JavaScript. It is highly recommended that you are comfortable with JavaScript ... read more
1. Introduction (6:54) Preview

Learn a JavaScript Framework: Intro to Vue PRO 16 Lessons

Skills covered: HTML CSS JavaScript Frameworks Vue Loops Obligatory To-Do List Objects
A clear and simple introduction to the Vue framework. Vue is a popular JavaScript framework for building web applications, maki... read more
1. Introduction (4:56) Preview
2. A Simple Vue App (5:39)
6. Events (3:49)
9. Methods (2:48)
12. Reusable Components (5:39)
13. Components and Data (2:47)

JavaScript: Build a Modal PRO 11 Lessons

Skills covered: HTML CSS JavaScript Events Animation
Use pure CSS and vanilla JavaScript to build a modal from scratch. In this series, you'll get to build a modal pop-up from scra... read more
1. Introduction (1:42) Preview
2. Setting Up and Tips (8:53) Preview
3. Getting Started (2:18) Preview
4. Boilerplate HTML (5:55)
5. Adding CSS (3:01)
7. Modal Box CSS (6:30)
11. CSS Variables (3:16)

JavaScript: Modern Image Gallery PRO 11 Lessons

Skills covered: HTML CSS Grid Media Queries JavaScript Events Animation
Build a Modern Image Gallery with vanilla JavaScript In these lessons, you'll learn the skills required to build an image galle... read more
1. Introduction (2:23) Preview
2. Setting Up and Tips (6:35) Preview
3. Getting Started (0:54) Preview
5. Adding CSS (4:45)
11. Thumbnail Animation (2:49)

JavaScript: Build a Digital Clock from Scratch PRO 10 Lessons

Skills covered: HTML CSS JavaScript Dates and Time Events DOM
Learn about native browser and JavaScript features by building a clock. You'll inevitably work with dates and time at some point in yo... read more
1. Introduction (1:56) Preview
2. Getting Started (3:26)
3. Working with Time (6:03)
4. Set Interval (7:42)
6. Updating the DOM (8:13)
10. Final DOM Update (4:12)

JavaScript: Build a Paint App from Scratch PRO 9 Lessons

Skills covered: HTML CSS JavaScript Application State Events DOM
Understand the DOM and Events by building a paint app. We're excited to bring you this set of lessons on JavaScript. You'll lea... read more
1. Introduction (2:02) Preview
2. Getting Started (3:26) Preview
5. Painting a Spot (4:44)

Learn the React Framework: Rebuild Tic Tac Toe PRO 18 Lessons

Skills covered: React JavaScript Application State Events DOM
Learn React by rebuilding the Tic Tac Toe game. In this set of lessons, you'll learn how to use React - a JavaScript user inter... read more
1. Introduction (2:49) Preview
2. React is Just JavaScript (12:32) Preview
4. How React Works (7:53) Preview
6. Props (8:18)
9. Mapping the Board (8:44)

Computer Science: Data Structures and Algorithms FREE 18 Lessons

Skills covered: Computer Science Data Structures Algorithms Time Complexity
Learn critical computer science skills to boost your career. Employers often look for a background in computer science when hirin... read more
1. Introduction (5:33) Preview
2. Arrays (5:33)
3. Linked Lists (6:52)
5. Stacks (6:23)
6. Queues (5:10)
7. Trees (8:41)
8. Min Heaps (3:38)
9. Max Heaps (3:55)
10. Binary Trees (8:49)
11. Merge Sort (6:32)
12. Bubble Sort (6:08)
13. Binary Search (6:16)
14. Time Complexity (7:47)
15. Constant Time (2:54)
16. Linear Time (4:28)
17. Logarithmic Time (3:42)

Computer Science: Implementations of Data Structures and Algorithms with JS PRO 10 Lessons

Skills covered: Computer Science Data Structures Algorithms Implementation
Learn how data structures work under the hood. Employers often look for a background in computer science when hiring, and knowled... read more
1. Linked List Setup (6:30) Preview
6. Linked List Remove (16:54)
7. Stack Setup (4:44)
9. Queue (7:09)
Card image cap
The Essential Web Developer Course
This massive, free course covers full-stack web development using modern tools like HTML, CSS, JavaScript and Ruby on Rails. The ...
Skills covered: HTML CSS JS jQuery Ruby Rails Databases E-commerce Bootstrap Git Servers HTTP Object Oriented Programming API's
FREE
Card image cap
HTML & CSS Syntax Review
Review the fundamentals of HTML and CSS. HTML (Hypertext Markup Language) is used for putting content on a web page. With...
Skills covered: HTML CSS Box Model Typography
FREE
Card image cap
JavaScript Basics
JavaScript - the standard for web development. JavaScript, not to be confused with Java, was created in 1995 by Brendan Eich while he ...
Skills covered: JavaScript Loops Conditionals Operators Data Types Variables
FREE
Card image cap
Intermediate JavaScript
Learn programming concepts with JavaScript. In these lessons, we'll go over concepts that apply to many other programming languages. T...
Skills covered: JavaScript Functions Recursion Arrays Scope Object Oriented Programming Prototypal Inheritance Regular Expressions
PRO
Card image cap
JavaScript and the Browser
Controlling browsers with JavaScript. Every major browser has a JavaScript engine built-in. As you'll see, the three core web languages...
Skills covered: JavaScript Functions DOM Objects Prototypal Inheritance Events
PRO
Card image cap
Build a Game in the Browser: Tic Tac Toe
Learn by applying your skills. It's time to apply the skills you've learned so far to build a mini-game: an interactive Tic Tac Toe gam...
Skills covered: JavaScript DOM HTML CSS Arrays Functions Objects
FREE
Card image cap
Build an Application from Scratch and Structure Your Code
Applying ES6 to build an MVC application. In this course, you'll get to build a practical application from scratch with HTML, CSS, and ...
Skills covered: HTML CSS JavaScript Data Storage HTTP Form Validation Application Structure MVC
PRO
Card image cap
How to Use APIs: Cryptocurrency Tracker
Learn by applying your skills. Here, you'll get to apply the skills you've learned so far to build a mini-application: a cryptocurrency...
Skills covered: HTML CSS JavaScript API's HTTP DOM
PRO
Card image cap
Understanding Frameworks: Rebuilding the Expense Tracker
Rebuilding an application with a framework. In this course, you'll get firsthand experience using Backbone.js - one of the earlier, pop...
Skills covered: HTML CSS JavaScript Frameworks Backbone.js jQuery Data Storage HTTP Form Validation Sorting Routing MVC
PRO
Card image cap
Develop Custom Themes with Wordpress
Wordpress powers a quarter of the Internet. Learn how to build and launch custom sites and web apps using Wordpress, PHP, HTML, ...
Skills covered: HTML CSS Wordpress PHP MySQL
PRO
Card image cap
Visualize Your Code: The Debugger
The debugger that comes built-in with Google Chrome is a powerful tool for learning JavaScript. Not only does it help you track d...
Skills covered: Debugger Algorithms Loops Functions Arrays
FREE
Card image cap
Algorithm Exercises in JavaScript
These are exercise/solution sets for algorithms written in JavaScript. It is highly recommended that you are comfortable with JavaScript ...
Skills covered: Algorithms Data Structures Loops Recursion Arrays Objects
FREE
Card image cap
Learn a JavaScript Framework: Intro to Vue
A clear and simple introduction to the Vue framework. Vue is a popular JavaScript framework for building web applications, maki...
Skills covered: HTML CSS JavaScript Frameworks Vue Loops Obligatory To-Do List Objects
PRO
Card image cap
JavaScript: Build a Modal
Use pure CSS and vanilla JavaScript to build a modal from scratch. In this series, you'll get to build a modal pop-up from scra...
Skills covered: HTML CSS JavaScript Events Animation
PRO
Card image cap
JavaScript: Modern Image Gallery
Build a Modern Image Gallery with vanilla JavaScript In these lessons, you'll learn the skills required to build an image galle...
Skills covered: HTML CSS Grid Media Queries JavaScript Events Animation
PRO
Card image cap
JavaScript: Build a Digital Clock from Scratch
Learn about native browser and JavaScript features by building a clock. You'll inevitably work with dates and time at some point in yo...
Skills covered: HTML CSS JavaScript Dates and Time Events DOM
PRO
Card image cap
JavaScript: Build a Paint App from Scratch
Understand the DOM and Events by building a paint app. We're excited to bring you this set of lessons on JavaScript. You'll lea...
Skills covered: HTML CSS JavaScript Application State Events DOM
PRO
Card image cap
Learn the React Framework: Rebuild Tic Tac Toe
Learn React by rebuilding the Tic Tac Toe game. In this set of lessons, you'll learn how to use React - a JavaScript user inter...
Skills covered: React JavaScript Application State Events DOM
PRO
Card image cap
Computer Science: Data Structures and Algorithms
Learn critical computer science skills to boost your career. Employers often look for a background in computer science when hirin...
Skills covered: Computer Science Data Structures Algorithms Time Complexity
FREE
Card image cap
Computer Science: Implementations of Data Structures and Algorithms with JS
Learn how data structures work under the hood. Employers often look for a background in computer science when hiring, and knowled...
Skills covered: Computer Science Data Structures Algorithms Implementation
PRO

More courses and exercises coming soon!