SlideShare a Scribd company logo
Web Programming Intro
             Ynon Perek




Tuesday, January 29, 13
Whoami



                     Ynon Perek

                     http://ynonperek.com

                     http://apps.ynonperek.com/sapiens/00_web.pdf

                     ynon@ynonperek.com




Tuesday, January 29, 13
Agenda



                     The Web Architecture

                     Hello HTML

                     Hello CSS

                     Hello JavaScript




Tuesday, January 29, 13
How It All Started



                     While working at CERN
                     in the 90s, Berners-Lee
                     develops WWW

                     1991 First web site

                     1994 Berners-Lee
                     founded the W3C




Tuesday, January 29, 13
The Web Architecture


        Client Side                           Server Side


                                 GET data




                                 Here It Is




Tuesday, January 29, 13
Server Side


                     Server side creates the
                     data and returns it to
                     the client

                     All server-side
                     languages return the
                     same result: HTML

                     There are many
                     languages...




Tuesday, January 29, 13
Client Side

                     Client side takes the
                     data and renders it on
                     screen

                     Provides a UX around
                     the data

                     Can send data back to
                     the server

                     Browsers: IE, Chrome,
                     Firefox, Safari




Tuesday, January 29, 13
The Data



                     Data is in a format
                     called HTML (Hyper
                     Text Markup Language)

                     Invented by Tim
                     Berners-Lee




Tuesday, January 29, 13
The Data


                                           <html>
                     A browser renders     <body>
                     HTML document on        <h1>Hello World</h1>
                                             <p>All your base are belong
                     screen
                                                to us</p>
                                           </body>
                     HTML is a tag-based
                                           </html>
                     language




Tuesday, January 29, 13
The Data




                     Tag-based means you need to use
                     the same opening and closing tag




                          <div>How Do You Annoy A Web
                               Developer ?</span>


Tuesday, January 29, 13
Available Tags



                     Tags (or markup) define the role of their content

                     Headers:
                     h1, h2, h3, h4, h5, h6

                     Block Sections: div

                     Inline Sections: span




Tuesday, January 29, 13
Container (Block)


             Demo
             Inline vs. Block
                                   One Two Three (inline)




Tuesday, January 29, 13
Adding Links



                     Use <a> tag to create a link

                     <a> is an inline element

                     Example:

                     <a href=”http://google.com”>Go To Google</a>




Tuesday, January 29, 13
Adding Images


                     Use <img> tag to create an image

                     <img> is an inline-block element: It flows it text, but
                     has height and width like a block

                     alt attribute tells google what’s in the photo

                     Example:
                     <img src=”http://fc02.deviantart.net/fs21/f/2007/306/
                     d/6/Chibi_turtle_by_blackcattlc.jpg” alt=”Cool Turtle”>




Tuesday, January 29, 13
Adding Text




                     Use <p> tag to wrap text paragraphs

                     <p> is a block-level element

                     Adds a newline




Tuesday, January 29, 13
Clickable Images




                     Wrap in <img> in an <a> tag to get an image that is
                     also a link

                     Demo: images, links and text paragraphs




Tuesday, January 29, 13
Lists



                     HTML has two types of lists: ordered lists marked <ol>
                     and unordered lists marked <ul>

                     Inside a list block, use <li> to denote items

                     <ul>, <ol> and <li> are all block elements




Tuesday, January 29, 13
Lab




                     Create an HTML document for your resume

                     Use correct headers

                     Add an image




Tuesday, January 29, 13
Pages With Style
             Introducing CSS


Tuesday, January 29, 13
Cascading Style Sheets




                     Apply styling rules to elements

                     Choose an element with a selector

                     Specify rules using properties




Tuesday, January 29, 13
Let’s Start With The Basics



                     Select all h1 elements

                     Write text in red

                     h1 {
                       color: red;
                     }




Tuesday, January 29, 13
Let’s Start With The Basics


                     More CSS styling properties:

                          background-color, color

                          font-weight, font-size, font-family, font-style, text-
                          decoration

                          text-align, line-height

                          outline




