Web Applications for Everybody Specialization: Complete Note

Share This Post

Course 1 – Building Web Applications in PHP

Week – 1

V1: Why PHP?

00:04

Please Reload/Refresh this tab.

V2: Welcome to Course 1 In the Specialization

  • Charles Severance welcomes students to the first class of their PHP specialization.
  • This course spans five weeks and covers essential basics in HTML, CSS, HTTP, and PHP.
  • It focuses on back-end web development and application creation, not design.
  • Prior knowledge of CSS is helpful but not required.
  • For web design, another specialization by Colleen Van Lent is recommended.
  • Students can choose the order of taking these specializations.
  • Charles advises starting with web design before moving on to web application development.
  • Students can use forums for help, and instructional staff is available for support.
  • Charles can be contacted on Twitter via the handle @drchuck.
  • He wishes students good luck and looks forward to seeing them successfully complete the course.

Textbook & Course Resources

The Missing Link: An Introduction to Web Development and Programming – Milne Open Textbooks

Syllabus

Welcome to Building Web Applications in PHP

By Charles Severance!

In this course, you’ll explore the basic structure of a web application, and how a web browser interacts with a web server. You’ll be introduced to the request/response cycle, including GET/POST/Redirect. You’ll also gain an introductory understanding of Hypertext Markup Language (HTML), as well as the basic syntax and data structures of the PHP language, variables, logic, iteration, arrays, error handling, and superglobal variables, among other elements. An introduction to Cascading Style Sheets (CSS) will allow you to style markup for webpages. Lastly, you’ll gain the skills and knowledge to install and use an integrated PHP/MySQL environment like XAMPP or MAMP.

You can see the grading breakdown below for each assignment:

Autograder
TaskProgress
Autograder: HyperText Markup Language (HTML)20%
Our First PHP Application20%
Auto-grader: Guessing Game20%
Reversing an MD5 hash (password cracking)20%
Autograder: Rock Paper Scissors20%

V3- Our Technologies

01:05

Please Reload/Refresh this tab.

01:14

Please Reload/Refresh this tab.
  • The lecture introduces core technologies used in web applications.
  • Charles Severance discusses the role of people in developing these technologies.
  • Core technologies covered include Apache Web Server, PHP, SQL, JavaScript, jQuery, and JSON.
  • The Apache Web Server was created in the 1990s as an open-source project, designed to handle HTTP requests.
  • C programming language underpins many of these technologies.
  • PHP, created by Rasmus Lerdorf, is a templating language merged into HTML for dynamic web page generation.
  • SQL is a powerful language for database management, developed as a standard to communicate with various databases.
  • JavaScript is a versatile language for web browser interactions and was invented by Brendan Eich.
  • jQuery, created by John Resig, simplifies interactions with the Document Object Model (DOM) in browsers.
  • JSON (JavaScript Object Notation) is a data format used for communication between client and server.
  • The lecture emphasizes the human aspect of technology development and encourages students to watch interviews with key figures in these technologies.

04:53

Please Reload/Refresh this tab.

05:52

Please Reload/Refresh this tab.

06:18

Please Reload/Refresh this tab.

07:11

Please Reload/Refresh this tab.

08:24

Please Reload/Refresh this tab.

NIST standardized it.

09:40

Please Reload/Refresh this tab.

Document object model help JS manipulate your browser. Built as a server-side language.

10:48

Please Reload/Refresh this tab.

11:43

Please Reload/Refresh this tab.

12:50

Please Reload/Refresh this tab.

V4 – HyperText Transfer Protocol (HTTP)

00:21

Please Reload/Refresh this tab.
  • This lecture discusses the construction of web pages and the importance of understanding how web applications work, as they involve multiple layers and components.
  • The lecture mentions technologies used in web browsers, such as HTML, CSS, Document Object Model (DOM), JavaScript, jQuery, and JSON.
  • On the server side, technologies include PHP, SQL, and HTTP (Hyper Text Transport Protocol).
  • HTTP is the primary application layer protocol invented by Tim Berners-Lee and Robert Cailliau in 1989-1990.
  • A URL (Uniform Resource Locator) is explained as a concatenation of protocol, server, and resource location, which helps browsers retrieve web pages.
  • The lecture outlines the steps of a basic hypertext navigation cycle, including user input, GET request, server response, parsing, rendering, and display.
  • Internet standards and protocols are discussed, emphasizing the open and collaborative nature of their development, with the Internet Engineering Task Force (IETF) as a key organization.
  • RFCs (Requests For Comments) are mentioned as the standards governing protocols like HTTP, where experts can contribute and improve standards.
  • The lecture ends with a teaser about manually hacking an HTTP request in the next session.

