Welcome to our latest course. Here, you will learn how to deploy fully scalable React web apps on some of the most powerful cloud computing platforms available, including AWS and Linode. The course starts with exploring the foundations of cloud computing where we dive into a comprehensive overview of the three main cloud service models. This includes: Infrastructure as a Service, Platform as a Service, and Software as a Service. From there we offer an in-depth guide to deploying and configuring virtual instances and the foundations of remote server administration and server security using SSH. Students are then introduced to Linux, where we explore various Linux distributions, the Linux filesystem, and essential Linux maintenance and directory commands.
Once students have a handle on working with Linux, we’ll dive into the foundations of Web Servers. Here, we’ll explore two industry leaders in the server software space including Apache and NGINX. Students will learn the benefits and use cases of each server technology, combined with an in-depth technical analysis of their performance in production environments. From there we’ll explore database management systems, including both SQL and NoSQL databases, coupled with database transaction standards. In this section students gain valuable insights into a variety of different database options available, and the best use case for each depending on the project type and complexity.
With a firm handle on the theoretical aspects of web servers and DBMSes, we jump into a practical guide to setting up LAMP stack on Ubuntu through terminal for MacOS and PuTTY for Windows. Here we configure Linux with Apache, MariaDB, and PHP. Students will also learn how to upload data to a MariaDB database, and fetch records from within PHP scripts. The course then takes a theoretical and practical deep dive into server security. Here, we explore both network and hosted firewalls. We emphasize the pitfalls of lax server configurations, and provide a step-by-step guide to enabling and setting up UFW for Ubuntu. Students will also learn how to configure custom ports for SSH tunneling as an added layer of security.
The second half of the course provides a comprehensive guide to Amazon Web Services. We start with demonstrating how to setup, secure, and navigate an AWS account. This includes setting up billing alerts and multi-factor authentication. From there, we take a deep dive into AWS Identity and Access management for enhanced account security, and the management of user accounts for various AWS services. Here we explore IAM User management and permissions, IAM Groups, IAM Policies, and access key rotation. Following the IAM section, we’ll jump into the Amazon Elastic Compute Cloud (EC2) service. In this module students lean to deploy virtual instances on AWS using Amazon Machine Images, Elastic IPs, and Launch Templates. We will also explore IAM roles for EC2, EC2 Security Groups, SSH key pair authentication, and remote administration using both terminal and EC2 Instance connect.
After students have a mastery of cloud computing, the next segment explores the development and deployment of interactive web apps using both JavaScript and React. Here we start with JavaScript foundations including the document object model, and DOM manipulation. From there, we hop into JavaScript variables, arithmetic operations, data types, objects, arrays, loops, functions, and events. The JavaScript section concludes with two hands-on projects where students build a background color changer, and photo gallery. After completion of the JavaScript section, students will use their new found skills to build out dynamic front-end UI components using the React JS library. Through a series of hands-on projects, students will build a calculator, Connect-4 Game clone, and a fully customizable e-commerce site. The react modules start from the basics and work up to several intermediate level concepts. This includes: working with code pen, JSX, Functional components, Props, Callbacks, Events, the React State hook, conditional rendering, Fetch API, Refactoring, and much more.
As you can see this course covers a tremendous bit of ground. Best of all it’s co-authored by Tim Maclachlan - a renowned senior full-stack developer with over 20 years of commercial development experience. As a multi-faceted developer, Tim specializes in algorithmic, analytical and mobile development. To date, he’s written hundreds of applications and worked in a number of industries from commercial aviation and military, to banking and finance. Tim has a genuine passion for teaching others how to become better coders and looks forward to interacting with his students.
With that said, we hope you’re just as excited about this course as we are, if so - hit that enroll button and let’s get started.