Tuesday, January 29, 13
Let’s Start With The Basics


                     Use #id to find a specific HTML element

                     h2#main {
                       color: red;
                     }

                     And in HTML:
                     <h2 id=‘main’>Red</h2>




Tuesday, January 29, 13
Let’s Start With The Basics


                     Use .class to find a set of HTML elements

                     h2.uppercase {
                       text-transform: uppercase;
                     }

                     And in HTML:
                     <h2 class=‘uppercase’>Red</h2>




Tuesday, January 29, 13
Block Level Properties




                     Only block (or inline-block) elements have size

                     width and height are only applicable to block elements




Tuesday, January 29, 13
Lab



                     Using the docs:
                     https://
                     developer.mozilla.org/
                     en-US/docs/CSS

                     Style this HTML:
                     http://pastebin.com/
                     Wm2s8EnH




Tuesday, January 29, 13
Tools Of The Trade




                     Development Tools

                     DOM Libraries

                     UI Libraries




Tuesday, January 29, 13
Development Tools



                     WebStorm IDE

                          LiveEdit

                          Extract inline CSS

                          Customize Templates




Tuesday, January 29, 13
Development Tools

                     Chrome Developer
                     Tools

                          Edit HTML and CSS
                          on any page

                          See Network Activity

                          Set cache and user
                          agent

                     Consider Canary




Tuesday, January 29, 13
Development Tools




                     BrowserStack maintain
                     a VM for every browser

                     Test and see how your
                     app/site works




Tuesday, January 29, 13
DOM Libraries




                     jQuery

                     YUI

                     ExtJS Core




Tuesday, January 29, 13
UI Libraries



                     jQuery UI

                     Kendo UI

                     YUI

                     ExtJS




Tuesday, January 29, 13
Demo: Kendo UI



                     Create widgets from
                     DOM elements

                     http://
                     demos.kendoui.com/
                     web/calendar/
                     index.html




Tuesday, January 29, 13
Demo: YUI


                     Widgets are created
                     from DOM elements

                     Library is loaded async
                     and on-demand

                     http://yuilibrary.com/
                     yui/docs/calendar/
                     calendar-simple.html




Tuesday, January 29, 13
Demo: jQuery UI


                     A collection of jQuery
                     UI Plugins

                     Use DOM elements to
                     create widgets

                     Can integrate with
                     other jQuery Plugins

                     http://jqueryui.com/
                     datepicker/#inline




Tuesday, January 29, 13
Demo: ExtJS

                     A UI Comprehensive
                     framework

                     Build everything in
                     JavaScript

                     Ext way or the high
                     way

                     http://cdn.sencha.io/
                     ext-4.1.1a-gpl/
                     examples/calendar/
                     index.html



Tuesday, January 29, 13
Choosing Framework




                     Use DOM library for maximum control

                     Use UI library for flexibility AND comfort

                     Use UI framework for maximum comfort




Tuesday, January 29, 13
Thank You



                     Photos From:

                          http://www.flickr.com/photos/
                          pedrosimoes7/5158386021/

                          http://123rf.com




Tuesday, January 29, 13

More Related Content

What's hot (20)

PPTX
What is component in reactjs
manojbkalla
 
PPTX
Django Framework Overview forNon-Python Developers
Rosario Renga
 
PDF
React and redux
Mystic Coders, LLC
 
PPTX
Intro to React
Eric Westfall
 
PDF
Introduction to python
Ahmed Salama
 
PPTX
Object Oriented Programming In JavaScript
Forziatech
 
PDF
An introduction to React.js
Emanuele DelBono
 
PPT
Css Ppt
Hema Prasanth
 
PPTX
Complete Lecture on Css presentation
Salman Memon
 
PDF
Angular - Chapter 3 - Components
WebStackAcademy
 
PDF
Basics of React Hooks.pptx.pdf
Knoldus Inc.
 
PPTX
React state
Ducat
 
PPT
Django, What is it, Why is it cool?
Tom Brander
 
PPTX
Introduction to java
Java Lover
 
