Web Programming
Lecture 0

Introduction to Web Technologies

Josue Obregon

Seoul National University of Science and Technology
Information Technology Management
Lecture slides index

March 6, 2026

Agenda

Lecturer Presentation

  • BSC in Computer Engineering
    • Universidad de San Carlos de Guatemala

  • MSc in Industrial & Management Systems Engineering
    • Business Process Management Laboratory
    • Process mining applied to SNS

  • PhD in Industrial & Management Systems Engineering
    • Industrial Artificial Intelligence Laboratory
    • Interpretable Machine Learning for tree ensembles

Prof. Josue Obregon

Tel: 02-970-7291
Office: Frontier Hall (32), Room 915
Office Hours: Monday 14:00 – 17:00 (but come anytime!)
Home-page: https://eis.seoultech.ac.kr/
Email: jobregon@seoultech.ac.kr
Publications: Google Scholar Profile

Students

  • Question for students:
    • What website do you use the most every day??
    • If you could build one website, what would it be? (game website, shopping site, SNS)
    • Have you heard of or used any web tools (like HTML, CSS, or JavaScript) before? Which one sounds most interesting?


Every great developer you know got there by solving problems they were unqualified to solve until they actually did it.

— Patrick Mackenzie, Software Engineer

Course objectives

By the end of this course, students will be able to:

  1. Design and implement web applications using JavaScript, SQL, HTML, CSS, and React.
  2. Apply best practices in application design, including scalability, security, and user experience optimization.
  3. Write and utilize APIs, manipulate the DOM, and create dynamic, interactive user interfaces.
  4. Test, containerize, and deploy web applications on the Internet using modern CI/CD workflows.

The end result? A better understanding of the web, important technologies, and a portfolio for you to show!

Methodology

  • Flipped Clasroom style (most of weeks)
  • (1 ~ 1.5 hours) Watch online lectures and complete readings before class.
  • (1.5 ~ 2 hours) Offline activities (10:00 am)
    • Initial Quiz: Formative assesement of basic concepts and syntax.
    • Interactive Q&A: discussions and to clarify doubts.
    • Programming Quizzes: Take regular quizzes to reinforce concepts.
    • Hands-On Practice: Engage in coding exercises to apply what you’ve learned.

Class contents

  1. Intro to Web Technologies + HTML
  2. CSS
  3. Introduction to JavaScript
  4. DOM Manipulation with JavaScript
  5. Asynchronous JavaScript, JSON and APIs
  6. HTTP, API, JSON and AJAX
  7. Web Architectures
  8. Midterm
  1. Backend development I - Node.js
  2. Backend development II - Express
  3. Data Persistence in web applications
  4. Authentication and authorization
  5. Testing and Integration in web applications
  6. Project Presentation
  7. Final examination

Evaluation

Point Distribution
Assesment Points
Midterm 30%
Homework 15%
Term project 25%
Final exam 30%
Total 100%

Resources

Web development tools

  • Chrome: a browser to view and debug web pages
  • VSCode: a text editor to write HTML/CSS/JS/SQL (with various helpful packages available)
  • Command Line with Git: to clone/push assignments repositories (GitHub Clasroom)

Introduction web technologies

<!DOCTYPE html>
<html lang="en">
    <head>
        <title>Web Programming ITM</title>
    </head>
    <body>
        Welcome to Spring Semester!
    </body>
</html>

Global overview

  • Why do we study Web Programming in ITM?
    • In-demand skills
    • Allows businesses to establish an online presence, welcoming traffic and converting it into leads
    • It is fun to create websites (well, sort of…)
  • What are the tools and technologies developers are currently using and the ones they want to use.

What is a web page?

Content

Structure

Style

Behavior

A real web page?

What’s everything involved here?

It’s just this, right?

  1. Decide on URL…
  2. Type it in…
  3. Hit enter…
  4. Website loads!

But what happens between 3 and 4?

Behind the scenes

You don’t have Google.com on your computer. So, where does it come from?

  1. Find the server
    • DNS translates the domain name into an IP address
  2. Request the page
    • The browser sends an HTTP request to the server
  3. Receive the response
    • The server sends HTML, CSS, and JavaScript
  4. Render the page
    • The browser builds the page and displays it

When you open a webpage, your browser becomes a client that sends a request to a server somewhere on the internet.

The text in the address bar

  • It indicates where to find the website
  • Uniform Resource Locator (URL): An identifier for the location of a document

https://itm.seoultech.ac.kr/about_itm/about_professor

https://jobregon1212.github.io/lecture-slides/webprog/

Note

Protocol

Host

Path

URL elements

https://itm.seoultech.ac.kr/about_itm/about_professor

We’ve handled the host to IP address (so we know who to ask for the web page) The “protocol” tells us how:

  • HTTP: HyperText Transfer Protocol
  • Gives us the instructions (protocols) for how to share (transfer) web content (“hypertext”)

And the rest tells us what:

  • From the itm.seoultech.ac.kr server (aka host)…
  • Now we specifically want about_itm/about_professor (aka path or resource)

Internet vs. The Web

Internet

A global network of computers connected together.

Built using several layers:

  • Physical layer – cables, routers, and hardware
  • Network layer – moving data between computers
  • Transport layer – reliable communication (TCP)
  • Application layer – protocols like HTTP

The Web

A system of information pages

  • Pages written using HTML
  • Pages connected using links (hyperlinks)
  • Pages styled with CSS
  • Pages made interactive with JavaScript

Remember that URL? https://google.com/

Need to go out to the internet to get the webpage.

Internet is low-level: based on numbers (IP addresses), not names.

Domain Name System (DNS)

A Domain Name System translates human-readable names to IP addresses

  • Example: itm.seoultech.ac.kr → 203.246.83.174
  • Hostname of itm.seoultech.ac.kr (which we might put into the browser’s address bar) … has IP address of 203.246.83.174 (which will be used to contact the server via the internet)

Then we have a web page right?

Words + images

HTML

CSS

JavaScript

What’s in a web page?

  • Hypertext Markup Language (HTML): semantic markup for web page content
  • Cascading Style Sheets (CSS): styling web pages
  • Client-side JavaScript: adding programmable interactivity to web pages
  • Asynchronous Javascript, XML adn JSON: fetching data from web services using JavaScript fetch API

What are we going to learn?

Types of web developers: Frontend, backend and fullstack

Acknowledgements


Back to title slide Back to lecture slides index