SlideShare ist ein Scribd-Unternehmen logo
1 von 41
Building Webs Better
Building Better Webs and Web
Applications Organically
David Eldridge
Please feel free to use this document however you would like. Attribution is appreciated.
Introduction
• Shawnee County Webmaster
– Support ASP.NET developers for specialized apps.
– Maintain www.snco.us with HTML, CSS, JavaScript
and legacy ASP
• A Federal Webmaster (KSARNG/OSS)
– Began learning standards/accessibility
• Fed: Standards or Die!
– Good beginning
– I always use them
[ 2 ]Please feel free to use this document however you would like. Attribution is appreciated.
Overview
• Introduction
• Accessibility
• SEO, Semantics, Separation and Standards
• Performance Considerations
• Return on Investment (ROI)
• Questions and Housekeeping
[ 3 ]Please feel free to use this document however you would like. Attribution is appreciated.
Inseparability
• SEO, semantics, access/accessibility, etc. are
like yarn on a sweater:
– Carefully interwoven
– Indiscernibly separate
• Separating these topics can be difficult
Don’t do it: they work together well
[ 4 ]Please feel free to use this document however you would like. Attribution is appreciated.
Accessibility:
Some Assumptions
• Bad Word.
• Very Expensive.
• Low ROI.
[ 5 ]Please feel free to use this document however you would like. Attribution is appreciated.
Access:
Not Just Accessibility
What it’s not
• Protection
(against those with
disabilities)
What it is
• UA-appropriate
• Flexible
• Free
– Like speech
– Like beer
[ 6 ]Please feel free to use this document however you would like. Attribution is appreciated.
Access:
for People
• Screen
• Paper
• Screen readers
• Mobile/handheld/phone/PDA
• Non-standard devices
• DOM—etc.
[ 7 ]Please feel free to use this document however you would like. Attribution is appreciated.
Access:
for Machines
• Educational/Industrial Data mining
• Search Engines
• [Spam bots, too: sorry ]
• DOM—etc.
[ 8 ]Please feel free to use this document however you would like. Attribution is appreciated.
Access:
Document Object Model
• Ad hoc API
– Three simple examples:
• Web Clips—Safari 3+
• Web Slices—IE8 (product site)
– Requires some add’l coding
• “FireClips”—FF3 (video|add-on)
– Other capabilities available and coming
[ 9 ]Please feel free to use this document however you would like. Attribution is appreciated.
Access:
DOM—Extensibility
• It can be traversed, styled, destroyed,
created, and appended to dynamically
– JavaScript
– Style: CSS/XSLT
– Server-side code:
• PHP and Ruby (on Rails) among others support this
• In the future in Visual Studio?
Don’t be surprised, but don’t hold your breath.
[ 10 ]Please feel free to use this document however you would like. Attribution is appreciated.
Access:
User Interface
• Offer users early access to the whole page:
– e.g. “Go directly to content, or navigation.”
• Hide it from screen and print devices, etc.
• Offer it to mobile, non-standard devices, etc.
• JavaScript is not everywhere. Consider your
audience.
[ 11 ]Please feel free to use this document however you would like. Attribution is appreciated.
SEO, Semantics and Standards
• Standards are BAD! Err…?
– Help dumb people (like designers) to excel
– Avoid Hard Knocks University
– Level the playing field
[ 12 ]Please feel free to use this document however you would like. Attribution is appreciated.
SEO, Semantics and Standards
Continued
• W3C, WHATWG, Ecma Int’l, WaSP, etc.
– Recognize trends
– Codify standards
– Educate and Inform Educators (mostly WaSP)
– Empower developers
– Guide browser makers…
[ 13 ]Please feel free to use this document however you would like. Attribution is appreciated.
SEO, Semantics and Standards
Browser Changes
• FF, Safari implementing Canvas and SVG
• IE8, FF, Safari implementing <audio> and
<video> elements (good and bad):
– IE8/MS: MS formats 
– Safari/Apple: QuickTime formats 
– Firefox/Mozilla: Ogg formats 
[ 14 ]Please feel free to use this document however you would like. Attribution is appreciated.
SEO, Semantics and Standards
Standards ‘Decouple’ Documents
• Encourage document-level separation of
– Markup/Content ([X]HTML)
– Style (CSS/XSLT)
– Behavior (JavaScript)
[ 15 ]Please feel free to use this document however you would like. Attribution is appreciated.
SEO, Semantics and Standards
• Standards save work
– <video>/<audio> v. non-standard <embed>
– border-radius v. rounded corner JS/CSS/HTML
mess
– :hover v. old bloated hover image effect
– CSS font declarations v. non-semantic <font> tag
[ 16 ]Please feel free to use this document however you would like. Attribution is appreciated.
SEO, Semantics and Standards
• Standards add previously unrealized
functionality
– Microsoft’s XHR (XML HTTP Request):
Now Ajax (or AJAX if you insist)
– Microsoft’s JPEG XR (HD Photo, previously
Windows Media Photo): Better compression for
even larger image files, both lossy and lossless
[ 17 ]Please feel free to use this document however you would like. Attribution is appreciated.
Organic SEO
How Standards and SEO Relate
• Semantic tagging informs content
– Good: head>title, h1, span.phone-number
– Poor: font, small, big, b, i, blink
• Metadata fills in the gaps with keywords,
authorship, date and other information
– Dublin Core metadata is a good framework
[ 18 ]Please feel free to use this document however you would like. Attribution is appreciated.
Organic SEO
Continued
• Consider:
– <title>Banking Security • BankTwo</title>
…
<h1>Security Procedures</h1>
• Or:
– <title>BankTwo</title>
…
<span style="font-size:16px;color:#333333;font-
family:georgia;display:block;">Security</span>
[ 19 ]Please feel free to use this document however you would like. Attribution is appreciated.
Semantics
Informing Data
• Framework for categorization and the DOM:
– h1-h6, dl, dt, dd, ol, ul, li, dfn, abbr, p, address
• Classes (and IDs) further augment good semantics
– abbr.acronym, ol.contents, span.phone-work-
voice, span.name-last, ul.ingredients,
ol.instructions, div#content, div#footer-
legal
[ 20 ]Please feel free to use this document however you would like. Attribution is appreciated.
Semantics
Informing Data
• Semantics help us and machines cull data:
– Widgets: clips, slices etc.
– Microformats like hCard, hCalendar, hAtom and hReview
• Google now uses RDFa/hReview and hCard
– You don’t need to pioneer these technologies
• Google took years to jump on microformats
• Firefox didn’t get over 20% market in a day
• But folks are using these now
• All 3 big browsers use Web Slices/Clips
[ 21 ]Please feel free to use this document however you would like. Attribution is appreciated.
Brass Tacks:
Get out of Line: Use the DOM
• Standards make using JavaScript, DOM
scripting and Ajax easier and better
– It eases maintenance
• Less inline code
– It keeps code legible…
• Again, less incline code
[ 22 ]Please feel free to use this document however you would like. Attribution is appreciated.
Brass Tacks:
Get out of Line: Use the DOM
– It extends easily
• Classes, ID’s and the DOM make good hooks for JS
and style
• At best, they require a script tag
• More often they will also need more classes, ids
and/or elements.
– It fails well
• Users don’t miss it when it’s gone
(Everything still works)
[ 23 ]Please feel free to use this document however you would like. Attribution is appreciated.
Brass Tacks:
JavaScript and Accessibility
• Some users and UAs don’t see JavaScript fire:
– Screen readers
• Audibly indicating DOM-scripting and Ajax changes
through screen readers is a booger.
• Some UAs neglect it; others handle it poorly.
– Those behind corporate firewalls
– Some mobile UAs
– Others with JS disabled (purposefully or not)
[ 24 ]Please feel free to use this document however you would like. Attribution is appreciated.
Semantics
Cost and Value
• Building sloppy code is cheap
• Maintaining it isn’t: I know.
• Inline style (and event handlers) create larger
files, and make clean-up tedious
• Semantics offer ad hoc documentation
[ 25 ]Please feel free to use this document however you would like. Attribution is appreciated.
Semantics
Why Not?
• Learning curve?
– Yes.
• Code Bloat?
– No…
Consider another simple example.
[ 26 ]Please feel free to use this document however you would like. Attribution is appreciated.
Semantics
Why Not?
• HTML3 and earlier
– <table style="color:#555;background-
color:#eee;border:1px #333;vertical-
align:bottom; "…>…<tr><td
style="text-align:right;font-
family:consolas,'andale
mono',mono;">785.555.1212</td></tr></
table>
[ 27 ]Please feel free to use this document however you would like. Attribution is appreciated.
Semantics
Why Not?
• HTML4, HTML5, XTHML
– <table class="phone-chart"…>…<tr><td
class="phone-work-
fax">785.555.1212</td></tr></table>
[ 28 ]Please feel free to use this document however you would like. Attribution is appreciated.
Brass Tacks
• Some practical implementation examples
and ideas.
[ 29 ]Please feel free to use this document however you would like. Attribution is appreciated.
Brass Tacks:
Character Encoding
• Right after the head, even before <title>:
– make sure the title and all after are properly
encoded
• It’s important for good data and security…
– For display
• You don’t want to see that.
– For good capture and security:
• especially with intérñatiönal users
[ 31 ]Please feel free to use this document however you would like. Attribution is appreciated.
Brass Tacks:
Character Encoding
• Unless you have particular needs use UTF-8
– <!DOCTYPE HTML…>
<html lang="en-US">
<head>
<meta http-equiv="Content-Type"
content="text/html; charset=utf-8">
<title>Hello, World</title>
[ 32 ]Please feel free to use this document however you would like. Attribution is appreciated.
Brass Tacks:
JavaScript Bottlenecks
• HTTP/1.1 allows multiple persistent connections.
• Modern browsers load multiple resources (text,
image, audio, etc.) at once:
– Without manipulation, UAs don’t allow over two scripts
to pull in at once.
• When able, load scripts last (i.e. before </body>),
or use the onload event handler (or similar device)
to build your script request dynamically at full load.
[ 33 ]Please feel free to use this document however you would like. Attribution is appreciated.
Brass Tacks:
CSS Bottlenecks
• Make CSS external (usu. automatic in VS)
– But if not, avoid using the @import command in
<style> tags, as it causes problems with
concurrent downloading in some browsers
• Place it as soon after the title as possible:
– <!doctype…>…
<title>I am a title</title>
<link rel="stylesheet"/>
[ 34 ]Please feel free to use this document however you would like. Attribution is appreciated.
Brass Tacks:
More JS Considerations
• Be aware of VS controls that generate non-
standard mark-up:
– e.g. ListBox, DropDownList, AdRotator and more.
• As our DBA always reminds us, never trust
the client (device).
[ 35 ]Please feel free to use this document however you would like. Attribution is appreciated.
Brass Tacks:
More JS Considerations
• The JS pseudo-protocol is not a protocol…
• If you use it or inline event handlers with
href="#", the event will not fire in some
cases, leaving users bewildered.
[ 36 ]Please feel free to use this document however you would like. Attribution is appreciated.
Conclusion:
ROI
• Ease of extension
• Value of data: content is more informed
• Natural/Accidental/Organic SEO
• Faster page loads/decreased server load
• Greater user access/cullability
[ 37 ]Please feel free to use this document however you would like. Attribution is appreciated.
Conclusion:
Last Things
• I won’t be there to blame when your app fails
– And, they’ll laugh at you for listening to a designer
• Standards are usually optimal: but not always
• Standards change: so don’t follow blindly
• If they don’t help now, they may help later
• Make your boss happy: the food will follow
[ 38 ]Please feel free to use this document however you would like. Attribution is appreciated.
Questions?
• No?
• Good.
[ 39 ]Please feel free to use this document however you would like. Attribution is appreciated.
Questions?
[ 40 ]Please feel free to use this document however you would like. Attribution is appreciated.
Contact
• Please send any more questions to
– david@wd2.us
– 785.783.4755
– Google+ j.mp/rgum
• For this presentation visit goo.gl/PmoDw
[ 42 ]Please feel free to use this document however you would like. Attribution is appreciated.
[ 43 ]Please feel free to use this document however you would like. Attribution is appreciated.