PDF
Php introduction
krishnapriya Tadepalli
 
PDF
React js
Rajesh Kolla
 
PPT
Form validation client side
Mudasir Syed
 
PDF
JAVA PPT Part-1 BY ADI.pdf
Prof. Dr. K. Adisesha
 
PPTX
Front End Development | Introduction
JohnTaieb
 
PPTX
Setting up Page Object Model in Automation Framework
valuebound
 
What is component in reactjs
manojbkalla
 
Django Framework Overview forNon-Python Developers
Rosario Renga
 
React and redux
Mystic Coders, LLC
 
Intro to React
Eric Westfall
 
Introduction to python
Ahmed Salama
 
Object Oriented Programming In JavaScript
Forziatech
 
An introduction to React.js
Emanuele DelBono
 
Css Ppt
Hema Prasanth
 
Complete Lecture on Css presentation
Salman Memon
 
Angular - Chapter 3 - Components
WebStackAcademy
 
Basics of React Hooks.pptx.pdf
Knoldus Inc.
 
React state
Ducat
 
Django, What is it, Why is it cool?
Tom Brander
 
Introduction to java
Java Lover
 
Php introduction
krishnapriya Tadepalli
 
React js
Rajesh Kolla
 
Form validation client side
Mudasir Syed
 
JAVA PPT Part-1 BY ADI.pdf
Prof. Dr. K. Adisesha
 
Front End Development | Introduction
JohnTaieb
 
Setting up Page Object Model in Automation Framework
valuebound
 

Similar to Web Programming Intro (20)

PDF
Introduction to Web Programming
Ynon Perek
 
PDF
Html5 intro
Ynon Perek
 
PDF
Foundation of Web Application Developmnet - XHTML
Vashira Ravipanich
 
PPTX
Introduction to HTML
dilanie77
 
PPT
Introduction to HTML
Abzetdin Adamov
 
PDF
Htmlcs spresentation
gaplabs
 
PDF
Code &amp; design your first website (3:16)
Thinkful
 
PPT
HTML 5
Doncho Minkov
 
PDF
Mansoura University CSED & Nozom web development sprint
Al Sayed Gamal
 
PDF
Code & Design your first website 4/18
TJ Stalcup
 
PPT
IntroHTMzczczscasasaklahduasihiaSUJScgGJKKL.ppt
diciembrejatcs
 
PPTX
The Language of the Web - HTML and CSS
kcasavale
 
ODP
Light introduction to HTML
abidibo Contini
 
PDF
Html & Html5 from scratch
Ahmad Al-ammar
 
PDF
Intro to HTML 5 / CSS 3
Tadpole Collective
 
PDF
BYOWHC823
Thinkful
 
PDF
03 css
Ynon Perek
 
PPTX
Episode 14 - Basics of HTML for Salesforce
Jitendra Zaa
 
PPTX
Workshop 2 Slides.pptx
DaniyalSardar
 
PPT
Basic HTML/CSS
Chris Heiden
 
Introduction to Web Programming
Ynon Perek
 
Html5 intro
Ynon Perek
 
Foundation of Web Application Developmnet - XHTML
Vashira Ravipanich
 
Introduction to HTML
dilanie77
 
Introduction to HTML
Abzetdin Adamov
 
Htmlcs spresentation
gaplabs
 
Code &amp; design your first website (3:16)
Thinkful
 
Mansoura University CSED & Nozom web development sprint
Al Sayed Gamal
 
Code & Design your first website 4/18
TJ Stalcup
 
IntroHTMzczczscasasaklahduasihiaSUJScgGJKKL.ppt
diciembrejatcs
 
The Language of the Web - HTML and CSS
kcasavale
 
Light introduction to HTML
abidibo Contini
 
Html & Html5 from scratch
Ahmad Al-ammar
 
Intro to HTML 5 / CSS 3
Tadpole Collective
 
BYOWHC823
Thinkful
 
03 css
Ynon Perek
 
Episode 14 - Basics of HTML for Salesforce
Jitendra Zaa
 
