SlideShare a Scribd company logo
1 of 25
Intro to Web Development 
digitalocean.com 
With Python/Flask 
By: Kaushal Parikh 
Local Hack Day December, 2014
digitalocean.com 
Who am I? 
Kaushal Parikh 
Student @Rutgers University 
Evangelist @ DigitalOcean 
Web Developer @ The Internet
digitalocean.com 
Overview 
What is a web application? 
Buzzwords/Terms: HTTP, REST, CRUD, Middleware, etc. 
Data flow through web applications 
How requests/responses work
digitalocean.com 
What is a web application? 
Request 
Response
digitalocean.com 
The User 
Request 
Response
digitalocean.com 
Your User 
Makes requests 
Typing in a url, form submissions, button clicks 
Receives responses 
Displays content
curl -X GET 
http://www.google.com 
digitalocean.com
digitalocean.com 
The Request 
Request 
Response
digitalocean.com 
The Request 
Made over HTTP 
Uses the HTTP methods 
Typically uses the Rest Paradigm
Commonly Used Less Commonly Used 
digitalocean.com 
HTTP 
Hyper Text Transport Protocol 
Verbs: 
GET 
POST 
PUT 
DELETE 
TRACE 
CONNECT 
OPTIONS 
PATCH 
etc.
digitalocean.com 
REST 
Representational State Transfer 
Paradigm for how to use the HTTP verbs pragmatically 
Ex 
GET - get a resource 
DELETE - delete resource 
POST - create new entry/resource
digitalocean.com 
The Application 
Request 
Response
digitalocean.com 
What is a server? 
Server(hardware) vs Server(software) 
Place where the application is running 
Accepts requests 
Sends response 
HTTP Middleware
digitalocean.com 
Server (hardware) 
Physical machine 
Can have several programs/processes running on it
digitalocean.com 
Server (software) 
Program that will accept requests and send responses 
‘Back end’ 
Responsibilities: 
Talking to databases 
Keeping state
digitalocean.com 
HTTP Middleware 
Parses and sanitizes requests 
Makes sending responses easy
digitalocean.com 
The Response 
Request 
Response
digitalocean.com 
Response 
Generated by server (software) 
Types of responses: 
HTML page 
Strings 
JSON
digitalocean.com 
Status codes 
Also included in the response 
Gives the users more information about the response 
1xx - Informational Codes 
2xx - Success! Received! Understood! 
3xx - Redirect 
4xx - Client Error Detected 
5xx - Server Error Detected
digitalocean.com 
Your web application! 
Request 
Response
digitalocean.com 
Lets write some code! 
Example app in Python/Flask 
https://github.com/kaushal/localhackday
digitalocean.com 
Conclusion 
Web development isn’t that complicated 
Data flow 
Request/response 
Use tools/frameworks 
Ask for help!
digitalocean.com 
Helpful links 
Flask - http://flask.pocoo.org/ 
HTTP - http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol 
HTTP status codes - http://www.w3.org/Protocols/rfc2616/rfc2616- 
sec10.html 
REST - http://en.wikipedia.org/wiki/Representational_state_transfer
digitalocean.com 
Contact Info 
Kaushal Parikh 
kparikh@digitalocean.com 
https://twitter.com/cashbagel 
https://github.com/kaushal
digitalocean.com 
The End.

More Related Content

What's hot

Web Vulnerabilities_NGAN Seok Chern
Web Vulnerabilities_NGAN Seok ChernWeb Vulnerabilities_NGAN Seok Chern
Web Vulnerabilities_NGAN Seok Chern
Quek Lilian
 
Web App Footprints Discovery
Web App Footprints DiscoveryWeb App Footprints Discovery
Web App Footprints Discovery
Aung Khant
 
Lavakumar kuppan _lust_2_0 - ClubHack2009
Lavakumar kuppan _lust_2_0 - ClubHack2009Lavakumar kuppan _lust_2_0 - ClubHack2009
Lavakumar kuppan _lust_2_0 - ClubHack2009
ClubHack
 
Some REST Design Patterns (and Anti-Patterns) - SOA Symposium 2009
Some REST Design Patterns (and Anti-Patterns) - SOA Symposium 2009Some REST Design Patterns (and Anti-Patterns) - SOA Symposium 2009
Some REST Design Patterns (and Anti-Patterns) - SOA Symposium 2009
Cesare Pautasso
 

What's hot (18)

Web Vulnerabilities_NGAN Seok Chern
Web Vulnerabilities_NGAN Seok ChernWeb Vulnerabilities_NGAN Seok Chern
Web Vulnerabilities_NGAN Seok Chern
 
Server Logs: After Excel Fails
Server Logs: After Excel FailsServer Logs: After Excel Fails
Server Logs: After Excel Fails
 
Web App Footprints Discovery
Web App Footprints DiscoveryWeb App Footprints Discovery
Web App Footprints Discovery
 