Weitere ähnliche Inhalte

Was ist angesagt?

Battle of the Front-End Frameworks: Bootstrap vs. Foundation
Battle of the Front-End Frameworks: Bootstrap vs. FoundationBattle of the Front-End Frameworks: Bootstrap vs. Foundation
Battle of the Front-End Frameworks: Bootstrap vs. FoundationRachel Cherry
 
Practical Performance Tips and Tricks to Make Your HTML/JavaScript Apps Faster
Practical Performance Tips and Tricks to Make Your HTML/JavaScript Apps FasterPractical Performance Tips and Tricks to Make Your HTML/JavaScript Apps Faster
Practical Performance Tips and Tricks to Make Your HTML/JavaScript Apps FasterDoris Chen
 
BDUG Responsive Web Theming - 7/23/12
BDUG Responsive Web Theming - 7/23/12BDUG Responsive Web Theming - 7/23/12
BDUG Responsive Web Theming - 7/23/12ucbdrupal
 
An Introduction to Drupal & How to Use It by Sanket Jain
An Introduction to Drupal & How to Use It by Sanket JainAn Introduction to Drupal & How to Use It by Sanket Jain
An Introduction to Drupal & How to Use It by Sanket JainInnoraft
 
October 2014 - USG Rock Eagle - Drupal 101
October 2014 - USG Rock Eagle - Drupal 101October 2014 - USG Rock Eagle - Drupal 101
October 2014 - USG Rock Eagle - Drupal 101Eric Sembrat
 
