
Welcome to my course! This video is a quick trailer of what you'll be learning over the next 90 minutes!
Before you continue with this course, I highly recommend that you watch the video 'Learn Coding in 6 Minutes (basic concepts) (for absolute beginners)' (link in the External Resources section). This video goes over the basic concepts of coding (not just JavaScript) which will give you a head start in this course. I also refer to this video as the 'opening video' in later parts of my course.
This video sets out the roadmap of the course, which is divided into three parts.
This video explains why you should JavaScript.
Understand what tools you need to start coding, in particular the console.
Overview of variables which are the the basic building blocks in programming. Learn how to declare them, and the difference between 'let' and 'const' keywords.
Introducing comments, which allow you to add explanatory notes to improve legibility of your code (and are ignored by the computer upon execution).
Learn how to use the console.log() built-in function to display data to the console.
FAQ: My console.log() is not working!
If console.log() in your browser does not work (i.e. it only returns 'undefined'), try the following:
Make sure you are in the 'User messages' tab (which is found on the left hand sidebar);
In the top bar, beside the 'Filter' searchbar, click on 'Default levels', and make sure 'Info' is checked. If the 'Default levels' is greyed out (i.e. unclickable), you'll need to hide/minimise the lefthand sidebar (by clicking on the button beside the 'Clear console' button);
If the above fail, then run this command in the console: console.log = (x) => {return x} . This should restore the console.log() function.
Overview of functions, which form the core of any program that you develop. Learn about the keywords 'function' and 'return', the differences between parameters and arguments, how are functions triggered, and how functions can work together to deliver complex functionality!
Learn how to install and use code editors (e.g. Sublime Text). This is the final lecture of Part 1.
A quick explanation of what you will be building in this part.
Overview of how websites/webpages are built (i.e. combination of HTML, CSS and JavaScript).
Learn how to inspect the HTML code of the CoinMarketCap website to formulate a strategy to retrieve the crypto price.
Overview of objects (as a programming concept) and the Document Object Model (DOM).
Practise your skills by converting your code into a function.
Learn how to use conditions (if/else statements) to add contigencies and logic to your code.
Learn a neat technique to insert placeholders into a string.
Oops, looks like we've encountered a problem in our code! Learn the steps and thought process to debug your errors.
Learn how to formulate your research queries to find the most relevant solutions efficiently.
We evaluate our progress and consider next steps for our project.
Overview of asynchronous programming (including the keywords 'async' and 'await') as we learn to implement a fetch() function to retrieve data from another webpage.
Learn about try and catch statements to handle errors in your code so your program does not crash during execution.
Learn how to invoke the fetchHTML() function, and understand what it truly returns.
Overview of promises, which is the return output of an asynchronous function. Learn how to 'resolve' these promises to access the actual output that you want.
Learn how to convert a standard JavaScript function into an arrow function, and implement that arrow function to resolve a promise.
Update the getPrice() function so that it accounts for newly inserted fetchHTML() function.
We evaluate again our progress and consider next steps for our project.
We sense an interesting pattern about the website URLs on the CoinMarketCap page...perhaps this is a clue for the next step?
Overview of arrays, which is a data structure to store multiple data types in one unit.
Overview of loops, which is a control flow technique to repeat a certain instruction for as many times as you specify. In particular, learn to apply the loop to work through items in an array.
Learn how to use objects for the purposes of storing data, and the advantages it has over an array in this case.
Learn how to access properties in an object, which is necessary to make this for loop work.
We go over our recent changes, test our code and....congratulations! You have built a functional JavaScript program in the broswer! We also consider next steps for Part Three.
Overview of the plan for Part Three
Overview of NodeJS, and how it relates to and supports JavaScript outside of the browser context.
Learn how to install and set up NodeJS.
Overview of dependencies/libraries and why we need them for this project. Also learn how to install dependencies through the node package manager (npm).
Learn what you need to do to use installed dependencies in your NodeJS program.
Learn how to run/execute NodeJS programs in your console.
Understand what changes you need to make whenever you rename a file in your NodeJS project.
We review our progress and consider next steps.
Introducing Twilio, which is a third party service that we'll rely on to send text messages to our phone. Here you will set up an account and familiarise yourself with the Twilio dashboard.
Overview of APIs (application programming interface) which allows you to leverage off third party services. Understand what you need to 'unlock' the API.
Learn how to install and use Twilio's dependencies in your NodeJS project.
Learn how to look up the documentation of Twilio and implement a sendMessage() function that can send texts to your phone.
Implement some additional final changes to tie the whole project together!
We're done! Now execute your code and watch your program send a crypto price alert to your phone!
Final wrap up. Link to my YouTube channel in the 'External Resources' section.
**LAUNCH SPECIAL** This course is priced at $49.99 AUD until 31 January 2022.
The price will then go up to $79.99 AUD on 1 February 2022.
***
Short, concise and fully hands-on, this course will teach you how to code in both JavaScript and NodeJS, while building a cool crypto-based project that may potentially help you to make money.
Highly suitable for any absolute beginners or cryptocurrency enthusiasts.
How is this course different from the other online courses?
Strong focus on helping you become a self-sufficient developer. In this course, you won't just learn to code for the sake of coding. You will learn effective research tips and how to integrate third party services so that you can independently learn and build your own projects.
Unique cryptocurrency x programming focus - build coding skills that are relevant to a hot emerging technology.
Actually build a useful project (not just a basic flash game, calculator or local webpage) that can potentially add value to your life.
Dual overview of JavaScript and NodeJS (many courses only just cover one of them).
Simple and clean animations to explain concepts. Not just a plain bulletpoint lecture.
Low time investment. Max 90 minutes. This course can help you consider whether to invest further in other courses.
Course structure
This course has three parts:
Part One
Why learn JavaScript?
How to get things set up (consoles and code editors)
How to use the console in your browser
Fundamentals: variables, comments and functions
Part Two
Web scraping (i.e. a technique to extract data from a website so that you can use the website data in your programs)
Website structure (HTML, CSS and Document Object Model (DOM))
Scraping crypto prices from the CoinMarketCap website
Debugging and research techniques
Fundamentals: conditional logic (if/else), asynchronous programming, objects, arrays and loops.
End outcome: Your first program (runs in the browser) that can automatically retrieve cryptocurrency prices without you have to manually search them up!
Part Three
Upgrading and cleaning up the program from Part Two
NodeJS (installation and how to use it)
Fundamentals: dependencies/libraries and APIs
Setting up and connecting to Twilio API (with free trial account) to automatically send text messages to your phone
End outcome: A NodeJS program that can automatically retrieve cryptocurrency prices and notify you via SMS text whenever one of the prices hits a certain threshold!
What's the next step?
Even after you have completed this course, don't just stop here! There are many ways to further upgrade the bot. Ideas could include:
Adding more crypto coins and prices to the bot
Add more content to the text message
Get the bot to run every x minutes
Host the program on a serverless hosting provider (e.g. AWS Lambda) so that it runs constantly
Create an interface for the bot
Add more complex logic (i.e. compare coin prices against trends, other metrics, etc)