REST API Design for JAX-RS And Jersey
REST API Design for JAX-RS And JerseyREST API Design for JAX-RS And Jersey
REST API Design for JAX-RS And Jersey
 
Elegant Rest Design Webinar
Elegant Rest Design WebinarElegant Rest Design Webinar
Elegant Rest Design Webinar
 
HTTP Basic - PHP
HTTP Basic - PHPHTTP Basic - PHP
HTTP Basic - PHP
 
Electronic Resources for New Staff @ UConn
Electronic Resources for New Staff @ UConnElectronic Resources for New Staff @ UConn
Electronic Resources for New Staff @ UConn
 
Inner core of Ajax
Inner core of Ajax Inner core of Ajax
Inner core of Ajax
 
Secure Your REST API (The Right Way)
Secure Your REST API (The Right Way)Secure Your REST API (The Right Way)
Secure Your REST API (The Right Way)
 
Lavakumar kuppan _lust_2_0 - ClubHack2009
Lavakumar kuppan _lust_2_0 - ClubHack2009Lavakumar kuppan _lust_2_0 - ClubHack2009
Lavakumar kuppan _lust_2_0 - ClubHack2009
 
Website & Internet + Performance testing
Website & Internet + Performance testingWebsite & Internet + Performance testing
Website & Internet + Performance testing
 
improve website performance
improve website performanceimprove website performance
improve website performance
 
DEF CON 27 - BEN SADEGHIPOUR - owning the clout through ssrf and pdf generators
DEF CON 27 - BEN SADEGHIPOUR  - owning the clout through ssrf and pdf generatorsDEF CON 27 - BEN SADEGHIPOUR  - owning the clout through ssrf and pdf generators
DEF CON 27 - BEN SADEGHIPOUR - owning the clout through ssrf and pdf generators
 
Web Scraping Basics
Web Scraping BasicsWeb Scraping Basics
Web Scraping Basics
 
Php security
Php securityPhp security
Php security
 
Http to Https Get your WordPress website Compliant!
Http to Https Get your WordPress website Compliant!Http to Https Get your WordPress website Compliant!
Http to Https Get your WordPress website Compliant!
 
Some REST Design Patterns (and Anti-Patterns) - SOA Symposium 2009
Some REST Design Patterns (and Anti-Patterns) - SOA Symposium 2009Some REST Design Patterns (and Anti-Patterns) - SOA Symposium 2009
Some REST Design Patterns (and Anti-Patterns) - SOA Symposium 2009
 
REST, RESTful API
REST, RESTful APIREST, RESTful API
REST, RESTful API
 

Viewers also liked

The Mystery Is Solved Demystifying Integrations
The Mystery Is Solved Demystifying IntegrationsThe Mystery Is Solved Demystifying Integrations
The Mystery Is Solved Demystifying Integrations
dreamforce2006
 
Tim's Resume (2015) updated
Tim's Resume (2015) updatedTim's Resume (2015) updated
Tim's Resume (2015) updated
Tim Bomgardner
 
áNgel luis 4º b. nuevas nike safari boots
áNgel luis 4º b.  nuevas nike safari bootsáNgel luis 4º b.  nuevas nike safari boots
áNgel luis 4º b. nuevas nike safari boots
adnaya
 
Barry Johnson visit with grad school group to Saltillo Mexico schools
Barry Johnson visit with grad school group to Saltillo Mexico schoolsBarry Johnson visit with grad school group to Saltillo Mexico schools
Barry Johnson visit with grad school group to Saltillo Mexico schools
Barry L. Johnson, Jr. Ed.D.
 

Viewers also liked (20)

La Raspad
La RaspadLa Raspad
La Raspad
 
The Mystery Is Solved Demystifying Integrations
The Mystery Is Solved Demystifying IntegrationsThe Mystery Is Solved Demystifying Integrations
The Mystery Is Solved Demystifying Integrations
 
maltrato animal
maltrato animalmaltrato animal
maltrato animal
 
Unit Testing with Nose
Unit Testing with NoseUnit Testing with Nose
Unit Testing with Nose
 
HASAN ALSAIFI
HASAN ALSAIFIHASAN ALSAIFI
HASAN ALSAIFI
 
Con el apoyo de Enrique Peña Nieto, hoy Coahuila es más competitivo
Con el apoyo de Enrique Peña Nieto, hoy Coahuila es más competitivoCon el apoyo de Enrique Peña Nieto, hoy Coahuila es más competitivo
Con el apoyo de Enrique Peña Nieto, hoy Coahuila es más competitivo
 
Lale festivali,tulip festival 2013
Lale festivali,tulip festival 2013Lale festivali,tulip festival 2013
Lale festivali,tulip festival 2013
 
Fel Flyer F10
Fel Flyer F10Fel Flyer F10
Fel Flyer F10
 
Circuitos
CircuitosCircuitos
Circuitos
 
Tim's Resume (2015) updated
Tim's Resume (2015) updatedTim's Resume (2015) updated
Tim's Resume (2015) updated
 