Opening What's Closed: Using Open Source Tools to Tear Down [Vendor] Silos
Opening What's Closed: Using Open Source Tools to Tear Down [Vendor] SilosOpening What's Closed: Using Open Source Tools to Tear Down [Vendor] Silos
Opening What's Closed: Using Open Source Tools to Tear Down [Vendor] SilosKen Varnum
 
Intro to HTML5 & CSS3
Intro to HTML5 & CSS3Intro to HTML5 & CSS3
Intro to HTML5 & CSS3tibbon
 
Getting started with CSS frameworks using Zurb foundation
Getting started with CSS frameworks using Zurb foundationGetting started with CSS frameworks using Zurb foundation
Getting started with CSS frameworks using Zurb foundationMelanie Archer
 
MCC Web Design Workshop
MCC Web Design WorkshopMCC Web Design Workshop
MCC Web Design WorkshopFaye Tandog
 
Atlanta Drupal User Group (ADUG)
Atlanta Drupal User Group (ADUG) Atlanta Drupal User Group (ADUG)
Atlanta Drupal User Group (ADUG) Mediacurrent
 
Future-proof styling in Drupal (8)
Future-proof styling in Drupal (8)Future-proof styling in Drupal (8)
Future-proof styling in Drupal (8)Hajas Tamás
 
The Future Of CSS
The Future Of CSSThe Future Of CSS
The Future Of CSSAndy Budd
 
Intro to drupal
Intro to drupalIntro to drupal
Intro to drupalhernanibf
 
Creating Responsive Drupal Sites with Zen Grids and the Zen 5 Theme
Creating Responsive Drupal Sites with Zen Grids and the Zen 5 ThemeCreating Responsive Drupal Sites with Zen Grids and the Zen 5 Theme
Creating Responsive Drupal Sites with Zen Grids and the Zen 5 ThemeAcquia
 
Oxford DrupalCamp 2012 - The things we found in your website
Oxford DrupalCamp 2012 - The things we found in your websiteOxford DrupalCamp 2012 - The things we found in your website
Oxford DrupalCamp 2012 - The things we found in your websitehernanibf
 

Was ist angesagt? (20)