Workshop 2 Slides.pptx
DaniyalSardar
 
Basic HTML/CSS
Chris Heiden
 
Ad

More from Ynon Perek (20)

PDF
Regexp
Ynon Perek
 
PDF
Html5 intro
Ynon Perek
 
PDF
09 performance
Ynon Perek
 
PDF
Mobile Web Intro
Ynon Perek
 
PDF
Qt multi threads
Ynon Perek
 
PDF
Vimperl
Ynon Perek
 
PDF
Syllabus
Ynon Perek
 
PDF
Mobile Devices
Ynon Perek
 
PDF
Network
Ynon Perek
 
PDF
Architecture app
Ynon Perek
 
PDF
Cryptography
Ynon Perek
 
PDF
Unit Testing JavaScript Applications
Ynon Perek
 
PDF
How to write easy-to-test JavaScript
Ynon Perek
 
PDF
Introduction to Selenium and Ruby
Ynon Perek
 
PDF
Introduction To Web Application Testing
Ynon Perek
 
PDF
Accessibility
Ynon Perek
 
PDF
Angularjs
Ynon Perek
 
PDF
Js memory
Ynon Perek
 
PDF
Qt Design Patterns
Ynon Perek
 
PDF
Web Application Security
Ynon Perek
 
Regexp
Ynon Perek
 
Html5 intro
Ynon Perek
 
09 performance
Ynon Perek
 
Mobile Web Intro
Ynon Perek
 
Qt multi threads
Ynon Perek
 
Vimperl
Ynon Perek
 
Syllabus
Ynon Perek
 
Mobile Devices
Ynon Perek
 
Network
Ynon Perek
 
Architecture app
Ynon Perek
 
Cryptography
Ynon Perek
 
Unit Testing JavaScript Applications
Ynon Perek
 
How to write easy-to-test JavaScript
Ynon Perek
 
Introduction to Selenium and Ruby
Ynon Perek
 
Introduction To Web Application Testing
Ynon Perek
 
Accessibility
Ynon Perek
 
Angularjs
Ynon Perek
 
Js memory
Ynon Perek
 
Qt Design Patterns
Ynon Perek
 
Web Application Security
Ynon Perek
 
Ad

Recently uploaded (20)

PDF
Impact of IEEE Computer Society in Advancing Emerging Technologies including ...
Hironori Washizaki
 
PDF
Human-centred design in online workplace learning and relationship to engagem...
Tracy Tang
 
PDF
LLMs.txt: Easily Control How AI Crawls Your Site
Keploy
 
PPTX
MSP360 Backup Scheduling and Retention Best Practices.pptx
MSP360
 
PDF
NewMind AI Journal - Weekly Chronicles - July'25 Week II
NewMind AI
 
PDF
Why Orbit Edge Tech is a Top Next JS Development Company in 2025
mahendraalaska08
 
PPTX
WooCommerce Workshop: Bring Your Laptop
Laura Hartwig
 
PDF
Log-Based Anomaly Detection: Enhancing System Reliability with Machine Learning
Mohammed BEKKOUCHE
 
PPTX
UiPath Academic Alliance Educator Panels: Session 2 - Business Analyst Content
DianaGray10
 
PDF
Blockchain Transactions Explained For Everyone
CIFDAQ
 
PDF
Presentation - Vibe Coding The Future of Tech
yanuarsinggih1
 
PDF
Achieving Consistent and Reliable AI Code Generation - Medusa AI
medusaaico
 
PPTX
Top iOS App Development Company in the USA for Innovative Apps
SynapseIndia
 
PDF
Building Resilience with Digital Twins : Lessons from Korea
SANGHEE SHIN
 
PDF
Windsurf Meetup Ottawa 2025-07-12 - Planning Mode at Reliza.pdf
Pavel Shukhman
 
PDF
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
PDF
TrustArc Webinar - Data Privacy Trends 2025: Mid-Year Insights & Program Stra...
TrustArc
 
PDF
CIFDAQ Weekly Market Wrap for 11th July 2025
CIFDAQ
 