Internet raffaella valluzzi
Internet raffaella valluzziInternet raffaella valluzzi
Internet raffaella valluzzi
 
áNgel luis 4º b. nuevas nike safari boots
áNgel luis 4º b.  nuevas nike safari bootsáNgel luis 4º b.  nuevas nike safari boots
áNgel luis 4º b. nuevas nike safari boots
 
PUEMBO DE COTOPAXI. Pablo Guaña
PUEMBO DE COTOPAXI. Pablo GuañaPUEMBO DE COTOPAXI. Pablo Guaña
PUEMBO DE COTOPAXI. Pablo Guaña
 
081202 Gzt Vtow4
081202 Gzt Vtow4081202 Gzt Vtow4
081202 Gzt Vtow4
 
Ruth Jarmul
Ruth JarmulRuth Jarmul
Ruth Jarmul
 
Relatório intenção de compras - Natal 2015
Relatório intenção de compras - Natal 2015Relatório intenção de compras - Natal 2015
Relatório intenção de compras - Natal 2015
 
Koala
KoalaKoala
Koala
 
Kennedy Power PointChapter 50
Kennedy Power PointChapter 50Kennedy Power PointChapter 50
Kennedy Power PointChapter 50
 
Bubbl us
Bubbl usBubbl us
Bubbl us
 
Barry Johnson visit with grad school group to Saltillo Mexico schools
Barry Johnson visit with grad school group to Saltillo Mexico schoolsBarry Johnson visit with grad school group to Saltillo Mexico schools
Barry Johnson visit with grad school group to Saltillo Mexico schools
 

Similar to Local hack day

Introduction to Web Programming - first course
Introduction to Web Programming - first courseIntroduction to Web Programming - first course
Introduction to Web Programming - first course
Vlad Posea
 
Hypertext Transfer Protocol
Hypertext Transfer ProtocolHypertext Transfer Protocol
Hypertext Transfer Protocol
Rajan Pandey
 
Software performance testing_overview
Software performance testing_overviewSoftware performance testing_overview
Software performance testing_overview
Rohan Bhattarai
 

Similar to Local hack day (20)

HTTP Basics Demo
HTTP Basics DemoHTTP Basics Demo
HTTP Basics Demo
 
Applying a Methodical Approach to Website Performance
Applying a Methodical Approach to Website PerformanceApplying a Methodical Approach to Website Performance
Applying a Methodical Approach to Website Performance
 
HTTP Server Push Techniques
HTTP Server Push TechniquesHTTP Server Push Techniques
HTTP Server Push Techniques
 
Introduction to Web Programming - first course
Introduction to Web Programming - first courseIntroduction to Web Programming - first course
Introduction to Web Programming - first course
 
ASP.NET WEB API Training
ASP.NET WEB API TrainingASP.NET WEB API Training
ASP.NET WEB API Training
 
Introduction to the Web and HTML
Introduction to the Web and HTMLIntroduction to the Web and HTML
Introduction to the Web and HTML
 
Hypertext Transfer Protocol
Hypertext Transfer ProtocolHypertext Transfer Protocol
Hypertext Transfer Protocol
 
Internet website designing_company_in_delhi
Internet website designing_company_in_delhiInternet website designing_company_in_delhi
Internet website designing_company_in_delhi
 
Software performance testing_overview
Software performance testing_overviewSoftware performance testing_overview
Software performance testing_overview
 
Switch to Backend 2023
Switch to Backend 2023Switch to Backend 2023
Switch to Backend 2023
 
Web Database
Web DatabaseWeb Database
Web Database
 
A RESTful introduction
A RESTful introductionA RESTful introduction
A RESTful introduction
 
Internet
InternetInternet
Internet
 
Progressive Web Apps for Education
Progressive Web Apps for EducationProgressive Web Apps for Education
Progressive Web Apps for Education
 
Starting Your DevOps Journey – Practical Tips for Ops
Starting Your DevOps Journey – Practical Tips for OpsStarting Your DevOps Journey – Practical Tips for Ops
Starting Your DevOps Journey – Practical Tips for Ops
 
Restful web services
Restful web servicesRestful web services
Restful web services
 
Introduction to data science with H2O-Chicago
Introduction to data science with H2O-ChicagoIntroduction to data science with H2O-Chicago
Introduction to data science with H2O-Chicago
 
Introduction to Data Science with H2O- Mountain View
Introduction to Data Science with H2O- Mountain ViewIntroduction to Data Science with H2O- Mountain View
Introduction to Data Science with H2O- Mountain View
 
nonprof2007.ppt
nonprof2007.pptnonprof2007.ppt
nonprof2007.ppt
 
Accelerating DevOps with ChatOps
Accelerating DevOps with ChatOpsAccelerating DevOps with ChatOps
Accelerating DevOps with ChatOps
 

Recently uploaded

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 

Recently uploaded (20)

Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 

Local hack day