CH 1 Web Programming Intro
CH 1 Web Programming Intro
CH 1 Web Programming Intro
Web Programming
Introductions, Internet, WWW, HTML Intro
Front-end development
Back-end development
Node.js
Data-driven application
MongoDB
REST API
2
Agenda
Course introduction
HTML Intro
3
Roll call, Introductions
Instructor Introduction
4
INSTRUCTOR’S PROFILE
Clients:
5
More Introductions, partner selection
Instructor Introductions
❖ Why I am doing this course (passion for Web dev, learn by teaching)
5
Course Introduction
Course objectives
❖ Understand what is a web application
❖ Be able to develop a simple web application
❖ Develop the thinking patterns required to adapt to the fast evolution of the web
technologies
Ask questions
❖ Don’t leave anything unanswered (sometimes I’ll try to ask them for you)
❖ Why ask questions? In order to understand something, you need to get answers.
But more importantly, you need to want to get the answers and to know what
questions to ask
Learning by doing
❖ Why? Learning happens when you work and discover. That is how knowledge is
constructed inside your head ☺
6
How you’ll get points
Course Grades
Weight Grade Component
10% Quizzes
30% Exams
7
Install Visual Studio Code
http://code.visualstudio.com/Download
❖ Installation instructions:
Find it on Google Drive/VL
❖ IntelliSense
10
5-mins break
11
Internet vs World Wide Web
The Internet
❖ Network of networks that use the Internet protocol
suite to link billions of devices worldwide
The Internet
❖ Early web browsers released: Mosaic 1992, Netscape 1994, Internet Explorer 1995
❖ Each device has a 32-bit IP address written as four 8-bit numbers (0-255)
15
Transport Control Protocol (TCP)
❖ Some programs (games, streaming media programs) use simpler UDP (User Datagram
Protocol) protocol instead of TCP
16
World Wide Web
Apache - http://www.apache.org
Microsoft Internet Information Server (IIS) - http://www.iis.net/
Express - https://expressjs.com
Phusion Passenger - https://www.phusionpassenger.com
17
World Wide Web
Popular browsers
18
Organizations you should know
❖ web standards
19
Domain Name System (DNS)
❖ Example:
https://poltekpos.ac.id ➔ 103.10.60.106
http://mxtoolbox.com/DNSLookup.aspx
20
Uniform Resource Locator (URL)
❖ https://poltekpos.ac.id/tentang
protocol host path
❖ Ask the server to GET /tentang and display the result in the browser
21
Advanced URLs
❖ http://en.wikipedia.org/wiki/HTML_element#Anchor
Fetches the HTML_element document, then jumps to the part of the page labeled Anchor
Port: for web servers on ports other than the default port 80
❖ http://portquiz.net:8080/index.php
22
Advanced URLs
http://www.google.com/search?q=miserable+failure&start=10
23
Hypertext Transfer Protocol (HTTP)
Defines a set of commands understood by a Web server and sent from a browser
Some HTTP commands (your browser sends these internally)
24
HTTP status codes
When a request is made by the browser, a response is sent back by the server with a
status code, possibly followed by a Web resource
Number Meaning
200 OK
301-303 Page has moved (temporarily or permanently)
403 It is forbidden to access this page
404 Page not found
500 Internal server error
25
Internet Media Types (MIME)
28
Page title: <title>
29
Paragraph: <p>
30
Headings: <h1>, <h2>, … <h6>
<!DOCTYPE html>
Separate major areas of a page <html>
(block element) <head>
<title>Introduction to HTML </title>
This is placed within the body of </head>
the page
<body>
Examples: <p>This is a paragraph of text </p>
❖ http://www.w3schools.com/tags/tryit.as <h1>Politeknik Pos Indonesia</h1>
<h2>Academy of Smart People</h2>
p?filename=tryhtml_headers
<h3>D4 Ecommerce Logistics</h3>
<h6>We teach the best stuff here!</h6>
</body>
</html>
29
Questions?