SlideShare une entreprise Scribd logo
1  sur  40
Télécharger pour lire hors ligne
DEN ODELL
AKQA
#TECHINSIGHT TECHINSIGHT.IO
One Web To Rule
Them All
@DENODELL
this print for content only—size & color not accurate spine = 0.844" 440 page count
BOOKS FOR PROFESSIONALS BY PROFESSIONALS®
Pro JavaScript RIA Techniques:
Best Practices, Performance, and Presentation
Dear Reader,
Many people are familiar with rich Internet applications (RIAs), those web sites
that blur the line between desktop software and the web browser. Applications
like webmail clients, photo editors, and social networking sites cross this
boundary. They feature intuitive, user-friendly interfaces, without the need for
page refreshes or other interruptions to the end user’s experience. It is widely
regarded that this type of web site will continue to grow in popularity.
I wrote this book to help web developers with some existing JavaScript skills suc-
cessfully create their own professional, visually rich, dynamic, and performance-
tuned RIAs. And following the guidelines in this book, you’ll be safe in the
knowledge that your code is built according to best practices, adhering to web
standards and accessibility guidelines.
In this book, I will show you how best to build a solid, maintainable foundation
of HTML, CSS, and JavaScript code for your RIAs, together with the Ajax techniques
needed to provide the dynamic communication between the browser and web
server behind the scenes. I will describe the performance limitations you may run
into when building your web applications and how best to overcome these. And
I’ll give you some tips for making your user interfaces feel more responsive, even
when you can’t get around the performance limitations.
You also will learn how to improve your RIA user interfaces by adding typo-
graphical headings using custom fonts, multimedia playback components,
customized form controls, and dynamic charting capabilities. Additionally,
I will demonstrate how to continue running your web applications when the
connection to the server is broken, how to use Ajax to read hidden data stored
within binary files, and how to ensure the highest level of accessibility within
your JavaScript web applications.
Den Odell
US $44.99
Shelve in
Web Development
User level:
Intermediate–Advanced
OdellProJavaScriptRIATechniques
THE EXPERT’S VOICE®
IN WEB DEVELOPMENT
Pro
JavaScript RIA
Techniques
Best Practices, Performance, and Presentation
CYAN
MAGENTA
YELLOW
BLACK
PANTONE 123 C
Den Odell
Companion
eBook Available
www.apress.com
SOURCE CODE ONLINE
Companion eBook
See last page for details
on $10 eBook version
Turn your JavaScript knowledge into beautiful,
dynamic, and performance-tuned rich Internet
applications
ISBN 978-1-4302-1934-7
9 781430 219347
5 4 4 9 9
RELATEDTITLES
DEN ODELL
HEAD OF WEB DEVELOPMENT, AKQA
Out
July
“Imagine a console in your office that will bring
the accumulated knowledge of the world to
your fingertips.”
Arthur C. Clarke, Popular Science, 1970
“You can get the data on some historical event,
or hear an illustrated lecture on any subject
you wish. Or you can hold an electronic
conference with any group of people scattered
all over the world, seeing each other as
you talk.”
Arthur C. Clarke, Popular Science, 1970
1993
“The web is an incredible democratiser. A
small company can look as large as a big
company and be as accessible as a big
company on the web.”
Steve Jobs, Wired Magazine, 1996
ACCESS THE WEB
ANYTIME, ANYPLACE,
ANYWHERE, ANYHOW.
ONE WEB
User Interface Varies Based On Device Characteristics
RESPONSIVE
Web
design
MULTIMODAL
INTERACTION
Multimodal Interaction
DATA STORE
SERVICES (RESTful)
WEB BROWSER iOS APP ANDROID APP
Multimodal Interaction
DATA STORE
SERVICES (RESTful)
MODALITY COMPONENT
INTERACTION MANAGER
MODALITY COMPONENT MODALITY COMPONENT
MULTIMODAL
INTERACTION
Bringing The User Interface To The User
INPUTS AND
OUTPUTS
Inputs
Inputs
InkML HTML5 Touch Events API VoiceXML
HTML5 Touch Events API HTML DOM Events API
Outputs
Outputs
HTML5 / CSS3
CSS Braille Media Type
VoiceXML / JavaScript Web
Speech API
HTML5 Vibration API
RESPONSIVE
Web
design
+ VoiceXML
RESPONSIVE
Web
design
Welcome to the ticket booking service. What
are you looking for - concert, conference, or
cinema tickets?
Welcome to the ticket booking service. What
are you looking for - concert, conference, or
cinema tickets?
Cinema tickets
Which film would you like to purchase tickets
for - White House Down, The Call, or About
Time?
Which film would you like to purchase tickets
for - White House Down, The Call, or About
Time?
The Call
OK, and which cinema should we book the
tickets for The Call at?
OK, and which cinema should we book the
tickets for The Call at?
The Odeon, Leicester Square
Great. We've now reserved you tickets to see
The Call at The Odeon, Leicester Square.
RESPONSIVE
Web
design
Bringing The User Interface To The User
TODAY
Voice Search
Native Apps
Voice Search
Native Apps
TOMORROW
StreamInput API
StreamInput API
EmotionML
ACCESS THE WEB
ANYTIME, ANYPLACE,
ANYWHERE, ANYHOW.
ONE WEB

