Free: Web Development Masterclass (19.5 Hours Video)
$9.98 (Was $399) Kotlin for Android: Beginner to Advanced (23 Hours Video)
+ Completion Certificate
**UPDATE: Our course has been updated and is fully compatible with the latest version of Ubuntu (18.04 LTS). You can also continue using 16.04 or 14.04 LTS if you prefer, as the content is compatible with both versions.
The content is ideal for those interested in working as a web developer or launching a web based presence for a new or existing product or service. The concepts explored in this course are suitable for individuals of all skill levels. Each module starts with the fundamental concepts and gradually transitions into more complex material.
The development style taught in this course is specifically intended to address the importance of creating scalable web infrastructures on cloud hosting platforms that can accommodate any type of project, while maintaining the lowest overhead cost possible. This includes small informational websites of only a few pages to advanced ‘big data’ style, dynamic web applications. We go through several live examples of web development and Linux based server configurations on popular Cloud hosting providers such as Linode.com.
Section 1 & 2 (Introduction, How the Internet Works)
The course begins with with an overview of learning objectives. We then explore how the internet works, including the composition and transmission of data packets over both LAN and WAN Networks. Next we take a look at the HTTP and HTTPs protocols as applicable to client and server side communications – including DNS Lookups. This section will also teach students how email exchange works over SMTP and IMAP. The role of Network Ports and Firewalls are also introduced.
Section 3, 4: (The Web Development Process, Planning a Website)
Students will gain an understanding of all the steps involved in the web development process including:
- Infrastructure setup – VPS, Dedicated, and Cloud Hosting Solutions.
- Domain registration
- FTP File Transfer Agents
- Database Development and Administration using MySQL and PhpMyAdmin
- DNS Record configuration
- Business Email Setup and Configuration
Section 5: Web Hosting and System Requirements
We conduct an in-depth case analysis of web hosting solutions including: Shared, Virtual Private, Dedicated and Cloud Hosting.
We provide an overview of various packages offered by different web hosting companies and weigh the pros and cons of each one.
Students are also introduced to the importance of web server scalability and the advantages of cloud hosting over traditional hosting services. We also examine the infrastructure requirements of popular, resource intensive applications such as Netflix and Facebook to emphasize the importance of avoiding costly mistakes in the initial stages of development.
Section 6: Domain Names
We provide an overview of the domain name registration process. This includes the role of registrars and TLD (Top Level Domain) administration by ICANN. ccTLD’s (Country Code Top Level Domains) are also explored.
Students will gain hands-on experience with the registration process using popular domain registrars. We will provide a comparison of different registrars and register a sample domain name using GoDaddy.com. Other topics of discussion will include: domain name privacy and administration, auto-renewal, domain forwarding, and name server assignment.
Section 7: Testing Environment
Students will be introduced to configuring a local testing server on a PC or MAC system using WAMP (Windows, Apache, MySQL, PhpMyAdmin) or MAMP (MAC, Apache, MySQL, PhpMyAdmin). The lessons will provide a detailed guide on installation of the packages and an overview of the interface menu.
Section 8: Production Environment
Students will acquire the skills needed to optimally configure a live production environment for securely hosting web applications on a cloud server (Linode). The section will start with an overview of different cloud hosting providers such as Amazon Web Services, Microsoft Azure, Linode and Digital Ocean.
We will then provide a live demonstration of server setup using Linode.com. This includes deployment of Ubuntu and installation of LAMP (Linux, Apache, MySQL, PhpMyAdmin) on the Linode Server using remote access consoles such as Terminal (MAC) and PuTTY for Windows.
Students will gain an in-depth knowledge of server maintenance, file and directory commands. We will also explore SSH Authentication for multiple users and file permissions to reduce security vulnerabilities. Remote Desktop connections for server administration will also be taught, using Tight VNC (Windows) and RealVNC (MAC).
A thorough overview of the Linode server management console will be conducted, to show students how to scale servers, change root passwords, manage the DNS Zone file and create back-ups.
Section 9: FTP Setup
Students will learn the role of an FTP (File Transfer Protocol) client to connect to a remote server, through a local machine. We will provide a live demonstration on file upload using FileZilla and explore the FileZilla Interface for connection management.
Section 10: HTML Development
Section 10 explores HTML (Hyper Text Markup Language). HTML is a key fundamental building block when learning to develop websites. Students will initially learn the basics of HTML page structure and gradually transition into working with spacing, text formatting, lists, images, videos, links, anchors, tables, forms and much more. We also include several projects, where students are shown first-hand, how to develop and code html web pages from scratch.
Section 11: CSS Development
Students learn to use CSS (Cascading Style Sheets) to create stylish, responsive web page layouts. We start by discussing the parts and types of CSS rules, followed by CSS classes, DIVS, and ID’s. Students will gain significant exposure to various formatting options, including margins, padding, font properties, backgrounds, transparency, positioning, link styling and CSS tables. This section includes a hands-on web development project where students will utilize the concepts explored in the lesson.
Section 12: Document Object Model (DOM)
Section 14: JQuery Library
We explores the jQuery library and many of its unique features, used to create stunning, animated web pages. We start with the basics, from embedding jQuery into web pages to working with Selectors. Students then explore working with events, toggling, fading, sliding, and other forms of animation. The lessons also teach students how to work with callbacks, chaining, dragables, accordion menus and many other functions.
Section 15: Bootstrap Framework
Students are taught to use the Bootstrap framework for responsive, mobile-first – front-end development. As one of the leading open-source development libraries, Bootstrap is an essential part of the developers coding arsenal. The section begins with teaching students how to include essential Bootstrap files into web pages. It then explores the Bootstrap Grid system and popular layout strategies for optimal cross-device and cross-browser compatibility.
Students gain exposure to just about every Bootstrap component, from typography, tables and images, to jumbotrons, wells, alerts, buttons, glyphicons and progress bars. The section includes several hands-on exercises that will walk students through the process of creating stunning layouts, complete with modals, carousels, popovers, drop-down menus, forms and much more.
Section 16: PHP Development
Students gain exposure to creating dynamic web applications and functionality using PHP. We start with the basics, including variable declaration and data output. The lessons then transition into working with objects, conditional statements, loops, functions, arrays and form validation.
Section 17: MySQL Database Integration
Students learn to unleash the true power of web application development with MySQL database integration. We start with the basics from database and table creation, to user management. Next we explore the execution of commonly used SQL statements for database modification and administration. Students are also taught how to create database connections and execute SQL statements from PHP scripts.
Section 18, 19 (XML, AJAX, & Development)
We explore XML and AJAX integration to create dynamic content, without page refresh. The lessons will cover several hands-on training exercises that will encompass many of the exciting functions AJAX offers. Students will build a website complete with database integration, registration forms with server-side validation, user authentication, and a SMTP-based contact submit form.
Section 20: Google Apps for Work
Students learn to create a customized business email address using Google Apps for Work. Email administration is also explored, along with alias creation.