Learn to setup virtual cloud servers and develop database-driven websites using the latest web technologies.
Created by YouAccel Training
Last updated 3/2017
English
What Will I 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
Ø Create and Configure a Testing server on a Local
Windows or MAC System.
Ø 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
Ø Install LAMP Stack (Linux, Apache, MySQL, PHP,
PhpMyAdmin) on a local and remote server
Ø Setup users and access privileges on an Ubuntu
server
Ø Upload files using FileZilla FTP Client
Ø Proficiently Program in HTML, CSS, JavaScript,
jQuery, Bootstrap, PHP, and AJAX
Ø 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
**UPDATE: Our course has been updated and is fully
compatible with the latest version of Ubuntu (16.04 LTS). You can also continue
using 14.04 LTS if you prefer, as the content is compatible with both versions.
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.
The
content is ideal for those interested in working as a web developer, launching
a web application, or devoted enthusiasts. 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 advanced
material.
What makes this course unique?
This
course is specifically intended to teach students to develop web applications
using the
most efficient methods and the latest web technologies.
Through live demonstrations we
teach the importance of using scalable cloud hosting
infrastructures during the development process. 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.
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 local and wide-area 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.
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 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 8: Production Environment
Students acquire
the skills needed to optimally configure a live production environment for
securely hosting web applications on a cloud server (Linode). The section
starts with an overview of different cloud hosting providers such as Amazon Web
Services, Microsoft Azure, Linode and Digital Ocean.
We
then provide a live demonstration of server setup using Linode. This includes
deployment of Ubuntu and installation of LAMP Stack (Linux) on the
Linode Server using remote access consoles such as Terminal (MAC) and PuTTY for
Windows.
Students gain
an in-depth knowledge of server maintenance, file and directory commands.
We also explore SSH Authentication for multiple users and file permissions
to reduce security vulnerabilities. Remote Desktop connections for server
administration are taught, using Tight VNC (Windows) and RealVNC (MAC).
A
thorough overview of the Linode server management console is 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 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 11: CSS Development
Students
learn to use CSS 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 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 utilize the concepts
explored in the lesson.
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.
Section 14: JQuery Library
We
explore 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 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.
Who is the target audience?
Ø No prerequisite knowledge required
Ø Students interested in a career in web development
Ø Students interesting in starting a web based
business
Ø Students who want to transition from basic shared,
vps or dedicated hosting packages to sophisticated cloud hosting solutions
Ø Students wanting to update or learn new programming
skills using the latest web scripting languages
Ø Web Development enthusiasts
Size: 3.1GB