Contenu connexe

Tendances

Website building 101 for Small Business
Website building 101 for Small BusinessWebsite building 101 for Small Business
Website building 101 for Small BusinessJacqueline Morgan
 
Web Site Design Principles
Web Site Design PrinciplesWeb Site Design Principles
Web Site Design PrinciplesMukesh Tekwani
 
Website Built Presentation
Website Built PresentationWebsite Built Presentation
Website Built PresentationKaran Patel
 
Different Types Of Websites - With Basic Information
Different Types Of Websites - With Basic InformationDifferent Types Of Websites - With Basic Information
Different Types Of Websites - With Basic InformationAfzal Hameed
 
Responsive Web Design helps SEO Boost up by XHTMLChamps
Responsive Web Design helps SEO Boost up by XHTMLChampsResponsive Web Design helps SEO Boost up by XHTMLChamps
Responsive Web Design helps SEO Boost up by XHTMLChampsXHTML Champs
 
Designing for The Modern Web
Designing for The Modern WebDesigning for The Modern Web
Designing for The Modern WebSara Cannon
 
Wordpress Websites
Wordpress WebsitesWordpress Websites
Wordpress Websitespaddyo
 
Handy Resources for Developing a WordPress Website
Handy Resources for Developing a WordPress WebsiteHandy Resources for Developing a WordPress Website
Handy Resources for Developing a WordPress WebsiteXHTML Champs
 
Seven Steps To Better JavaScript
Seven Steps To Better JavaScriptSeven Steps To Better JavaScript
Seven Steps To Better JavaScriptDen Odell
 
What is JavaScript? Edureka
What is JavaScript? EdurekaWhat is JavaScript? Edureka
What is JavaScript? EdurekaEdureka!
 
Using the Tools of Web 2.0 for Marketing
Using the Tools of Web 2.0 for MarketingUsing the Tools of Web 2.0 for Marketing
Using the Tools of Web 2.0 for MarketingAndreCharland
 
Difference between-web-designing-and-web-development
Difference between-web-designing-and-web-developmentDifference between-web-designing-and-web-development
Difference between-web-designing-and-web-developmentGlobal Media Insight
 
All The Screens: Cross Platform Design Strategies
All The Screens: Cross Platform Design StrategiesAll The Screens: Cross Platform Design Strategies
All The Screens: Cross Platform Design StrategiesTheresa Neil
 
Hci 590 Content Management Systems Week1 090330
Hci 590 Content Management Systems   Week1 090330Hci 590 Content Management Systems   Week1 090330
Hci 590 Content Management Systems Week1 090330bhenkel
 
Net2Vic: Resolving the Design & Content Challenge: Automated and Curated News...
Net2Vic: Resolving the Design & Content Challenge: Automated and Curated News...Net2Vic: Resolving the Design & Content Challenge: Automated and Curated News...
Net2Vic: Resolving the Design & Content Challenge: Automated and Curated News...NetSquared Victoria
 