Battle of the Front-End Frameworks: Bootstrap vs. Foundation
Battle of the Front-End Frameworks: Bootstrap vs. FoundationBattle of the Front-End Frameworks: Bootstrap vs. Foundation
Battle of the Front-End Frameworks: Bootstrap vs. Foundation
 
Bootstrap 5 ppt
Bootstrap 5 pptBootstrap 5 ppt
Bootstrap 5 ppt
 
Practical Performance Tips and Tricks to Make Your HTML/JavaScript Apps Faster
Practical Performance Tips and Tricks to Make Your HTML/JavaScript Apps FasterPractical Performance Tips and Tricks to Make Your HTML/JavaScript Apps Faster
Practical Performance Tips and Tricks to Make Your HTML/JavaScript Apps Faster
 
Beyond Boolean - Enterprise Search Technologies
Beyond Boolean - Enterprise Search TechnologiesBeyond Boolean - Enterprise Search Technologies
Beyond Boolean - Enterprise Search Technologies
 
dmBridge & dmMonocle
dmBridge & dmMonocledmBridge & dmMonocle
dmBridge & dmMonocle
 
BDUG Responsive Web Theming - 7/23/12
BDUG Responsive Web Theming - 7/23/12BDUG Responsive Web Theming - 7/23/12
BDUG Responsive Web Theming - 7/23/12
 
An Introduction to Drupal & How to Use It by Sanket Jain
An Introduction to Drupal & How to Use It by Sanket JainAn Introduction to Drupal & How to Use It by Sanket Jain
An Introduction to Drupal & How to Use It by Sanket Jain
 
October 2014 - USG Rock Eagle - Drupal 101
October 2014 - USG Rock Eagle - Drupal 101October 2014 - USG Rock Eagle - Drupal 101
October 2014 - USG Rock Eagle - Drupal 101
 
Opening What's Closed: Using Open Source Tools to Tear Down [Vendor] Silos
Opening What's Closed: Using Open Source Tools to Tear Down [Vendor] SilosOpening What's Closed: Using Open Source Tools to Tear Down [Vendor] Silos
Opening What's Closed: Using Open Source Tools to Tear Down [Vendor] Silos
 
Intro to HTML5 & CSS3
Intro to HTML5 & CSS3Intro to HTML5 & CSS3
Intro to HTML5 & CSS3
 
Getting started with CSS frameworks using Zurb foundation
Getting started with CSS frameworks using Zurb foundationGetting started with CSS frameworks using Zurb foundation
Getting started with CSS frameworks using Zurb foundation
 
MCC Web Design Workshop
MCC Web Design WorkshopMCC Web Design Workshop
MCC Web Design Workshop
 
Atlanta Drupal User Group (ADUG)
Atlanta Drupal User Group (ADUG) Atlanta Drupal User Group (ADUG)
Atlanta Drupal User Group (ADUG)
 
Future-proof styling in Drupal (8)
Future-proof styling in Drupal (8)Future-proof styling in Drupal (8)
Future-proof styling in Drupal (8)
 
A Custom Drupal Theme in 40 Minutes
A Custom Drupal Theme in 40 MinutesA Custom Drupal Theme in 40 Minutes
A Custom Drupal Theme in 40 Minutes
 
The Future Of CSS
The Future Of CSSThe Future Of CSS
The Future Of CSS
 
Intro to drupal
Intro to drupalIntro to drupal
Intro to drupal
 
Creating Responsive Drupal Sites with Zen Grids and the Zen 5 Theme
Creating Responsive Drupal Sites with Zen Grids and the Zen 5 ThemeCreating Responsive Drupal Sites with Zen Grids and the Zen 5 Theme
Creating Responsive Drupal Sites with Zen Grids and the Zen 5 Theme
 
Oxford DrupalCamp 2012 - The things we found in your website
Oxford DrupalCamp 2012 - The things we found in your websiteOxford DrupalCamp 2012 - The things we found in your website
Oxford DrupalCamp 2012 - The things we found in your website
 
Module 3 - Intro to Bootstrap
Module 3 - Intro to BootstrapModule 3 - Intro to Bootstrap
Module 3 - Intro to Bootstrap
 

Andere mochten auch

Adsuwak-Proyecto Startup Weekend Valencia 2014
Adsuwak-Proyecto Startup Weekend Valencia 2014Adsuwak-Proyecto Startup Weekend Valencia 2014
Adsuwak-Proyecto Startup Weekend Valencia 2014Alejandro Tomás Martínez
 
A framework of distributed indexing and data
A framework of distributed indexing and dataA framework of distributed indexing and data
A framework of distributed indexing and dataHarshavardhan Achrekar
 
第1回 サブRencon 開催報告
第1回 サブRencon 開催報告第1回 サブRencon 開催報告
第1回 サブRencon 開催報告Kenzi Noike
 
Gilda Apresentacao
Gilda  ApresentacaoGilda  Apresentacao
Gilda ApresentacaoWill Baruths
 
Dan buzzo-ignite-presentation
Dan buzzo-ignite-presentationDan buzzo-ignite-presentation
Dan buzzo-ignite-presentationdanbuzzo
 
Mkh business source complete
Mkh business source completeMkh business source complete
Mkh business source completebauder
 
Projecte comenius powerpoint
Projecte comenius powerpointProjecte comenius powerpoint
Projecte comenius powerpointmaribelherrera72
 
2011 GolinHarris Al's Day
2011 GolinHarris Al's Day2011 GolinHarris Al's Day
2011 GolinHarris Al's DayGolin
 