PDF
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
PPTX
✨Unleashing Collaboration: Salesforce Channels & Community Power in Patna!✨
SanjeetMishra29
 
Impact of IEEE Computer Society in Advancing Emerging Technologies including ...
Hironori Washizaki
 
Human-centred design in online workplace learning and relationship to engagem...
Tracy Tang
 
LLMs.txt: Easily Control How AI Crawls Your Site
Keploy
 
MSP360 Backup Scheduling and Retention Best Practices.pptx
MSP360
 
NewMind AI Journal - Weekly Chronicles - July'25 Week II
NewMind AI
 
Why Orbit Edge Tech is a Top Next JS Development Company in 2025
mahendraalaska08
 
WooCommerce Workshop: Bring Your Laptop
Laura Hartwig
 
Log-Based Anomaly Detection: Enhancing System Reliability with Machine Learning
Mohammed BEKKOUCHE
 
UiPath Academic Alliance Educator Panels: Session 2 - Business Analyst Content
DianaGray10
 
Blockchain Transactions Explained For Everyone
CIFDAQ
 
Presentation - Vibe Coding The Future of Tech
yanuarsinggih1
 
Achieving Consistent and Reliable AI Code Generation - Medusa AI
medusaaico
 
Top iOS App Development Company in the USA for Innovative Apps
SynapseIndia
 
Building Resilience with Digital Twins : Lessons from Korea
SANGHEE SHIN
 
Windsurf Meetup Ottawa 2025-07-12 - Planning Mode at Reliza.pdf
Pavel Shukhman
 
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
TrustArc Webinar - Data Privacy Trends 2025: Mid-Year Insights & Program Stra...
TrustArc
 
CIFDAQ Weekly Market Wrap for 11th July 2025
CIFDAQ
 
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
✨Unleashing Collaboration: Salesforce Channels & Community Power in Patna!✨
SanjeetMishra29
 