Connecting Rural Communities
Connecting Rural CommunitiesConnecting Rural Communities
Connecting Rural Communitieswebhostingguy
 
webOS: The Web? We Haz It.
webOS: The Web? We Haz It.webOS: The Web? We Haz It.
webOS: The Web? We Haz It.Dave Balmer
 

Tendances (20)

Website building 101 for Small Business
Website building 101 for Small BusinessWebsite building 101 for Small Business
Website building 101 for Small Business
 
Web Site Design Principles
Web Site Design PrinciplesWeb Site Design Principles
Web Site Design Principles
 
Website Built Presentation
Website Built PresentationWebsite Built Presentation
Website Built Presentation
 
Different Types Of Websites - With Basic Information
Different Types Of Websites - With Basic InformationDifferent Types Of Websites - With Basic Information
Different Types Of Websites - With Basic Information
 
Responsive Web Design helps SEO Boost up by XHTMLChamps
Responsive Web Design helps SEO Boost up by XHTMLChampsResponsive Web Design helps SEO Boost up by XHTMLChamps
Responsive Web Design helps SEO Boost up by XHTMLChamps
 
Designing for The Modern Web
Designing for The Modern WebDesigning for The Modern Web
Designing for The Modern Web
 
Wordpress Websites
Wordpress WebsitesWordpress Websites
Wordpress Websites
 
Handy Resources for Developing a WordPress Website
Handy Resources for Developing a WordPress WebsiteHandy Resources for Developing a WordPress Website
Handy Resources for Developing a WordPress Website
 
Website vs web app
Website vs web appWebsite vs web app
Website vs web app
 
Seven Steps To Better JavaScript
Seven Steps To Better JavaScriptSeven Steps To Better JavaScript
Seven Steps To Better JavaScript
 
What is JavaScript? Edureka
What is JavaScript? EdurekaWhat is JavaScript? Edureka
What is JavaScript? Edureka
 
Using the Tools of Web 2.0 for Marketing
Using the Tools of Web 2.0 for MarketingUsing the Tools of Web 2.0 for Marketing
Using the Tools of Web 2.0 for Marketing
 
Difference between-web-designing-and-web-development
Difference between-web-designing-and-web-developmentDifference between-web-designing-and-web-development
Difference between-web-designing-and-web-development
 
All The Screens: Cross Platform Design Strategies
All The Screens: Cross Platform Design StrategiesAll The Screens: Cross Platform Design Strategies
All The Screens: Cross Platform Design Strategies
 
Webpage and ict
Webpage and ictWebpage and ict
Webpage and ict
 
Hci 590 Content Management Systems Week1 090330
Hci 590 Content Management Systems   Week1 090330Hci 590 Content Management Systems   Week1 090330
Hci 590 Content Management Systems Week1 090330
 
Net2Vic: Resolving the Design & Content Challenge: Automated and Curated News...
Net2Vic: Resolving the Design & Content Challenge: Automated and Curated News...Net2Vic: Resolving the Design & Content Challenge: Automated and Curated News...
Net2Vic: Resolving the Design & Content Challenge: Automated and Curated News...
 
Connecting Rural Communities
Connecting Rural CommunitiesConnecting Rural Communities
Connecting Rural Communities
 
Blazedream ppt
Blazedream pptBlazedream ppt
Blazedream ppt
 
webOS: The Web? We Haz It.
webOS: The Web? We Haz It.webOS: The Web? We Haz It.
webOS: The Web? We Haz It.
 

Similaire à One Web To Rule Them All

Building a Strong Online Presence: The Essentials of Full Web Development
Building a Strong Online Presence: The Essentials of Full Web DevelopmentBuilding a Strong Online Presence: The Essentials of Full Web Development
Building a Strong Online Presence: The Essentials of Full Web DevelopmentThe Fabcode IT Solutions LLP
 
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code Camp
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code CampDoing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code Camp
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code CampChris Love
 
Web & Mobile 2020_LaSoft.pdf
Web & Mobile 2020_LaSoft.pdfWeb & Mobile 2020_LaSoft.pdf
Web & Mobile 2020_LaSoft.pdfLaSoft
 
