What You'll Get in This Course
Download the Course Syllabus
Download the 12 Rules to Learn to Code eBook [Latest Edition]
Download the Required Software
How Does the Internet Actually Work?
How Do Websites Actually Work?
How to Get the Most Out of the Course
How to Get Help When You're Stuck
Introduction to Web Design
Understanding Colour Theory
Understanding Typography and How to Choose a Font
Manage ATTENTION with effective User Interface (UI) Design
User Experience (UX) Design
Web Design in Practice - Let's apply what we've learnt!
Introduction to Javascript
Javascript Alerts - Adding Behaviour to Websites
Javascript Variables Exercise Start
Javascript Variables Exercise
Javascript Variables Exercise Solution
Naming and Naming Conventions for Javascript Variables
Javascript Variable Naming Quiz
String Lengths and Retrieving the Number of Characters
Slicing and Extracting Parts of a String
Challenge: Changing Casing in Text
Challenge: Changing String Casing Solution
Basic Arithmetic and the Modulo Operator in Javascript
Increment and Decrement Expressions
Functions Part 1: Creating and Calling Functions
Functions Part 1 Challenge - The Karel Robot
The Karel Chess Board Solution
A Quick Note About the Next Lesson
Functions Part 2: Parameters and Arguments
Life in Weeks Coding Exercise
Functions Part 3: Outputs & Return Values
Challenge: Create a BMI Calculator
Challenge: BMI Calculator Solution
JavaScript Functions Quiz
Tip from Angela - Set Your Expectations
Random Number Generation in Javascript: Building a Love Calculator
Control Statements: Using If-Else Conditionals & Logic
BMI Calculator Advanced (IF/ELSE)
Introducing the Leap Year Code Challenge
Leap Year Challenge Exercise
Collections: Working with Javascript Arrays
Adding Elements and Intermediate Array Techniques
Who's Buying Lunch? Code Challenge
Who's Buying Lunch Solution
Control Statements: While Loops
Solution to the 99 Bottles Challenge
Control Statements: For Loops
Introducing the Fibonacci Code Challenge
Tip from Angela - Retrieval is How You Learn
Adding Javascript to Websites
Introduction to the Document Object Model (DOM)
Solution to the DOM Challenge
Selecting HTML Elements with Javascript
Manipulating and Changing Styles of HTML Elements with Javascript
The Separation of Concerns: Structure vs Style vs Behaviour
Text Manipulation and the Text Content Property
Manipulating HTML Element Attributes
Tip from Angela - The 20 Minute Method
Challenge: The Dicee Challenge
Dicee Challenge Step 0 - Download the Skeleton Project
Dicee Challenge Step 1 - Create an External Javascript File
Dicee Challenge Step 2 - Add Dice Images
Dicee Challenge Step 3 - Create a Random Number
Dicee Challenge Step 4 - Change the <img> to a Random Dice
Dicee Challenge Step 5 - Change both <img> Elements
Dicee Challenge Step 6 - Change the Title to Display a Winner
The Solution to the Dicee Challenge
Download the Completed Website
Tip from Angela - Learning Before you Eat
What We'll Make: Drum Kit
Download the Starting Files
Adding Event Listeners to a Button
Higher Order Functions and Passing Functions as Arguments
Higher Order Function Challenge Solution
How to Play Sounds on a Website
How to Use Switch Statements in Javascript
A Deeper Understanding of Javascript Objects
Objects their Methods and the Dot Notation
A Quick Note About the Next Lesson
Using Keyboard Event Listeners to Check for Key Presses
Understanding Callbacks and How to Respond to Events
Adding Animation to Websites
Download the Completed Website
Tip from Angela - Dealing with Lack of Progress
How to Incorporate jQuery into Websites
How Minification Works to Reduce File Size
Selecting Elements with jQuery
Manipulating Styles with jQuery
Manipulating Text with jQuery
Manipulating Attributes with jQuery
Adding Event Listeners with jQuery
Adding and Removing Elements with jQuery
Website Animations with jQuery
Tip from Angela - Mixing Knowledge
What You'll Make: The Simon Game
Step 0 - Download the Starting Files
Step 1 - Add Javascript and jQuery
Step 2 - Create A New Pattern
Step 3 - Show the Sequence to the User with Animations and Sounds
Step 4 - Check Which Button is Pressed
Step 5 - Add Sounds to Button Clicks
Step 6 - Add Animations to User Clicks
Step 8 - Check the User's Answer Against the Game Sequence8
Step 10 - Restart the Game
Download the Completed Project Code
Tip from Angela - Dealing with Frustration
Install Git Bash on Windows
Understanding the Command Line. Long Live the Command Line!
Command Line Techniques and Directory Navigation
Creating Opening and Removing Files through the Command Line
Tip from Angela - Sleep is My Secret Weapon
Install Node.js on Windows
How to Use the Native Node Modules
The NPM Package Manager and Installing External Node Modules
[Project] QR Code Generator
Tip from Angela - Step Up to the Challenge
Introduction to Version Control and Git
Version Control Using Git and the Command Line
GitHub and Remote Repositories
Forking and Pull Requests
Tip from Angela - Spaced Repetition
SQL Commands: CREATE Table and INSERT Data
SQL Commands: READ SELECT and WHERE
Updating Single Values and Adding Columns in SQL
Understanding SQL Relationships Foreign Keys and Inner Joins
Tip from Angela - Find All the Hard Working People
How to Install PostgreSQL and pgAdmin
Understand how to use keys Postgres types and keywords
Use pgAdmin to CREATE a TABLE
READ data from a Postgres database
Query data using SELECT WHERE and LIKE
UNIQUE and NOT NULL | Travel Tracker Part 1
INSERT and add Data | Travel Tracker Part 2
One to One Relationships & Inner Joins
One to Many Relationships
Many to Many Relationships & Aliases
The Family Travel Tracker
How to update and delete data & tables
Tip from Angela - Daily Routines
Introduction to Authentication
Level 1 - Registering Users with Email and Password
Level 2 - Encryption and Hashing
Level 3 - How to Salt Passwords for Improved Encryption
Managing Cookies and Sessions
Level 5 - Hide your Secrets with Environment Variables
Set up your Google OAuth Credentials
Level 6 - OAuth: Implement "Sign In with Google"
Finish the app: let users submit secrets
Tip from Angela - How to Work as a Freelancer
What we will make in this React module
Introduction to Code Sandbox and the Structure of the Module
Introduction to JSX and Babel
Javascript Expressions in JSX & ES6 Template Literals
Javascript Expressions in JSX Practice
JSX Attributes & Styling React Elements
Inline Styling for React Elements
React Components Practice
Javascript ES6 - Import Export and Modules
Javascript ES6 Import Export and Modules Practice
[Windows] Local Environment Setup for React Development
[Mac] Local Environment Setup for React Development
Newer Versions of Node Troubleshooting
Keeper App Project - Part 1 Challenge
Keeper App Part 1 Solution
Mapping Data to Components
Mapping Data to Components Practice
Javascript ES6 Map/Filter/Reduce
Javascript ES6 Arrow functions
Keeper App Project - Part 2
React Conditional Rendering with the Ternary Operator & AND Operator
Conditional Rendering Practice
State in React - Declarative vs. Imperative Programming
Javascript ES6 Object & Array Destructuring
Javascript ES6 Destructuring Challenge Solution
Class Components vs. Functional Components
Changing Complex State Practice
Javascript ES6 Spread Operator
Javascript ES6 Spread Operator Practice
Managing a Component Tree
Managing a Component Tree Practice
Keeper App Project - Part 3
React Dependencies & Styling the Keeper App
Tip from Angela - How to Build Your Own Product
How does the Blockchain actually work?
What are DApps (Decentralised Apps) and how do you develop them?
What is the Internet Computer (ICP)?
[Mac Users] Installation and Setup for Web3 Development
[Windows Users] Installation and Setup for Web3 Development
What You'll Build - DBANK (Inspired by Compound)
Introduction to the Motoko Language
Motoko Functions and the Candid User Interface
Motoko Conditionals and Type Annotations
Tracking Time and Calculating Compound Interest
Adding HTML and CSS to Create the Frontend for DBANK
Connecting the Motoko Backend to our JS Frontend
Where to Get Help and Support for Development on the Internet Computer
What are Cycles and the ICP Token?
How to Claim Free Cycles from Dfinity
How to Deploy to the ICP Network
How to Convert ICP into Cycles?
[Optional] How to Deploy a Static Website onto the ICP Blockchain for Hosting
Tokens and Coins: What are they and how are they used?
Download and Configure the Skeleton Project
Using Motoko Hashmaps to Store Token Balances
Showing the User's Token Balance on the Frontend
Creating the Faucet Functionality Using the Shared Keyword
Creating the Transfer Functionality
Using the Transfer Functionality in the Faucet
Persisting Non-Stable Types Using the Pre- and Postupgrade Methods
What is the Internet Identity?
Authenticating with the Internet Identity
[Optional] Live Deployment to Test Internet Identity Authentication
What You'll Build - A Website to Mint Buy and Sell NFTs
Viewing the NFT on the Frontend
Enabling the Minting Functionality on the Frontend
Displaying Owned NFTs Using the React Router
Creating the "Discover" Page
Join the $6 Million Dollar Supernova Hackathon