01:45

Please Reload/Refresh this tab.

01:55

Please Reload/Refresh this tab.

02:31

Please Reload/Refresh this tab.

04:55

Please Reload/Refresh this tab.

05:07

Please Reload/Refresh this tab.

06:49

Please Reload/Refresh this tab.

07:00

Please Reload/Refresh this tab.

08:12

Please Reload/Refresh this tab.

The browser is the client that sees the website and requests a get request to the server

08:47

Please Reload/Refresh this tab.

in the form of html

09:23

Please Reload/Refresh this tab.

Document Object model receives and parses it.

09:51

Please Reload/Refresh this tab.

Governs the protocols we use. IETF

Standards are called RFCs.

11:32

Please Reload/Refresh this tab.

11:50

Please Reload/Refresh this tab.

V5 – Request/Response Cycle

00:26

Please Reload/Refresh this tab.

Please note – telnet is no longer enabled by default, or it has been removed by software vendors. It has become a security issue as login details (usernames and passwords) are sent in clear (unencrypted) text. It is not required for the course and should not be enabled or installed.

Treat this as an example only, using the Developer Console Inspect (shown after this telnet example) is the current way to see the HTML and headers.

01:25

Please Reload/Refresh this tab.

telnet was a way to log into server.

port 80 is where we expect a web server to be listening — http

03:57

Please Reload/Refresh this tab.

04:35

Please Reload/Refresh this tab.

Header – meta data

06:04

Please Reload/Refresh this tab.

07:11

Please Reload/Refresh this tab.

08:44

Please Reload/Refresh this tab.

200 OK – found

09:05

Please Reload/Refresh this tab.

doesnt exit 404 not found

10:54

Please Reload/Refresh this tab.

12:33

Please Reload/Refresh this tab.

12:42

Please Reload/Refresh this tab.

Summary :

  • In this section, the instructor delves deeper into how HTTP requests work and demonstrates how to manually create an HTTP request.
  • The instructor points out that the demonstration uses the old HTTP/1.0 protocol for simplicity. Newer servers prefer at least HTTP 1.1.
  • Telnet, an old protocol predating the internet, is used to connect to the server on port 80, where web servers typically listen.
  • The instructor demonstrates creating an HTTP GET request by typing the command into telnet and shows the response from the server.
  • He explains that the response can be broken down into two parts: the header and the body, with a blank line separating them.
  • The header contains metadata, including details about the server, content type, and more.
  • The instructor also highlights the significance of the status code, such as 200 OK for a successful request or 404 Not Found for a non-existent resource.
  • He mentions that this manual process is the hardcore way and encourages students to use browser developer tools instead.
  • Browser developer tools, such as Chrome’s Developer Console, are essential for debugging and understanding how web applications function.
  • The instructor demonstrates how to use browser developer tools to inspect network requests, including details like headers, response data, and status codes.
  • He emphasizes that understanding the request-response cycle is crucial for web development, and this knowledge will be built upon throughout the course.
  • The instructor concludes by highlighting the three layers of web development: the browser, web server, and database server, which are interconnected in web applications.
  • He encourages students to grasp these fundamental concepts, as they underpin web development using various frameworks and technologies.

V8 – Bonus: Office Hours in San Francisco

00:12

Please Reload/Refresh this tab.

V9 – Bonus: Office Hours in San Francisco

00:16

Please Reload/Refresh this tab.

Disclaimer: This blog is intended for educational purposes and no commercialization is intended. All rights belong to Coursera and the University of Michigan.

This is the detailed Week 1 summary, prepared while I was taking the course myself

Week 2 detailed summary and screenshots coming soon…

Related Posts

Surety Verification Form TCS Sample PDF Download 2024

If the surety verification form is for a Service...

View Minecraft Chat History in Notepad

In this guide, we are trying to resolve the...

How To Install Tacotron2 in VsCode? [5 min Guide]

Tacotron2 is a type of computer program that helps...