Technology stack behind Airbnb
Technology stack behind Airbnb Technology stack behind Airbnb
Technology stack behind Airbnb Rohan Khude
 
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise
Doing Modern Web, aka JavaScript and HTML5 in the EnterpriseDoing Modern Web, aka JavaScript and HTML5 in the Enterprise
Doing Modern Web, aka JavaScript and HTML5 in the EnterpriseChris Love
 
ppt of web designing and development
ppt of web designing and developmentppt of web designing and development
ppt of web designing and development47ishu
 
ppt-190816105541 (2).pdf
ppt-190816105541 (2).pdfppt-190816105541 (2).pdf
ppt-190816105541 (2).pdfRamCharan481900
 
Web 2.0 Tech Talk
Web 2.0 Tech TalkWeb 2.0 Tech Talk
Web 2.0 Tech Talkpooyad
 
The Guide to Website Development for Beginners.pdf
The Guide to Website Development for Beginners.pdfThe Guide to Website Development for Beginners.pdf
The Guide to Website Development for Beginners.pdfConnect Solutions
 
Confluence State Of The Union 2009
Confluence State Of The Union 2009Confluence State Of The Union 2009
Confluence State Of The Union 2009Atlassian
 
LATEST_TRENDS_IN_WEBSITE_DEVELOPMENT.pptx
LATEST_TRENDS_IN_WEBSITE_DEVELOPMENT.pptxLATEST_TRENDS_IN_WEBSITE_DEVELOPMENT.pptx
LATEST_TRENDS_IN_WEBSITE_DEVELOPMENT.pptxchitrachauhan21
 
Top 10 Best Web Development Technologies
Top 10 Best Web Development TechnologiesTop 10 Best Web Development Technologies
Top 10 Best Web Development TechnologiesAjayMishra302670
 
Centric - PWA WebCast
Centric - PWA WebCastCentric - PWA WebCast
Centric - PWA WebCastTimmy Kokke
 

Similaire à One Web To Rule Them All (20)

Building a Strong Online Presence: The Essentials of Full Web Development
Building a Strong Online Presence: The Essentials of Full Web DevelopmentBuilding a Strong Online Presence: The Essentials of Full Web Development
Building a Strong Online Presence: The Essentials of Full Web Development
 
website
website website
website
 
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code Camp
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code CampDoing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code Camp
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code Camp
 
Web & Mobile 2020_LaSoft.pdf
Web & Mobile 2020_LaSoft.pdfWeb & Mobile 2020_LaSoft.pdf
Web & Mobile 2020_LaSoft.pdf
 
LaSoft
LaSoftLaSoft
LaSoft
 
Technology stack behind Airbnb
Technology stack behind Airbnb Technology stack behind Airbnb
Technology stack behind Airbnb
 
41218
4121841218
41218
 
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise
Doing Modern Web, aka JavaScript and HTML5 in the EnterpriseDoing Modern Web, aka JavaScript and HTML5 in the Enterprise
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise
 
ppt of web designing and development
ppt of web designing and developmentppt of web designing and development
ppt of web designing and development
 
ppt-190816105541 (2).pdf
ppt-190816105541 (2).pdfppt-190816105541 (2).pdf
ppt-190816105541 (2).pdf
 
Intel AppUp Day Bologna
Intel AppUp Day BolognaIntel AppUp Day Bologna
Intel AppUp Day Bologna
 
Web 2.0 Tech Talk
Web 2.0 Tech TalkWeb 2.0 Tech Talk
Web 2.0 Tech Talk
 
Web technologies
Web technologiesWeb technologies
Web technologies
 
The Guide to Website Development for Beginners.pdf
The Guide to Website Development for Beginners.pdfThe Guide to Website Development for Beginners.pdf
The Guide to Website Development for Beginners.pdf
 
Confluence State Of The Union 2009
Confluence State Of The Union 2009Confluence State Of The Union 2009
Confluence State Of The Union 2009
 
LATEST_TRENDS_IN_WEBSITE_DEVELOPMENT.pptx
LATEST_TRENDS_IN_WEBSITE_DEVELOPMENT.pptxLATEST_TRENDS_IN_WEBSITE_DEVELOPMENT.pptx
LATEST_TRENDS_IN_WEBSITE_DEVELOPMENT.pptx
 
