Cloud Computing | Web Apps | Linux | Web Servers | DBMS | LAMP Stack | HTML | CSS | JavaScript | PHP | + More
SUMMARY
This course offers an extensive overview of the web development process, from configuring local testing environments to deploying production-ready websites on cloud servers. Students will gain practical experience in server management, front-end and back-end web development, and the deployment of web applications, using both local setups (WAMP/MAMP) and cloud-based platforms like Linode.
Key Learning Outcomes:
- Network Fundamentals: Understand Local Area Networks (LAN) and Wide Area Networks (WAN), including how data is transmitted and the role of network ports, firewalls, and protocols like HTTP, HTTPS, SMTP, and IMAP.
- Domain Management: Learn to register and manage domains, including domain forwarding, renewal, privacy protection, and DNS configurations.
- Server Configuration: Gain hands-on experience in setting up local and production servers using tools like WAMP for Windows, MAMP for macOS, and configuring virtual servers on cloud hosting platforms (e.g., Linode, AWS, Microsoft Azure).
- FTP and File Management: Master file transfers using FTP clients like FileZilla and understand how to upload, manage, and backup files on remote servers.
- Web Development: From HTML, CSS, and JavaScript to jQuery and PHP, students will build responsive, dynamic websites. Key topics include:
- HTML: Structure, formatting, and multimedia integration.
- CSS: Responsive design, layouts, and styling.
- JavaScript: Adding interactivity with basic programming principles, including functions, loops, and events.
- jQuery: Creating animations, handling user interactions, and improving user experience with AJAX requests.
- PHP & MySQL: Building server-side logic and databases for web applications, including user authentication and form validation.
Course Structure and Key Sections:
- Introduction to the Internet & Networking: Learn the basics of how the internet works, including data packet transmission, DNS lookups, network ports, and firewalls.
- Web Development Process & Website Planning: Understand the full scope of the web development lifecycle, from initial planning to deployment.
- Web Hosting & System Requirements: Analyze different types of web hosting (shared, VPS, dedicated, and cloud hosting) and how to select the best solution for your project.
- Domain Name Management: Explore domain name registration, privacy protection, forwarding, and DNS settings through services like GoDaddy.
- Local Testing Environment Setup: Learn to configure local testing environments using WAMP (Windows) or MAMP (macOS) to simulate live server environments on your local machine.
- Production Server Setup: Acquire the skills to configure cloud servers (Linode, AWS, etc.) for live web applications, including security settings, backup solutions, and scaling servers based on needs.
- FTP Setup: Understand how to use FTP clients like FileZilla for transferring files to and from remote servers, making web development and deployment more efficient.
- Front-End Development:
- HTML: Learn HTML fundamentals, including page structure, formatting, lists, links, and multimedia integration.
- CSS: Create stylish, responsive layouts using CSS, covering typography, positioning, colors, and responsiveness.
- JavaScript & DOM: Dive into JavaScript to add dynamic features, such as form validation, interactivity, and DOM manipulation.
- Advanced Interactivity with jQuery & AJAX: Enhance user experience with animations, effects, and asynchronous data requests using jQuery and AJAX for live web data interactions.
- Back-End Development:
- PHP & MySQL: Learn to create dynamic web applications using PHP for server-side logic and MySQL for database management. This section includes building features such as user login authentication and dynamic web forms.
Additional Tools and Technologies Covered:
- Bootstrap: Learn to create mobile-responsive web applications using Bootstrap.
- Google Apps for Work: Set up a professional email address for business or personal use.
Requirements:
- Computer & Software: A PC or Mac with internet access. Free software such as text editors (e.g., Notepad++, TextWrangler), WAMP/MAMP, PuTTY, and FileZilla is required.
- Technical Knowledge: Basic familiarity with computers and internet navigation. No prior experience in web development or networking is required, but a willingness to learn is essential.
Target Audience:
This course is ideal for individuals interested in web development, system administration, or those looking to expand their technical skills in cloud hosting, server management, and web technologies. It’s particularly beneficial for aspiring web developers, IT professionals, or small business owners seeking to manage their own websites and online services.
Course Format:
The course includes interactive lessons, hands-on exercises, real-world projects, and demonstrations. Students will work with both local environments (WAMP/MAMP) and cloud-based servers (Linode, AWS, etc.), providing practical experience in both web development and server management
What you’ll learn
-
Understand the essentials of Local and Wide Area Networks
-
Setup a basic network.
-
Register a domain name with Domain Privacy
-
Forward a domain, renew and administer a domain
-
Configure Nameservers and DNS Zone Files
-
Configure a Production web server on popular cloud hosting platforms.
-
Create disk backups and install disk images on a virtual server
-
Setup Ubuntu on a Virtual Machine
-
Install and configure WAMP for Windows
-
Install and configure MAMP for MAC
-
Administer a remote server using PuTTY or Terminal
-
Proficiently navigate the Linode Virtual Server Dashboard
-
Configure Security Settings on a Virtual Ubuntu Server
-
Scale a virtual server up and down depending on needs
-
Setup users and access privileges on an Ubuntu server
-
Upload files using FileZilla FTP Client
-
Create mobile responsive web applications using Bootstrap
-
Create unique animated objects using jQuery
-
Create and administer MySQL databases using PhpMyAdmin
-
Create Web-based Login Authentication using PHP and MySQL
-
Create the famous “Google Search Suggest” Feature using AJAX and PHP
-
Create server and client side validation algorithms for web forms.
-
Use Google Apps for Work to setup a customized business email address
Requirements
-
Students will require an internet connection and PC or MAC Computer System.
-
Please note that all required downloads are free.
-
Text Editor such as Text Wrangler (MAC) or Notepad++ (Windows)
-
FileZilla FTP Client (Downloaded in Section 9).
-
PuTTY and PuTTY Key GEN for Windows users (Downloaded in Section 8).
-
WAMP Server for Windows Users and MAMP Server for MAC Users (Downloaded in Section 7).
-
Tight VNC Viewer for Windows Users and RealVNC Viewer for MAC Users (Downloaded in Section 8).
Description
This course offers a comprehensive look into the entire web development process – from local server configuration using WAMP and MAMP (Apache, MySQL, PHP) to production deployment using the latest web technologies including: LAMP Stack (Linux, Apache, PHP and MySQL) for Ubuntu, HTML5, CSS, Bootstrap, JavaScript, jQuery, XML, and AJAX.
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.
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.
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 gain hands-on experience with the registration process using popular domain registrars. We provide a comparison of different registrars and register a sample domain name using GoDaddy. Other topics of discussion include: domain name privacy and administration, auto-renewal, domain forwarding, and name server assignment.
Section 7: Testing Environment
Students are introduced to configuring a local testing server on a PC or MAC system using WAMP (Windows) or MAMP (MAC). The lessons provide a detailed guide on installation of the packages and an overview of the interface.
Section 9: FTP Setup
Students learn the role of an FTP (File Transfer Protocol) client to connect to a remote server, through a local machine. We provide a live demonstration on file upload using FileZilla and explore the FileZilla Interface for connection management.
Section 10: HTML Development
This section explores HTML. HTML is a key fundamental building block when learning to develop websites. Students 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 include several projects, where students are shown first-hand, how to develop and code html web pages from scratch.
Section 12: Document Object Model (DOM)
As a precursor to JavaScript, we explore the DOM (Document Object Model). We explain its usage and application in manipulating HTML and CSS elements.
Section 13: JavaScript Development
We introduce students to JavaScript coding to add interactivity to static HTML and CSS pages. The section starts with discussing JavaScript placement, using both internal and external scripts. We then take a look at JavaScript output, variable declarations, arithmetic operators, objects, strings, math functions, arrays, conditional statements, loops, functions and events. Students also go through two hands-on projects that will further solidify their knowledge of the concepts explored in the lessons.