webdev @ rgu
introduction to development
for the internet
Web 1.0
Static pages of hyperlinked information
Information revolution
created using HTML
<mark-up language>
HTML
HTML
HTML
Client/Server Request/Response
Web Browser The Internet Web Server
at server.com
Disk Drive
at server.com
User requests
http://server.com
Look up address of:
server.com
Request server.com
main page using IP
Receive and display
page
Return the index page
Fetch index.html from
hard disk
Receive request for
index page
Video
Audio Image
Moving Forward
Look and feel improved with style sheets
•presentation and style could be
separated from the information structure
and content
•Cascading Style Sheet (CSS)
•Mixed Media CSS
HTML
BUT
THEN
i’ve seen the future and it’s
Dynamic
Content
p.s. - this is Kirriemuir…its awesome!
Dynamic Content
Server side dynamic content generation
•Mature Web Server Stacks (e.g. LAMP)
•Sites became web services (data not
pages)
Request
Web Page
PHP Script
HTML
Web
Server
Database
Template
Engine
Dynamic request/response
Web Server PHP Processor Disk Drive mySQL Database
Receive Request
Fetch Page
Contains PHP?
Return Page
Receive Data
Execute SQLProcess PHP
Client/Server Request/Response
Web
Browser
The
Internet
Web
Server
at server.com
Disk Drive
at
server.com
User requests
http://server.com
Look up address
of:
server.com
Request
server.com main
page using IP
Receive and
display page
Return page
Fetch index.html
from hard disk
Receive request
for index page
PHP
Processor
mySQL
Database
Contains PHP?
Receive Data
Execute SQLProcess PHP
Why are web apps
important?
•Nobody wants simple web pages
anymore
•Desktop software for common tasks may
be coming extinct
•Offsite storage as standard
•Collaboration easily added
•No software installation
•No software updates
Development
Landscape
•No single ‘one-size fits all’ solution
•No ‘correct’ way to do web development
•Lots of different web stacks available
this doesn't mean
there isn’t a wrong
way…there is!
A software (or solution) stack:
a set of components required
to make a complete platform
A software (or solution) stack:
a set of components required
to make a complete platform
Web stack:
server side code utilises web
server and database all running
on an operating system
Common Web Stacks
LAMP
Linux
Apache
MySQL
PHP
LEMP
Linux
EnginX
MySQL
PHP
WAMP
Windows
Apache
MySQL
PHP
WIMP
Windows
ISS
MySQL
PHP
WINS
Windows
ISS
.Net
PHP
Linux
Apache
MySQL
PHP
Linux
Apache
MySQL
PHP
Alternatives
Exist…
Database
Application
Code
LAMP
OS
Database
HTTP Server
Serverside Code
MEAN
Linux
mySQL
apache
PHP
no need to mention,
node is cross platform
mongoDB
node is its own server,
Express makes it
easier
nodeJS applications,
may link to angular
clientside
html
css
php
mySQL
How to structure a webpage
How to style a webpage
How to make a web page interactive
How to load and save information
from a web page
html
css
php
mySQL
How to structure a webpage
How to style a webpage
How to make a web page interactive
How to load and save information
from a web page
Needs specialised server in
order to work
Can be created and viewed on your
own machine quite easily
webdev @ rgu
next is putting it into
practice…

Introduction to Development for the Internet