Bazar4 student
Bazar4 studentBazar4 student
Bazar4 student
 
Top 10 Best Web Development Technologies
Top 10 Best Web Development TechnologiesTop 10 Best Web Development Technologies
Top 10 Best Web Development Technologies
 
Centric - PWA WebCast
Centric - PWA WebCastCentric - PWA WebCast
Centric - PWA WebCast
 
2012-07-24: Accessibility On The Web
2012-07-24: Accessibility On The Web2012-07-24: Accessibility On The Web
2012-07-24: Accessibility On The Web
 

Dernier

Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdfChristopherTHyatt
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
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 WorkerThousandEyes
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 

Dernier (20)

Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
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
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 

One Web To Rule Them All

  • 2. @DENODELL this print for content only—size & color not accurate spine = 0.844" 440 page count BOOKS FOR PROFESSIONALS BY PROFESSIONALS® Pro JavaScript RIA Techniques: Best Practices, Performance, and Presentation Dear Reader, Many people are familiar with rich Internet applications (RIAs), those web sites that blur the line between desktop software and the web browser. Applications like webmail clients, photo editors, and social networking sites cross this boundary. They feature intuitive, user-friendly interfaces, without the need for page refreshes or other interruptions to the end user’s experience. It is widely regarded that this type of web site will continue to grow in popularity. I wrote this book to help web developers with some existing JavaScript skills suc- cessfully create their own professional, visually rich, dynamic, and performance- tuned RIAs. And following the guidelines in this book, you’ll be safe in the knowledge that your code is built according to best practices, adhering to web standards and accessibility guidelines. In this book, I will show you how best to build a solid, maintainable foundation of HTML, CSS, and JavaScript code for your RIAs, together with the Ajax techniques needed to provide the dynamic communication between the browser and web server behind the scenes. I will describe the performance limitations you may run into when building your web applications and how best to overcome these. And I’ll give you some tips for making your user interfaces feel more responsive, even when you can’t get around the performance limitations. You also will learn how to improve your RIA user interfaces by adding typo- graphical headings using custom fonts, multimedia playback components, customized form controls, and dynamic charting capabilities. Additionally, I will demonstrate how to continue running your web applications when the connection to the server is broken, how to use Ajax to read hidden data stored within binary files, and how to ensure the highest level of accessibility within your JavaScript web applications. Den Odell US $44.99 Shelve in Web Development User level: Intermediate–Advanced OdellProJavaScriptRIATechniques THE EXPERT’S VOICE® IN WEB DEVELOPMENT Pro JavaScript RIA Techniques Best Practices, Performance, and Presentation CYAN MAGENTA YELLOW BLACK PANTONE 123 C Den Odell Companion eBook Available www.apress.com SOURCE CODE ONLINE Companion eBook See last page for details on $10 eBook version Turn your JavaScript knowledge into beautiful, dynamic, and performance-tuned rich Internet applications ISBN 978-1-4302-1934-7 9 781430 219347 5 4 4 9 9 RELATEDTITLES DEN ODELL HEAD OF WEB DEVELOPMENT, AKQA Out July
  • 3. “Imagine a console in your office that will bring the accumulated knowledge of the world to your fingertips.” Arthur C. Clarke, Popular Science, 1970
  • 4. “You can get the data on some historical event, or hear an illustrated lecture on any subject you wish. Or you can hold an electronic conference with any group of people scattered all over the world, seeing each other as you talk.” Arthur C. Clarke, Popular Science, 1970
  • 6. “The web is an incredible democratiser. A small company can look as large as a big company and be as accessible as a big company on the web.” Steve Jobs, Wired Magazine, 1996
  • 7. ACCESS THE WEB ANYTIME, ANYPLACE, ANYWHERE, ANYHOW.
  • 9. User Interface Varies Based On Device Characteristics RESPONSIVE Web design
  • 11. Multimodal Interaction DATA STORE SERVICES (RESTful) WEB BROWSER iOS APP ANDROID APP
  • 12. Multimodal Interaction DATA STORE SERVICES (RESTful) MODALITY COMPONENT INTERACTION MANAGER MODALITY COMPONENT MODALITY COMPONENT
  • 16. Inputs InkML HTML5 Touch Events API VoiceXML HTML5 Touch Events API HTML DOM Events API
  • 18. Outputs HTML5 / CSS3 CSS Braille Media Type VoiceXML / JavaScript Web Speech API HTML5 Vibration API
  • 21.
  • 22.
  • 23.
  • 24. Welcome to the ticket booking service. What are you looking for - concert, conference, or cinema tickets?
  • 25. Welcome to the ticket booking service. What are you looking for - concert, conference, or cinema tickets? Cinema tickets
  • 26. Which film would you like to purchase tickets for - White House Down, The Call, or About Time?
  • 27. Which film would you like to purchase tickets for - White House Down, The Call, or About Time? The Call
  • 28. OK, and which cinema should we book the tickets for The Call at?
  • 29. OK, and which cinema should we book the tickets for The Call at? The Odeon, Leicester Square
  • 30. Great. We've now reserved you tickets to see The Call at The Odeon, Leicester Square.
  • 32. TODAY
  • 39. ACCESS THE WEB ANYTIME, ANYPLACE, ANYWHERE, ANYHOW.