Group project story board
Group project story boardGroup project story board
Group project story boardslawatsch
 
Parent info 2012
Parent info 2012Parent info 2012
Parent info 2012StPatricks
 
Complementos de grandes marcas
Complementos de grandes marcasComplementos de grandes marcas
Complementos de grandes marcasCoartegift
 
香菇油菜
香菇油菜 香菇油菜
香菇油菜 Clary Xue
 

Andere mochten auch (20)

Adsuwak-Proyecto Startup Weekend Valencia 2014
Adsuwak-Proyecto Startup Weekend Valencia 2014Adsuwak-Proyecto Startup Weekend Valencia 2014
Adsuwak-Proyecto Startup Weekend Valencia 2014
 
A framework of distributed indexing and data
A framework of distributed indexing and dataA framework of distributed indexing and data
A framework of distributed indexing and data
 
Het internet domein van nul tot nu
Het internet domein van nul tot nuHet internet domein van nul tot nu
Het internet domein van nul tot nu
 
第1回 サブRencon 開催報告
第1回 サブRencon 開催報告第1回 サブRencon 開催報告
第1回 サブRencon 開催報告
 
Gilda Apresentacao
Gilda  ApresentacaoGilda  Apresentacao
Gilda Apresentacao
 
Dan buzzo-ignite-presentation
Dan buzzo-ignite-presentationDan buzzo-ignite-presentation
Dan buzzo-ignite-presentation
 
Mkh business source complete
Mkh business source completeMkh business source complete
Mkh business source complete
 
강의자료7
강의자료7강의자료7
강의자료7
 
Projecte comenius powerpoint
Projecte comenius powerpointProjecte comenius powerpoint
Projecte comenius powerpoint
 
Luminex Q4 2010 Earnings Call
Luminex Q4 2010 Earnings CallLuminex Q4 2010 Earnings Call
Luminex Q4 2010 Earnings Call
 
Math project
Math project Math project
Math project
 
Article Review
Article ReviewArticle Review
Article Review
 
2011 GolinHarris Al's Day
2011 GolinHarris Al's Day2011 GolinHarris Al's Day
2011 GolinHarris Al's Day
 
Group project story board
Group project story boardGroup project story board
Group project story board
 
Succesvol content management
Succesvol content managementSuccesvol content management
Succesvol content management
 
Parent info 2012
Parent info 2012Parent info 2012
Parent info 2012
 
Complementos de grandes marcas
Complementos de grandes marcasComplementos de grandes marcas
Complementos de grandes marcas
 
Internships–what next
Internships–what nextInternships–what next
Internships–what next
 
香菇油菜
香菇油菜 香菇油菜
香菇油菜
 
19726_LOOA_affiches_A3[1]
19726_LOOA_affiches_A3[1]19726_LOOA_affiches_A3[1]
19726_LOOA_affiches_A3[1]
 

Ähnlich wie Building Webs Better

Styling Your Web Pages with Cascading Style Sheets / EDU course / University ...
Styling Your Web Pages with Cascading Style Sheets / EDU course / University ...Styling Your Web Pages with Cascading Style Sheets / EDU course / University ...
Styling Your Web Pages with Cascading Style Sheets / EDU course / University ...Patrick Lauke
 
Web Accessibility Top 10 - LCC (1/2 day workshop, August 2013)
Web Accessibility Top 10 - LCC (1/2 day workshop, August 2013)Web Accessibility Top 10 - LCC (1/2 day workshop, August 2013)
Web Accessibility Top 10 - LCC (1/2 day workshop, August 2013)Carrie Anton
 
Making Your Site Printable: CSS Summit 2014
Making Your Site Printable: CSS Summit 2014Making Your Site Printable: CSS Summit 2014
Making Your Site Printable: CSS Summit 2014Adrian Roselli
 
Introduction to HTML5 and CSS3 (revised)
Introduction to HTML5 and CSS3 (revised)Introduction to HTML5 and CSS3 (revised)
Introduction to HTML5 and CSS3 (revised)Joseph Lewis
 
Talk 03 responsive-web-design
Talk 03 responsive-web-designTalk 03 responsive-web-design
Talk 03 responsive-web-designMonkeyshot
 
Building Faster Websites
Building Faster WebsitesBuilding Faster Websites
Building Faster WebsitesCraig Walker
 
HTML5 on Mobile(For Designer)
HTML5 on Mobile(For Designer)HTML5 on Mobile(For Designer)
HTML5 on Mobile(For Designer)Adam Lu
 
HTML5 Accessibility
HTML5 AccessibilityHTML5 Accessibility
HTML5 AccessibilityUser Vision
 
IWMW 1997: Next Year's Web
IWMW 1997: Next Year's WebIWMW 1997: Next Year's Web
IWMW 1997: Next Year's WebIWMW
 
CSS Framework + Progressive Enhacements
CSS Framework + Progressive EnhacementsCSS Framework + Progressive Enhacements
CSS Framework + Progressive EnhacementsMario Hernandez
 
DataFrames: The Extended Cut
DataFrames: The Extended CutDataFrames: The Extended Cut
DataFrames: The Extended CutWes McKinney
 
Mobile Best Practices
Mobile Best PracticesMobile Best Practices
Mobile Best Practicesmintersam
 