Web Programming Intro

  • 1. Web Programming Intro Ynon Perek Tuesday, January 29, 13
  • 2. Whoami Ynon Perek http://ynonperek.com http://apps.ynonperek.com/sapiens/00_web.pdf [email protected] Tuesday, January 29, 13
  • 3. Agenda The Web Architecture Hello HTML Hello CSS Hello JavaScript Tuesday, January 29, 13
  • 4. How It All Started While working at CERN in the 90s, Berners-Lee develops WWW 1991 First web site 1994 Berners-Lee founded the W3C Tuesday, January 29, 13
  • 5. The Web Architecture Client Side Server Side GET data Here It Is Tuesday, January 29, 13
  • 6. Server Side Server side creates the data and returns it to the client All server-side languages return the same result: HTML There are many languages... Tuesday, January 29, 13
  • 7. Client Side Client side takes the data and renders it on screen Provides a UX around the data Can send data back to the server Browsers: IE, Chrome, Firefox, Safari Tuesday, January 29, 13
  • 8. The Data Data is in a format called HTML (Hyper Text Markup Language) Invented by Tim Berners-Lee Tuesday, January 29, 13
  • 9. The Data <html> A browser renders <body> HTML document on   <h1>Hello World</h1>   <p>All your base are belong screen to us</p> </body> HTML is a tag-based </html> language Tuesday, January 29, 13
  • 10. The Data Tag-based means you need to use the same opening and closing tag <div>How Do You Annoy A Web Developer ?</span> Tuesday, January 29, 13
  • 11. Available Tags Tags (or markup) define the role of their content Headers: h1, h2, h3, h4, h5, h6 Block Sections: div Inline Sections: span Tuesday, January 29, 13
  • 12. Container (Block) Demo Inline vs. Block One Two Three (inline) Tuesday, January 29, 13
  • 13. Adding Links Use <a> tag to create a link <a> is an inline element Example: <a href=”http://google.com”>Go To Google</a> Tuesday, January 29, 13
  • 14. Adding Images Use <img> tag to create an image <img> is an inline-block element: It flows it text, but has height and width like a block alt attribute tells google what’s in the photo Example: <img src=”http://fc02.deviantart.net/fs21/f/2007/306/ d/6/Chibi_turtle_by_blackcattlc.jpg” alt=”Cool Turtle”> Tuesday, January 29, 13
  • 15. Adding Text Use <p> tag to wrap text paragraphs <p> is a block-level element Adds a newline Tuesday, January 29, 13
  • 16. Clickable Images Wrap in <img> in an <a> tag to get an image that is also a link Demo: images, links and text paragraphs Tuesday, January 29, 13
  • 17. Lists HTML has two types of lists: ordered lists marked <ol> and unordered lists marked <ul> Inside a list block, use <li> to denote items <ul>, <ol> and <li> are all block elements Tuesday, January 29, 13
  • 18. Lab Create an HTML document for your resume Use correct headers Add an image Tuesday, January 29, 13
  • 19. Pages With Style Introducing CSS Tuesday, January 29, 13
  • 20. Cascading Style Sheets Apply styling rules to elements Choose an element with a selector Specify rules using properties Tuesday, January 29, 13
  • 21. Let’s Start With The Basics Select all h1 elements Write text in red h1 { color: red; } Tuesday, January 29, 13
  • 22. Let’s Start With The Basics More CSS styling properties: background-color, color font-weight, font-size, font-family, font-style, text- decoration text-align, line-height outline Tuesday, January 29, 13
  • 23. Let’s Start With The Basics Use #id to find a specific HTML element h2#main { color: red; } And in HTML: <h2 id=‘main’>Red</h2> Tuesday, January 29, 13
  • 24. Let’s Start With The Basics Use .class to find a set of HTML elements h2.uppercase { text-transform: uppercase; } And in HTML: <h2 class=‘uppercase’>Red</h2> Tuesday, January 29, 13
  • 25. Block Level Properties Only block (or inline-block) elements have size width and height are only applicable to block elements Tuesday, January 29, 13
  • 26. Lab Using the docs: https:// developer.mozilla.org/ en-US/docs/CSS Style this HTML: http://pastebin.com/ Wm2s8EnH Tuesday, January 29, 13
  • 27. Tools Of The Trade Development Tools DOM Libraries UI Libraries Tuesday, January 29, 13
  • 28. Development Tools WebStorm IDE LiveEdit Extract inline CSS Customize Templates Tuesday, January 29, 13
  • 29. Development Tools Chrome Developer Tools Edit HTML and CSS on any page See Network Activity Set cache and user agent Consider Canary Tuesday, January 29, 13
  • 30. Development Tools BrowserStack maintain a VM for every browser Test and see how your app/site works Tuesday, January 29, 13
  • 31. DOM Libraries jQuery YUI ExtJS Core Tuesday, January 29, 13
  • 32. UI Libraries jQuery UI Kendo UI YUI ExtJS Tuesday, January 29, 13
  • 33. Demo: Kendo UI Create widgets from DOM elements http:// demos.kendoui.com/ web/calendar/ index.html Tuesday, January 29, 13
  • 34. Demo: YUI Widgets are created from DOM elements Library is loaded async and on-demand http://yuilibrary.com/ yui/docs/calendar/ calendar-simple.html Tuesday, January 29, 13
  • 35. Demo: jQuery UI A collection of jQuery UI Plugins Use DOM elements to create widgets Can integrate with other jQuery Plugins http://jqueryui.com/ datepicker/#inline Tuesday, January 29, 13
  • 36. Demo: ExtJS A UI Comprehensive framework Build everything in JavaScript Ext way or the high way http://cdn.sencha.io/ ext-4.1.1a-gpl/ examples/calendar/ index.html Tuesday, January 29, 13
  • 37. Choosing Framework Use DOM library for maximum control Use UI library for flexibility AND comfort Use UI framework for maximum comfort Tuesday, January 29, 13
  • 38. Thank You Photos From: http://www.flickr.com/photos/ pedrosimoes7/5158386021/ http://123rf.com Tuesday, January 29, 13