Notes de l'éditeur

  1. I’m going to cover open standards, connected user interfaces, and a concept known as “One Web”.
  2. I love talking and writing about JavaScript.
  3. Let’s start by travelling back in time a few years… The concept of the web was envisioned by science fiction writers long before it came into existence. Here’s a quote from 1970 by Arthur C. Clarke, co-writer of “2001: A Space Odyssey”, in an article in Popular Science magazine at the time. - He’s predicting the democratisation of information and the opportunities that live-connected collaboration can bring.
  4. Let’s start by travelling back in time a few years… The concept of the web was envisioned by science fiction writers long before it came into existence. Here’s a quote from 1970 by Arthur C. Clarke, co-writer of “2001: A Space Odyssey”, in an article in Popular Science magazine at the time. - He’s predicting the democratisation of information and the opportunities that live-connected collaboration can bring.
  5. The first web browser was created in 1990, 24 years ago, but the first web browser that resembles what we still have today was released three years later - it was called Mosaic. It made the world wide web accessible to the general public and became popular from its launch date in 1993, fulfilling Arthur C Clarke’s prediction from 23 years before. It was the first web browser to show images and text together on a single page - other browsers of the time showed images in secondary windows, away from the page text - and it contains many features still present in today’s browsers. Developers from the Mosaic team later went on to create a similar-looking second web browser the following year, called Netscape, the code of which became the foundation of Firefox.
  6. Here’s a quote from Steve Jobs, co-founder of Apple, which was made in 1996, three years after Mosaic was released. - As well as the democratisation of information predicted by Arthur C. Clarke, it was becoming clear that the web was also going to democratise the ability for new businesses to flourish, enabling them to present themselves on a level playing field with the larger players.
  7. Arthur C. Clarke’s vision of a console sitting in an office is obviously familiar to us now, but also feels slightly dated as mobile devices are replacing stationary devices in popularity, bringing access to the same information and collaboration, wherever we are. To be the democratising force it is for everyone, everywhere, I believe the web needs to be truly ubiquitous, not just in terms of data connections needed to access it, but also in terms of user interfaces - as these are the connection point between the user and the underlying system. It’s no use if web access is only possible for those who are computer literate, or those who are able-bodied enough, or even rich enough, to be able to use the devices we choose to build our sites and applications for.
  8. This principle of a web built on open standards that works for everyone, everywhere, and at all times, has been termed “One Web” by the W3C, the standards body behind the technologies that make the web work.
  9. Responsive Web Design is one technique for adapting the layout and style of a web page or application based on characteristics of the device it’s being viewed upon, such as that device’s screen size or aspect ratio. When I consider the current state of Responsive Design, I think we’re making good progress on this road towards “One Web”, but I can’t help but feel we’re just getting started, barely scratching the surface of what needs to be done. To offer our sites, services and applications to everybody, everywhere involves the need to not only tailor and adapt the user interface we already have, but also to augment them or to add entirely new interfaces where it makes most sense.
  10. The technical architecture definition behind the One Web vision is known as Multimodal Interaction, another term coined by the W3C.
  11. This diagram shows how the architecture of a typical data-driven web site or app might be envisioned, with a data store accessed only by a set of RESTful Web Services which are, in turn, accessed over HTTP by one or more user interfaces, such as a browser or a native app. In Multimodal Interaction, a site’s underlying data and services are treated as entirely distinct from a potential multitude of user interfaces built on top.
  12. In the Multimodal system, these user interfaces are known as “modality components”, of which the web browser is just one. These interfaces should each be built using open web standards, and separated from the web services layer by a controller system known as an “interaction manager”. This allows the end user to select, or be presented, the most appropriate user interface according to their context, needs, abilities, or preferences. This interaction manager also normalises the inputs from different forms of user interface into a single, unified format, called EMMA (the Extensible MultiModal Annotation markup language), simplifying the transferal of data down to the web services layer.
  13. The whole point of this MultiModal Interaction architecture, is so that we can bring the user interface right to the user wherever they are, and whatever their needs. This is in stark contrast to enforcing a single web site as the only means for them to interact with your service. The user is free to chose what works best for them, rather than accept a restricted set of access conditions imposed upon them.
  14. The reason for building multiple user interfaces is to support the widest variety of input and output devices, where different underlying markup languages are often required to construct these interfaces.
  15. In a multimodal world, depending upon the device, users will be able to interact with online services, providing input via speech, handwriting, touchscreens, clicks, keystrokes or gestures.
  16. The W3C provide open standards for accessing data from these input types, including: - InkML, for transmitting handwriting and other pen-based inputs, including mathematical drawings which can’t be input in a convenient way by any other means - VoiceXML, for use with a voice server to access and process spoken commands - HTML5 TouchEvents API, which allows access to single or multiple touches, and gestures, on a touch surface - HTML DOM events API, allowing keyboard and mouse control over web applications
  17. In the Multimodal system, outputs can be presented via displays, pre-recorded and synthetic speech, audio, and tactile mechanisms such as mobile phone vibration and Braille strips.
  18. We’re already very familiar with open web standards HTML5 and CSS3 for creating a user interface, but we have emerging standards and support for the HTML5 Vibration API, allowing us to alert our users through specially synchronised vibration patterns, and the JavaScript Web Speech API is also gaining traction, with support already in Google Chrome, allowing us to perform speech recognition on the fly through web pages.
  19. A well-crafted responsive web site, built using HTML5 and CSS3, already allows us to present an appropriate user interface based on device, albeit only within the context of a web browser and only within a very narrow set of parameters and requiring specific, modern devices to work correctly. Let’s imagine two “modality components”, one a responsive web site built with HTML5 and CSS3, and another built on top of the same web services but using VoiceXML. So it’s ideally suited to phone access, literally enabling you to “dial-a-site”.
  20. Imagine an online ticket booking system. In addition to a responsive web site, why not create a VoiceXML document driven by the same set of data, and connect it to a voice server to provide an automated speech interface to this same system via telephone or some future in-car dashboard system?
  21. The responsive web site ‘modality component’ is simple enough to realise, using HTML5 and CSS3, but how might the VoiceXML document look...
  22. The user dials up the voice server which uses this VoiceXML document like a script, asking questions of the user, collecting their answers and adapting follow-up questions to gather all the necessary information to then use to book the tickets via the underlying web service. Let’s take a closer look at the XML structure...
  23. The <field> tag in VoiceXML denotes that we wish to get some information from the user. The <prompt> tag then describes the question that should then be spoken out loud to the user, asking for their response. In this case, I define a <grammar> rule for the response I’m expecting to hear, with a pre-defined list of the three responses I’m after here. Further down, I can provide a <noinput> tag which allows me to let the user know they were expected to provide an input, or if they did, that they were too quiet and we couldn’t make it out. I can also provide a <nomatch> tag, which will be read out to the user if the response they provided didn’t match the three items I expected to hear. So let’s hear how this might sound...
  24. Notice how we’re able to use the answers from previous questions to populate further, more probing questions, in order to get all the necessary information from the user.
  25. Obviously you can see how we can take this further, asking more detailed questions about the number of tickets, and the time of the film showing, but this example is just to prove the point of the simplicity of this type of voice-driven user interface.
  26. Alongside the obvious accessibility benefits of multimodal interaction, it’s really about bringing the user interface to the user wherever they are by considering the inputs and outputs different groups of users might need. In fact, by adding an extra user interface controlled only by voice, not only do our users not need access to a computer, smartphone or tablet, we can also eradicate the need for computer literacy (or hands!) as a prerequisite for accessing a website or application. Suddenly our user base can grow to those unfamiliar with computers and modern technology, or those without the necessary motor skills to operate a computing or mobile device. This is a big deal and brings us a lot closer to the democratisation of information and services promised by the connected web platform.
  27. So where are we at right now and how far away are we from the “One Web” goal?
  28. We have native apps for mobile and desktop operating systems, and voice-activated services such as Apple Siri and Google Voice Search, and these are great, they point the way to the future in this area. However these often involve using proprietary technologies to develop, which ends up being time consuming for developers and costly for businesses to produce. We could use a technology like PhoneGap to harness HTML and CSS for development of native mobile apps, but these rarely provide the same feature set or give good enough performance to warrant a straight like-for-like replacement. (cont...)
  29. Mozilla’s Firefox OS is a fairly new player to the smartphone market, but allows developers to write native apps in HTML5, CSS3 and JavaScript, bucking the trend for proprietary software, SDKs and tools. Microsoft, too, allow apps to be written using these technologies, in addition to their proprietary technologies, for Windows Phone. I believe Mozilla, and to some extent Microsoft, are showing us the road we should all follow - we need to embrace open web standards such as HTML5, CSS3, VoiceXML, InkML and others proposed by the W3C to provide the best and most easily-connected future for our users within the world wide web.
  30. What other advances are on their way which could bring us closer towards realising the “One Web” vision?
  31. The Khronos group, who are known as the creators of the OpenGL and WebGL standards for programming 3D graphics in games, are working with a number of partners on the creation of a new standard API, which they’re calling StreamInput, for accessing the data from any type of sensor through a single, common coding interface. They’ve given themselves a 12 month target to release a first version of the API. Using this, developers could access touches on a screen, or pen-based writing on a tablet, just as easily as voice commands through a microphone or hand and body gestures through a camera. (cont...)
  32. It’ll also give access to other sensors we’ve been able to access for some time, such device compass, accelerometer, and geolocation. We’re living in a world where the number of means of inputting data to a device is growing rapidly. Take Google Glass for example, which features head and eye motion detection, as well as a touch panel on the side. Having a single standardised API for accessing the data from any input, including new types, would be a godsend for us developers over the next few years.
  33. The W3C are hard at work too, attempting to establish a common markup language format for transmitting and receiving information about emotion, which they’re calling EmotionML. Being able to detect, define, and accurately represent emotions might give us the ability to adapt our user interfaces based on a customer’s reaction or mood. If we can detect frustration, we can pop up an automated help service on screen. We could also track what parts of our site cause the most happiness and focus on those aspects in future updates. It could even mean the end to annoying customer survey popups if we can instantly establish and communicate the user’s mood at any time in the process of using our site.
  34. In summary... To be the democratising force it is for everyone, everywhere, I believe the web needs to be truly ubiquitous, not just in terms of data connections needed to access it, but also in terms of user interfaces - as these are the connection point between the user and the underlying system. It’s no use if access is only possible for those who are computer literate, or those who are able-bodied enough, or even rich enough, to be able to use the devices we choose to build our web sites and applications for.
  35. Take the time to study the sites and connected applications you are personally responsible for, ensure your data is accessible through services that aren’t directly tied into a user interface, then start to envision how you might use open, standard web technologies now and in the future to create user interfaces that reach users where they are according to their personal context, needs, abilities, or preferences. It’s time to consider about the world outside the web browser, moving on from Arthur C Clarke’s fixed “console in an office”, and bring about the “One Web” future that’s built around the user, not their device.