University of Portsmouth Library: A practical approach to Responsive Design
University of Portsmouth Library: A practical approach to Responsive Design University of Portsmouth Library: A practical approach to Responsive Design
University of Portsmouth Library: A practical approach to Responsive Design Terminalfour
 
Web Accessibility for the 21st Century
Web Accessibility for the 21st CenturyWeb Accessibility for the 21st Century
Web Accessibility for the 21st Centurydreamwidth
 
MySQL Day Paris 2016 - MySQL as a Document Store
MySQL Day Paris 2016 - MySQL as a Document StoreMySQL Day Paris 2016 - MySQL as a Document Store
MySQL Day Paris 2016 - MySQL as a Document StoreOlivier DASINI
 

Ähnlich wie Building Webs Better (20)

Styling Your Web Pages with Cascading Style Sheets / EDU course / University ...
Styling Your Web Pages with Cascading Style Sheets / EDU course / University ...Styling Your Web Pages with Cascading Style Sheets / EDU course / University ...
Styling Your Web Pages with Cascading Style Sheets / EDU course / University ...
 
Web Accessibility Top 10 - LCC (1/2 day workshop, August 2013)
Web Accessibility Top 10 - LCC (1/2 day workshop, August 2013)Web Accessibility Top 10 - LCC (1/2 day workshop, August 2013)
Web Accessibility Top 10 - LCC (1/2 day workshop, August 2013)
 
Making Your Site Printable: CSS Summit 2014
Making Your Site Printable: CSS Summit 2014Making Your Site Printable: CSS Summit 2014
Making Your Site Printable: CSS Summit 2014
 
Introducing Cascading Style Sheets
Introducing Cascading Style SheetsIntroducing Cascading Style Sheets
Introducing Cascading Style Sheets
 
Introduction to HTML5 and CSS3 (revised)
Introduction to HTML5 and CSS3 (revised)Introduction to HTML5 and CSS3 (revised)
Introduction to HTML5 and CSS3 (revised)
 
Talk 03 responsive-web-design
Talk 03 responsive-web-designTalk 03 responsive-web-design
Talk 03 responsive-web-design
 
Html presentation
Html presentationHtml presentation
Html presentation
 
Building Faster Websites
Building Faster WebsitesBuilding Faster Websites
Building Faster Websites
 
Using a CSS Framework
Using a CSS FrameworkUsing a CSS Framework
Using a CSS Framework
 
Pertemuan 7
Pertemuan 7Pertemuan 7
Pertemuan 7
 
HTML5 on Mobile(For Designer)
HTML5 on Mobile(For Designer)HTML5 on Mobile(For Designer)
HTML5 on Mobile(For Designer)
 
HTML5 Accessibility
HTML5 AccessibilityHTML5 Accessibility
HTML5 Accessibility
 
IWMW 1997: Next Year's Web
IWMW 1997: Next Year's WebIWMW 1997: Next Year's Web
IWMW 1997: Next Year's Web
 
CSS Framework + Progressive Enhacements
CSS Framework + Progressive EnhacementsCSS Framework + Progressive Enhacements
CSS Framework + Progressive Enhacements
 
DataFrames: The Extended Cut
DataFrames: The Extended CutDataFrames: The Extended Cut
DataFrames: The Extended Cut
 
Mobile Best Practices
Mobile Best PracticesMobile Best Practices
Mobile Best Practices
 
University of Portsmouth Library: A practical approach to Responsive Design
University of Portsmouth Library: A practical approach to Responsive Design University of Portsmouth Library: A practical approach to Responsive Design
University of Portsmouth Library: A practical approach to Responsive Design
 
Geek basics
Geek basicsGeek basics
Geek basics
 
Web Accessibility for the 21st Century
Web Accessibility for the 21st CenturyWeb Accessibility for the 21st Century
Web Accessibility for the 21st Century
 
MySQL Day Paris 2016 - MySQL as a Document Store
MySQL Day Paris 2016 - MySQL as a Document StoreMySQL Day Paris 2016 - MySQL as a Document Store
MySQL Day Paris 2016 - MySQL as a Document Store
 

Kürzlich hochgeladen

Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 

Kürzlich hochgeladen (20)

Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 

