# Web development

Web Development as opposed to Web Design is the process of creating websites with functionality above and beyond displaying static content. While Web Design is concerned with the layout, look and feel and aesthetics of a website, Web Development is concerned with how that content is delivered, where it is stored, who can edit it, and what viewers can do with it.

## What you can learn here

The following topics have been ordered to help provide a pathway for you to learn the main skills of web development.
Optional Prerequisites
* Install a Web Server - If you are going to have a web site you have to have a way to serve the pages. This lesson shows you how to get a basic web server running.
Getting Started
* Web Design/Getting Your Site On the Web - So you've got your site, now you need to get it on the web for everyone to see!
* Select and Install a Content Management System - Do you want to upload your HTML files to your site every time you make a change or do you want to edit your site through the site itself? Do you want to have users and security? Do you need extra functionality? A Content Management System sets the stage for your website.
* Using the Right Tools - See a growing list of selecting the right tools for the job!
Web Development
* Web Application Frameworks - Before we start extending the web, lets look at how it works.
* Security - "Security is hard." Jim Fulton, chief Zope architect.
* Web Languages - ASP.Net, Java, PHP, Python, Ruby. All you need is one language to create the next greatest thing. Now, which one....
* Data Persistence - In addition to having the programming skills, you also need to do something with all that data. How and where you store it can have a significant impact on your system.
Web Applications
* E-Commerce
* Data-entry/Workflow
* Subscription Services

## Suggested Course Progression
### Internet Basics
#### Required

* Introduction to the Internet Obviously there wouldn't be many web pages without the Internet. But what is it? What is is the difference between DNS, TCP/IP, HTTP, a web server and all the other stuff that makes up this super highway?
* Using HTML and CSS The building blocks of every web page are the HyperText Markup Language (HTML) and Cascading Style Sheets (CSS). Basically, when all is said and done, 90% of what a user actually sees is comprised of these two items.

#### Optional

* JavaScript

### Programming Languages
#### Required

Choose one (or more) language(s) from the following. These languages are the basis for enterprise applications. They are languages that are generally independent of the web and are therefore some of the most powerful languages in use today. On the other hand, their power also adds to their complexity. Study of Java, Visual Basic, C# or others can be an entire topic by themselves.
* Java - Java, in and of itself is not a web specific language. It is a powerful standalone language capable of creating Desktop applications, Browser based applications (Applets), or full web server applications. Web development concentrates on applets and full web server applications.
** Java Applets
** Java Server Pages
** optional: Enterprise Java Beans
* .Net Language- Microsoft's latest web development environment is focused around its .net framework. There are several languages used to develop web server based applications.
** Visual Basic
** C#
** J#
Choose one (or more) language(s) from the following. On the lighter side, these languages are more closely related to web development. While they can be just as complete as the languages listed above, they tend to have a more "web development feel."
* PHP
* Python
* Ruby on Rails

## Readings

* OpenStack
* Let's Encrypt

### External readings

* Secrets Of High-Traffic WordPress Blogs
* Web Development inspiration