Building Webs Better

  • 1. Building Webs Better Building Better Webs and Web Applications Organically David Eldridge Please feel free to use this document however you would like. Attribution is appreciated.
  • 2. Introduction • Shawnee County Webmaster – Support ASP.NET developers for specialized apps. – Maintain www.snco.us with HTML, CSS, JavaScript and legacy ASP • A Federal Webmaster (KSARNG/OSS) – Began learning standards/accessibility • Fed: Standards or Die! – Good beginning – I always use them [ 2 ]Please feel free to use this document however you would like. Attribution is appreciated.
  • 3. Overview • Introduction • Accessibility • SEO, Semantics, Separation and Standards • Performance Considerations • Return on Investment (ROI) • Questions and Housekeeping [ 3 ]Please feel free to use this document however you would like. Attribution is appreciated.
  • 4. Inseparability • SEO, semantics, access/accessibility, etc. are like yarn on a sweater: – Carefully interwoven – Indiscernibly separate • Separating these topics can be difficult Don’t do it: they work together well [ 4 ]Please feel free to use this document however you would like. Attribution is appreciated.
  • 5. Accessibility: Some Assumptions • Bad Word. • Very Expensive. • Low ROI. [ 5 ]Please feel free to use this document however you would like. Attribution is appreciated.
  • 6. Access: Not Just Accessibility What it’s not • Protection (against those with disabilities) What it is • UA-appropriate • Flexible • Free – Like speech – Like beer [ 6 ]Please feel free to use this document however you would like. Attribution is appreciated.
  • 7. Access: for People • Screen • Paper • Screen readers • Mobile/handheld/phone/PDA • Non-standard devices • DOM—etc. [ 7 ]Please feel free to use this document however you would like. Attribution is appreciated.
  • 8. Access: for Machines • Educational/Industrial Data mining • Search Engines • [Spam bots, too: sorry ] • DOM—etc. [ 8 ]Please feel free to use this document however you would like. Attribution is appreciated.
  • 9. Access: Document Object Model • Ad hoc API – Three simple examples: • Web Clips—Safari 3+ • Web Slices—IE8 (product site) – Requires some add’l coding • “FireClips”—FF3 (video|add-on) – Other capabilities available and coming [ 9 ]Please feel free to use this document however you would like. Attribution is appreciated.
  • 10. Access: DOM—Extensibility • It can be traversed, styled, destroyed, created, and appended to dynamically – JavaScript – Style: CSS/XSLT – Server-side code: • PHP and Ruby (on Rails) among others support this • In the future in Visual Studio? Don’t be surprised, but don’t hold your breath. [ 10 ]Please feel free to use this document however you would like. Attribution is appreciated.
  • 11. Access: User Interface • Offer users early access to the whole page: – e.g. “Go directly to content, or navigation.” • Hide it from screen and print devices, etc. • Offer it to mobile, non-standard devices, etc. • JavaScript is not everywhere. Consider your audience. [ 11 ]Please feel free to use this document however you would like. Attribution is appreciated.
  • 12. SEO, Semantics and Standards • Standards are BAD! Err…? – Help dumb people (like designers) to excel – Avoid Hard Knocks University – Level the playing field [ 12 ]Please feel free to use this document however you would like. Attribution is appreciated.
  • 13. SEO, Semantics and Standards Continued • W3C, WHATWG, Ecma Int’l, WaSP, etc. – Recognize trends – Codify standards – Educate and Inform Educators (mostly WaSP) – Empower developers – Guide browser makers… [ 13 ]Please feel free to use this document however you would like. Attribution is appreciated.
  • 14. SEO, Semantics and Standards Browser Changes • FF, Safari implementing Canvas and SVG • IE8, FF, Safari implementing <audio> and <video> elements (good and bad): – IE8/MS: MS formats  – Safari/Apple: QuickTime formats  – Firefox/Mozilla: Ogg formats  [ 14 ]Please feel free to use this document however you would like. Attribution is appreciated.
  • 15. SEO, Semantics and Standards Standards ‘Decouple’ Documents • Encourage document-level separation of – Markup/Content ([X]HTML) – Style (CSS/XSLT) – Behavior (JavaScript) [ 15 ]Please feel free to use this document however you would like. Attribution is appreciated.
  • 16. SEO, Semantics and Standards • Standards save work – <video>/<audio> v. non-standard <embed> – border-radius v. rounded corner JS/CSS/HTML mess – :hover v. old bloated hover image effect – CSS font declarations v. non-semantic <font> tag [ 16 ]Please feel free to use this document however you would like. Attribution is appreciated.
  • 17. SEO, Semantics and Standards • Standards add previously unrealized functionality – Microsoft’s XHR (XML HTTP Request): Now Ajax (or AJAX if you insist) – Microsoft’s JPEG XR (HD Photo, previously Windows Media Photo): Better compression for even larger image files, both lossy and lossless [ 17 ]Please feel free to use this document however you would like. Attribution is appreciated.
  • 18. Organic SEO How Standards and SEO Relate • Semantic tagging informs content – Good: head>title, h1, span.phone-number – Poor: font, small, big, b, i, blink • Metadata fills in the gaps with keywords, authorship, date and other information – Dublin Core metadata is a good framework [ 18 ]Please feel free to use this document however you would like. Attribution is appreciated.
  • 19. Organic SEO Continued • Consider: – <title>Banking Security • BankTwo</title> … <h1>Security Procedures</h1> • Or: – <title>BankTwo</title> … <span style="font-size:16px;color:#333333;font- family:georgia;display:block;">Security</span> [ 19 ]Please feel free to use this document however you would like. Attribution is appreciated.
  • 20. Semantics Informing Data • Framework for categorization and the DOM: – h1-h6, dl, dt, dd, ol, ul, li, dfn, abbr, p, address • Classes (and IDs) further augment good semantics – abbr.acronym, ol.contents, span.phone-work- voice, span.name-last, ul.ingredients, ol.instructions, div#content, div#footer- legal [ 20 ]Please feel free to use this document however you would like. Attribution is appreciated.
  • 21. Semantics Informing Data • Semantics help us and machines cull data: – Widgets: clips, slices etc. – Microformats like hCard, hCalendar, hAtom and hReview • Google now uses RDFa/hReview and hCard – You don’t need to pioneer these technologies • Google took years to jump on microformats • Firefox didn’t get over 20% market in a day • But folks are using these now • All 3 big browsers use Web Slices/Clips [ 21 ]Please feel free to use this document however you would like. Attribution is appreciated.
  • 22. Brass Tacks: Get out of Line: Use the DOM • Standards make using JavaScript, DOM scripting and Ajax easier and better – It eases maintenance • Less inline code – It keeps code legible… • Again, less incline code [ 22 ]Please feel free to use this document however you would like. Attribution is appreciated.
  • 23. Brass Tacks: Get out of Line: Use the DOM – It extends easily • Classes, ID’s and the DOM make good hooks for JS and style • At best, they require a script tag • More often they will also need more classes, ids and/or elements. – It fails well • Users don’t miss it when it’s gone (Everything still works) [ 23 ]Please feel free to use this document however you would like. Attribution is appreciated.
  • 24. Brass Tacks: JavaScript and Accessibility • Some users and UAs don’t see JavaScript fire: – Screen readers • Audibly indicating DOM-scripting and Ajax changes through screen readers is a booger. • Some UAs neglect it; others handle it poorly. – Those behind corporate firewalls – Some mobile UAs – Others with JS disabled (purposefully or not) [ 24 ]Please feel free to use this document however you would like. Attribution is appreciated.
  • 25. Semantics Cost and Value • Building sloppy code is cheap • Maintaining it isn’t: I know. • Inline style (and event handlers) create larger files, and make clean-up tedious • Semantics offer ad hoc documentation [ 25 ]Please feel free to use this document however you would like. Attribution is appreciated.
  • 26. Semantics Why Not? • Learning curve? – Yes. • Code Bloat? – No… Consider another simple example. [ 26 ]Please feel free to use this document however you would like. Attribution is appreciated.
  • 27. Semantics Why Not? • HTML3 and earlier – <table style="color:#555;background- color:#eee;border:1px #333;vertical- align:bottom; "…>…<tr><td style="text-align:right;font- family:consolas,'andale mono',mono;">785.555.1212</td></tr></ table> [ 27 ]Please feel free to use this document however you would like. Attribution is appreciated.
  • 28. Semantics Why Not? • HTML4, HTML5, XTHML – <table class="phone-chart"…>…<tr><td class="phone-work- fax">785.555.1212</td></tr></table> [ 28 ]Please feel free to use this document however you would like. Attribution is appreciated.
  • 29. Brass Tacks • Some practical implementation examples and ideas. [ 29 ]Please feel free to use this document however you would like. Attribution is appreciated.
  • 30. Brass Tacks: Character Encoding • Right after the head, even before <title>: – make sure the title and all after are properly encoded • It’s important for good data and security… – For display • You don’t want to see that. – For good capture and security: • especially with intérñatiönal users [ 31 ]Please feel free to use this document however you would like. Attribution is appreciated.
  • 31. Brass Tacks: Character Encoding • Unless you have particular needs use UTF-8 – <!DOCTYPE HTML…> <html lang="en-US"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>Hello, World</title> [ 32 ]Please feel free to use this document however you would like. Attribution is appreciated.
  • 32. Brass Tacks: JavaScript Bottlenecks • HTTP/1.1 allows multiple persistent connections. • Modern browsers load multiple resources (text, image, audio, etc.) at once: – Without manipulation, UAs don’t allow over two scripts to pull in at once. • When able, load scripts last (i.e. before </body>), or use the onload event handler (or similar device) to build your script request dynamically at full load. [ 33 ]Please feel free to use this document however you would like. Attribution is appreciated.
  • 33. Brass Tacks: CSS Bottlenecks • Make CSS external (usu. automatic in VS) – But if not, avoid using the @import command in <style> tags, as it causes problems with concurrent downloading in some browsers • Place it as soon after the title as possible: – <!doctype…>… <title>I am a title</title> <link rel="stylesheet"/> [ 34 ]Please feel free to use this document however you would like. Attribution is appreciated.
  • 34. Brass Tacks: More JS Considerations • Be aware of VS controls that generate non- standard mark-up: – e.g. ListBox, DropDownList, AdRotator and more. • As our DBA always reminds us, never trust the client (device). [ 35 ]Please feel free to use this document however you would like. Attribution is appreciated.
  • 35. Brass Tacks: More JS Considerations • The JS pseudo-protocol is not a protocol… • If you use it or inline event handlers with href="#", the event will not fire in some cases, leaving users bewildered. [ 36 ]Please feel free to use this document however you would like. Attribution is appreciated.
  • 36. Conclusion: ROI • Ease of extension • Value of data: content is more informed • Natural/Accidental/Organic SEO • Faster page loads/decreased server load • Greater user access/cullability [ 37 ]Please feel free to use this document however you would like. Attribution is appreciated.
  • 37. Conclusion: Last Things • I won’t be there to blame when your app fails – And, they’ll laugh at you for listening to a designer • Standards are usually optimal: but not always • Standards change: so don’t follow blindly • If they don’t help now, they may help later • Make your boss happy: the food will follow [ 38 ]Please feel free to use this document however you would like. Attribution is appreciated.
  • 38. Questions? • No? • Good. [ 39 ]Please feel free to use this document however you would like. Attribution is appreciated.
  • 39. Questions? [ 40 ]Please feel free to use this document however you would like. Attribution is appreciated.
  • 40. Contact • Please send any more questions to – david@wd2.us – 785.783.4755 – Google+ j.mp/rgum • For this presentation visit goo.gl/PmoDw [ 42 ]Please feel free to use this document however you would like. Attribution is appreciated.
  • 41. [ 43 ]Please feel free to use this document however you would like. Attribution is appreciated.