SlideShare a Scribd company logo
the web
as it should be
Martin Beeby - @thebeebs
paving the
way to the
end user
Hotbed of innovation
World of standards
Ever-closer user experiences
in the beginning…


mosaic   netscape navigator   internet explorer v1
1993                          August 1995
2001                      a space odyssey
Internet Explorer 6 - Microsoft won the Web (or so they thought)
http://www.youtube.com/watch?v=Gp-FQN_v3AM
we all
make
mistakes
the rise
of the
competition
Amazing browsers
came on-line

Microsoft had a long
journey to catch up
the journey so far
March 2011
Internet Explorer 9
 Great browser
 Constant development
 momentum
 Eight-week beta-launch cycles
 Faster launch cadence
innovate or die
standards-based
browsing
HTML5
W3C:
Sixteen full-time employees
Most test cases submitted
around 1,700

But we still innovate
smallest chrome
bringing users closer
web sites as
applications
                Fully-fledged Applications
                HTML5
                CSS3
                Standards-based Web technologies

               IE10 is a
               distinct application
               delivery platform
just some of the new
html5 features…
Animation Frames               CSS Positioned Floats (Exclusions)   FormData                     Page Visibility
CSS3 2d Transforms             CSS Selectors                        HTML5 Application Cache      Pointer (Mouse, Pen and Touch)
CSS 3d Transforms              CSS Transitions                      HTML5 async                  Events
CSS3 Animations                CSS Values and Units                 HTML5 Canvas                 Resource Timing
CSS3 Backgrounds and Borders   Data URI                             HTML5 Drag and drop          Selectors API Level 2
CSS Color                      DOM Element Traversal                HTML5 Forms and Validation   SVG Filter Effects
CSS FlexBox                    DOM HTML                             HTML5 Geolocation            SVG Inline
CSS Fonts                      DOM Level 3 Core                     HTMl5 History API            Timing Callbacks
CSS Grid Alignment             Dom Level 3 Events                   HTML5 Parser                 Web Messaging
CSS Hyphenation                DOM Style                            HTML5 Sandbox                Web Sockets
CSS Image Values (gradients)   DOM Traversal and Range              HTML5 Selectors              Web Workers
CSS Media Queries              DOMParser and XMLSerializer          HTML5 semantic elements      XHTML5/XML
CSS multi-column layout        ECMAScript 5                         HTML5 Video and Audio        XMLHttpRequest (Level 2)
CSS Namespaces                 File Reader API                      ICC Colour Profiles
CSS OM Views                   File Saving                          IndexedDB
cookbook
demo
off-line access
benefits
           applications work correctly

           at all times
             User-generated data can
             be stored off-line

             Improved overall performance
             by spreading the load
             between the cloud and client
appcache
creation flow
                       caches
                     resources
                       locally
 First run fetches               Later runs fetch
 info from network               info from cache
appcache
how it works
Behind the scenes after Web content displayed
Manifest file specifies resource URIs to cache
Cache only created if all resources are downloaded
Easy-update of manifest file to update target cache content
Applications can access cached resources using URLs and URIs
appcache
  vs         Guaranteed availability of

  http       cached resources

             Correct off-line resolution of URLs

caching    http caching can optimise
           appcache behaviour
indexed db
indexed db
vs relational db
Concept                              Relational DB                                     IndexedDB
Database                             Database                                          Database

Tables                               Tables contain columns and rows                   objectStore contains Javascript objects and keys

Query Mechanism, Join, and Filters   SQL                                               Cursor APIs, Key Range APIs, and Application Code

Transaction Types and Locks          Lock can happen on databases, tables,             Lock can happen on database on VERSION_CHANGE
                                     or rows on READ_WRITE Transactions                transaction, on an objectStores on READ_ONLY and
                                                                                       READ_WRITE transactions. There is no object level locking.

Transaction Commits                  Transaction creation is explicit. Default is to   Transaction creation is explicit. Default is to commit unless I call
                                     rollback unless I call commit.                    abort or there is an exception that is not caught.

Property Lookups                     SQL                                               Indexes are required to query object properties directly

Records/Data                         Normal form and single valued properties          De-normal form and can have multi-valued properties
indexed db
how it works
var oRequestDB = window.indexedDB.open("Library");
oRequestDB.onsuccess = function (event) {
    db1 = oRequestDB.result;
    if (db1.version == 1) {
         txn = db1.transaction(["Books"], IDBTransaction.READ_ONLY);
         var objStoreReq = txn.objectStore( "Books");
         var request = objStoreReq.get("Book0");
         request.onsuccess = processGet;
    }
};
indexed db
benefits
Optimised way of querying data objects
Website access to large amounts of related data
Data filtering using KeyRange objects
“Master” cloud and local IndexedDB database architecture
Faster searches
Off-line data access
websockets
and xhr
benefits
            Better off-line application
            performance

            Improved user stickiness
            to the application

           greater opportunity
           for your business
web
application
user
experience
the
beauty
of html5
achieving browser
invisibility
real world
www.beautyoftheweb.co.uk
                           Showcase of sites using
                           HTML5
test drive
http://ie.microsoft.com/testdrive/


                                     download
                                     Internet Explorer 10 preview

                                     Example applications

                                     http://dev.windows.com
the web
as it should be
W3C standards-based: HTML5, CSS3, Web-browsers
Application delivery platform
Compelling end-user experiences
Driven by innovation
contact
martin beeby
@thebeebs
http://www.ubelly.com/html5
martin.beeby@microsoft.com

More Related Content

What's hot

Web components
Web componentsWeb components
Web componentsNoam Kfir
 
Microsoft SQL Server 2008
Microsoft SQL Server 2008Microsoft SQL Server 2008
Microsoft SQL Server 2008Hossein Zahed
 
Mike Taulty DevDays 2010 Silverlight 4 - What's New Part 1
Mike Taulty DevDays 2010 Silverlight 4 - What's New Part 1Mike Taulty DevDays 2010 Silverlight 4 - What's New Part 1
Mike Taulty DevDays 2010 Silverlight 4 - What's New Part 1ukdpe
 
Office 2013 loves web developers slide
Office 2013 loves web developers   slideOffice 2013 loves web developers   slide
Office 2013 loves web developers slideFabio Franzini
 
Client Object Model - SharePoint Extreme 2012
Client Object Model - SharePoint Extreme 2012Client Object Model - SharePoint Extreme 2012
Client Object Model - SharePoint Extreme 2012daniel plocker
 
Building RESTfull Data Services with WebAPI
Building RESTfull Data Services with WebAPIBuilding RESTfull Data Services with WebAPI
Building RESTfull Data Services with WebAPIGert Drapers
 
SharePoint Saturday The Conference DC - How the bcs saved my marriage
SharePoint Saturday The Conference DC - How the bcs saved my marriageSharePoint Saturday The Conference DC - How the bcs saved my marriage
SharePoint Saturday The Conference DC - How the bcs saved my marriageLiam Cleary [MVP]
 
Introduction to SOAP/WSDL Web Services and RESTful Web Services
Introduction to SOAP/WSDL Web Services and RESTful Web ServicesIntroduction to SOAP/WSDL Web Services and RESTful Web Services
Introduction to SOAP/WSDL Web Services and RESTful Web Servicesecosio GmbH
 
Introduction to the SharePoint Client Object Model and REST API
Introduction to the SharePoint Client Object Model and REST APIIntroduction to the SharePoint Client Object Model and REST API
Introduction to the SharePoint Client Object Model and REST APIRob Windsor
 
jQuery programming with visual web part
jQuery programming with visual web partjQuery programming with visual web part
jQuery programming with visual web partSenthamil Selvan
 
Share point saturday presentation 9 29-2012-2
Share point saturday presentation 9 29-2012-2Share point saturday presentation 9 29-2012-2
Share point saturday presentation 9 29-2012-2Derek Gusoff
 
Asp.Net Abbreviations
Asp.Net AbbreviationsAsp.Net Abbreviations
Asp.Net AbbreviationsUmar Ali
 
SharePoint Saturday Utah - Do you claim to be from the Azure Sky?
SharePoint Saturday Utah - Do you claim to be from the Azure Sky?SharePoint Saturday Utah - Do you claim to be from the Azure Sky?
SharePoint Saturday Utah - Do you claim to be from the Azure Sky?Liam Cleary [MVP]
 
MongoDB SoCal 2020: Migrate Anything* to MongoDB Atlas
MongoDB SoCal 2020: Migrate Anything* to MongoDB AtlasMongoDB SoCal 2020: Migrate Anything* to MongoDB Atlas
MongoDB SoCal 2020: Migrate Anything* to MongoDB AtlasMongoDB
 
2014.06.25 State of the Web Development 2014
2014.06.25 State of the Web Development 20142014.06.25 State of the Web Development 2014
2014.06.25 State of the Web Development 2014Marco Parenzan
 
Developing and Hosting REST APIs 3.7
Developing and Hosting REST APIs 3.7Developing and Hosting REST APIs 3.7
Developing and Hosting REST APIs 3.7StephenKardian
 

What's hot (20)

Web components
Web componentsWeb components
Web components
 
Microsoft SQL Server 2008
Microsoft SQL Server 2008Microsoft SQL Server 2008
Microsoft SQL Server 2008
 
Mike Taulty DevDays 2010 Silverlight 4 - What's New Part 1
Mike Taulty DevDays 2010 Silverlight 4 - What's New Part 1Mike Taulty DevDays 2010 Silverlight 4 - What's New Part 1
Mike Taulty DevDays 2010 Silverlight 4 - What's New Part 1
 
Office 2013 loves web developers slide
Office 2013 loves web developers   slideOffice 2013 loves web developers   slide
Office 2013 loves web developers slide
 
Client Object Model - SharePoint Extreme 2012
Client Object Model - SharePoint Extreme 2012Client Object Model - SharePoint Extreme 2012
Client Object Model - SharePoint Extreme 2012
 
HTML5
HTML5HTML5
HTML5
 
Building RESTfull Data Services with WebAPI
Building RESTfull Data Services with WebAPIBuilding RESTfull Data Services with WebAPI
Building RESTfull Data Services with WebAPI
 
SharePoint Saturday The Conference DC - How the bcs saved my marriage
SharePoint Saturday The Conference DC - How the bcs saved my marriageSharePoint Saturday The Conference DC - How the bcs saved my marriage
SharePoint Saturday The Conference DC - How the bcs saved my marriage
 
Mongo db operations_v2
Mongo db operations_v2Mongo db operations_v2
Mongo db operations_v2
 
Introduction to SOAP/WSDL Web Services and RESTful Web Services
Introduction to SOAP/WSDL Web Services and RESTful Web ServicesIntroduction to SOAP/WSDL Web Services and RESTful Web Services
Introduction to SOAP/WSDL Web Services and RESTful Web Services
 
Introduction to the SharePoint Client Object Model and REST API
Introduction to the SharePoint Client Object Model and REST APIIntroduction to the SharePoint Client Object Model and REST API
Introduction to the SharePoint Client Object Model and REST API
 
jQuery programming with visual web part
jQuery programming with visual web partjQuery programming with visual web part
jQuery programming with visual web part
 
Jquery
JqueryJquery
Jquery
 
Share point saturday presentation 9 29-2012-2
Share point saturday presentation 9 29-2012-2Share point saturday presentation 9 29-2012-2
Share point saturday presentation 9 29-2012-2
 
Asp.Net Abbreviations
Asp.Net AbbreviationsAsp.Net Abbreviations
Asp.Net Abbreviations
 
SharePoint Saturday Utah - Do you claim to be from the Azure Sky?
SharePoint Saturday Utah - Do you claim to be from the Azure Sky?SharePoint Saturday Utah - Do you claim to be from the Azure Sky?
SharePoint Saturday Utah - Do you claim to be from the Azure Sky?
 
MongoDB SoCal 2020: Migrate Anything* to MongoDB Atlas
MongoDB SoCal 2020: Migrate Anything* to MongoDB AtlasMongoDB SoCal 2020: Migrate Anything* to MongoDB Atlas
MongoDB SoCal 2020: Migrate Anything* to MongoDB Atlas
 
Html5
Html5Html5
Html5
 
2014.06.25 State of the Web Development 2014
2014.06.25 State of the Web Development 20142014.06.25 State of the Web Development 2014
2014.06.25 State of the Web Development 2014
 
Developing and Hosting REST APIs 3.7
Developing and Hosting REST APIs 3.7Developing and Hosting REST APIs 3.7
Developing and Hosting REST APIs 3.7
 

Similar to The web as it should be

ArcReady - Architecting For The Cloud
ArcReady - Architecting For The CloudArcReady - Architecting For The Cloud
ArcReady - Architecting For The CloudMicrosoft ArcReady
 
Server-side Web development via Ruby on Rails
Server-side Web development via Ruby on RailsServer-side Web development via Ruby on Rails
Server-side Web development via Ruby on Railsg3ppy
 
Beginners' guide to Ruby on Rails
Beginners' guide to Ruby on RailsBeginners' guide to Ruby on Rails
Beginners' guide to Ruby on RailsVictor Porof
 
Introduction to the Client OM in SharePoint 2010
Introduction to the Client OM in SharePoint 2010Introduction to the Client OM in SharePoint 2010
Introduction to the Client OM in SharePoint 2010Ben Robb
 
What is WebDAV - uploaded by Murali Krishna Nookella
What is WebDAV - uploaded by Murali Krishna NookellaWhat is WebDAV - uploaded by Murali Krishna Nookella
What is WebDAV - uploaded by Murali Krishna Nookellamuralikrishnanookella
 
HTML5: An Overview
HTML5: An OverviewHTML5: An Overview
HTML5: An OverviewNagendra Um
 
Crash Course HTML/Rails Slides
Crash Course HTML/Rails SlidesCrash Course HTML/Rails Slides
Crash Course HTML/Rails SlidesUdita Plaha
 
Nasdanika Foundation Server
Nasdanika Foundation ServerNasdanika Foundation Server
Nasdanika Foundation ServerPavel Vlasov
 
Mike Taulty MIX10 Silverlight Frameworks and Patterns
Mike Taulty MIX10 Silverlight Frameworks and PatternsMike Taulty MIX10 Silverlight Frameworks and Patterns
Mike Taulty MIX10 Silverlight Frameworks and Patternsukdpe
 
DevTeach Montreal - 2012-12-11 - Windows 8 & HTML5: friends with benefits
DevTeach Montreal - 2012-12-11 - Windows 8 & HTML5: friends with benefitsDevTeach Montreal - 2012-12-11 - Windows 8 & HTML5: friends with benefits
DevTeach Montreal - 2012-12-11 - Windows 8 & HTML5: friends with benefitsFrédéric Harper
 
Best of Microsoft Dev Camp 2015
Best of Microsoft Dev Camp 2015Best of Microsoft Dev Camp 2015
Best of Microsoft Dev Camp 2015Bluegrass Digital
 
Web Development Presentation
Web Development PresentationWeb Development Presentation
Web Development PresentationTurnToTech
 
Go Serverless with Cosmos DB, Azure Functions and Blazor
Go Serverless with Cosmos DB, Azure Functions and BlazorGo Serverless with Cosmos DB, Azure Functions and Blazor
Go Serverless with Cosmos DB, Azure Functions and BlazorTimothy McAliley
 
Internet Explorer 8
Internet Explorer 8Internet Explorer 8
Internet Explorer 8David Chou
 
Ajax toolkit framework
Ajax toolkit frameworkAjax toolkit framework
Ajax toolkit frameworkSunil Kumar
 

Similar to The web as it should be (20)

ArcReady - Architecting For The Cloud
ArcReady - Architecting For The CloudArcReady - Architecting For The Cloud
ArcReady - Architecting For The Cloud
 
Microsoft Azure
Microsoft AzureMicrosoft Azure
Microsoft Azure
 
Server-side Web development via Ruby on Rails
Server-side Web development via Ruby on RailsServer-side Web development via Ruby on Rails
Server-side Web development via Ruby on Rails
 
Beginners' guide to Ruby on Rails
Beginners' guide to Ruby on RailsBeginners' guide to Ruby on Rails
Beginners' guide to Ruby on Rails
 
Introduction to the Client OM in SharePoint 2010
Introduction to the Client OM in SharePoint 2010Introduction to the Client OM in SharePoint 2010
Introduction to the Client OM in SharePoint 2010
 
What is WebDAV - uploaded by Murali Krishna Nookella
What is WebDAV - uploaded by Murali Krishna NookellaWhat is WebDAV - uploaded by Murali Krishna Nookella
What is WebDAV - uploaded by Murali Krishna Nookella
 
HTML5: An Overview
HTML5: An OverviewHTML5: An Overview
HTML5: An Overview
 
Crash Course HTML/Rails Slides
Crash Course HTML/Rails SlidesCrash Course HTML/Rails Slides
Crash Course HTML/Rails Slides
 
Advanced JavaScript
Advanced JavaScriptAdvanced JavaScript
Advanced JavaScript
 
RavenDB overview
RavenDB overviewRavenDB overview
RavenDB overview
 
Nasdanika Foundation Server
Nasdanika Foundation ServerNasdanika Foundation Server
Nasdanika Foundation Server
 
Mike Taulty MIX10 Silverlight Frameworks and Patterns
Mike Taulty MIX10 Silverlight Frameworks and PatternsMike Taulty MIX10 Silverlight Frameworks and Patterns
Mike Taulty MIX10 Silverlight Frameworks and Patterns
 
DevTeach Montreal - 2012-12-11 - Windows 8 & HTML5: friends with benefits
DevTeach Montreal - 2012-12-11 - Windows 8 & HTML5: friends with benefitsDevTeach Montreal - 2012-12-11 - Windows 8 & HTML5: friends with benefits
DevTeach Montreal - 2012-12-11 - Windows 8 & HTML5: friends with benefits
 
Best of Microsoft Dev Camp 2015
Best of Microsoft Dev Camp 2015Best of Microsoft Dev Camp 2015
Best of Microsoft Dev Camp 2015
 
Html5
Html5Html5
Html5
 
Web Development Presentation
Web Development PresentationWeb Development Presentation
Web Development Presentation
 
Go Serverless with Cosmos DB, Azure Functions and Blazor
Go Serverless with Cosmos DB, Azure Functions and BlazorGo Serverless with Cosmos DB, Azure Functions and Blazor
Go Serverless with Cosmos DB, Azure Functions and Blazor
 
Windows Azure
Windows AzureWindows Azure
Windows Azure
 
Internet Explorer 8
Internet Explorer 8Internet Explorer 8
Internet Explorer 8
 
Ajax toolkit framework
Ajax toolkit frameworkAjax toolkit framework
Ajax toolkit framework
 

More from thebeebs

A Developer Primer on Blockchain
A Developer Primer on BlockchainA Developer Primer on Blockchain
A Developer Primer on Blockchainthebeebs
 
Blockchain Explain
Blockchain ExplainBlockchain Explain
Blockchain Explainthebeebs
 
HItchhickers Guide to TypeScript
HItchhickers Guide to TypeScriptHItchhickers Guide to TypeScript
HItchhickers Guide to TypeScriptthebeebs
 
HTML5 and Human Interaction
HTML5 and Human InteractionHTML5 and Human Interaction
HTML5 and Human Interactionthebeebs
 
Building apps why you should bet on the web
Building apps why you should bet on the webBuilding apps why you should bet on the web
Building apps why you should bet on the webthebeebs
 
IE9 the story so far
IE9 the story so farIE9 the story so far
IE9 the story so farthebeebs
 
Using HTML5 and CSS3 today
Using HTML5 and CSS3 todayUsing HTML5 and CSS3 today
Using HTML5 and CSS3 todaythebeebs
 

More from thebeebs (7)

A Developer Primer on Blockchain
A Developer Primer on BlockchainA Developer Primer on Blockchain
A Developer Primer on Blockchain
 
Blockchain Explain
Blockchain ExplainBlockchain Explain
Blockchain Explain
 
HItchhickers Guide to TypeScript
HItchhickers Guide to TypeScriptHItchhickers Guide to TypeScript
HItchhickers Guide to TypeScript
 
HTML5 and Human Interaction
HTML5 and Human InteractionHTML5 and Human Interaction
HTML5 and Human Interaction
 
Building apps why you should bet on the web
Building apps why you should bet on the webBuilding apps why you should bet on the web
Building apps why you should bet on the web
 
IE9 the story so far
IE9 the story so farIE9 the story so far
IE9 the story so far
 
Using HTML5 and CSS3 today
Using HTML5 and CSS3 todayUsing HTML5 and CSS3 today
Using HTML5 and CSS3 today
 

Recently uploaded

Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...UiPathCommunity
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backElena Simperl
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...Product School
 
ODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupCatarinaPereira64715
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Product School
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersSafe Software
 
Demystifying gRPC in .Net by John Staveley
Demystifying gRPC in .Net by John StaveleyDemystifying gRPC in .Net by John Staveley
Demystifying gRPC in .Net by John StaveleyJohn Staveley
 
Optimizing NoSQL Performance Through Observability
Optimizing NoSQL Performance Through ObservabilityOptimizing NoSQL Performance Through Observability
Optimizing NoSQL Performance Through ObservabilityScyllaDB
 
Search and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical FuturesSearch and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical FuturesBhaskar Mitra
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Jeffrey Haguewood
 
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...CzechDreamin
 
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptxIOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptxAbida Shariff
 
Powerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara LaskowskaPowerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara LaskowskaCzechDreamin
 
Salesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
Salesforce Adoption – Metrics, Methods, and Motivation, Antone KomSalesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
Salesforce Adoption – Metrics, Methods, and Motivation, Antone KomCzechDreamin
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Alison B. Lowndes
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfCheryl Hung
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsPaul Groth
 
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlFuture Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlPeter Udo Diehl
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3DianaGray10
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...Product School
 

Recently uploaded (20)

Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
 
ODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User Group
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 
Demystifying gRPC in .Net by John Staveley
Demystifying gRPC in .Net by John StaveleyDemystifying gRPC in .Net by John Staveley
Demystifying gRPC in .Net by John Staveley
 
Optimizing NoSQL Performance Through Observability
Optimizing NoSQL Performance Through ObservabilityOptimizing NoSQL Performance Through Observability
Optimizing NoSQL Performance Through Observability
 
Search and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical FuturesSearch and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical Futures
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
 
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
 
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptxIOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
 
Powerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara LaskowskaPowerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara Laskowska
 
Salesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
Salesforce Adoption – Metrics, Methods, and Motivation, Antone KomSalesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
Salesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
 
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlFuture Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
 

The web as it should be

  • 1. the web as it should be Martin Beeby - @thebeebs
  • 2. paving the way to the end user Hotbed of innovation World of standards Ever-closer user experiences
  • 3. in the beginning… mosaic netscape navigator internet explorer v1 1993 August 1995
  • 4. 2001 a space odyssey Internet Explorer 6 - Microsoft won the Web (or so they thought)
  • 7. the rise of the competition Amazing browsers came on-line Microsoft had a long journey to catch up
  • 8. the journey so far March 2011 Internet Explorer 9 Great browser Constant development momentum Eight-week beta-launch cycles Faster launch cadence
  • 10. standards-based browsing HTML5 W3C: Sixteen full-time employees Most test cases submitted around 1,700 But we still innovate
  • 13. web sites as applications Fully-fledged Applications HTML5 CSS3 Standards-based Web technologies IE10 is a distinct application delivery platform
  • 14. just some of the new html5 features… Animation Frames CSS Positioned Floats (Exclusions) FormData Page Visibility CSS3 2d Transforms CSS Selectors HTML5 Application Cache Pointer (Mouse, Pen and Touch) CSS 3d Transforms CSS Transitions HTML5 async Events CSS3 Animations CSS Values and Units HTML5 Canvas Resource Timing CSS3 Backgrounds and Borders Data URI HTML5 Drag and drop Selectors API Level 2 CSS Color DOM Element Traversal HTML5 Forms and Validation SVG Filter Effects CSS FlexBox DOM HTML HTML5 Geolocation SVG Inline CSS Fonts DOM Level 3 Core HTMl5 History API Timing Callbacks CSS Grid Alignment Dom Level 3 Events HTML5 Parser Web Messaging CSS Hyphenation DOM Style HTML5 Sandbox Web Sockets CSS Image Values (gradients) DOM Traversal and Range HTML5 Selectors Web Workers CSS Media Queries DOMParser and XMLSerializer HTML5 semantic elements XHTML5/XML CSS multi-column layout ECMAScript 5 HTML5 Video and Audio XMLHttpRequest (Level 2) CSS Namespaces File Reader API ICC Colour Profiles CSS OM Views File Saving IndexedDB
  • 17. benefits applications work correctly at all times User-generated data can be stored off-line Improved overall performance by spreading the load between the cloud and client
  • 18. appcache creation flow caches resources locally First run fetches Later runs fetch info from network info from cache
  • 19. appcache how it works Behind the scenes after Web content displayed Manifest file specifies resource URIs to cache Cache only created if all resources are downloaded Easy-update of manifest file to update target cache content Applications can access cached resources using URLs and URIs
  • 20. appcache vs Guaranteed availability of http cached resources Correct off-line resolution of URLs caching http caching can optimise appcache behaviour
  • 22. indexed db vs relational db Concept Relational DB IndexedDB Database Database Database Tables Tables contain columns and rows objectStore contains Javascript objects and keys Query Mechanism, Join, and Filters SQL Cursor APIs, Key Range APIs, and Application Code Transaction Types and Locks Lock can happen on databases, tables, Lock can happen on database on VERSION_CHANGE or rows on READ_WRITE Transactions transaction, on an objectStores on READ_ONLY and READ_WRITE transactions. There is no object level locking. Transaction Commits Transaction creation is explicit. Default is to Transaction creation is explicit. Default is to commit unless I call rollback unless I call commit. abort or there is an exception that is not caught. Property Lookups SQL Indexes are required to query object properties directly Records/Data Normal form and single valued properties De-normal form and can have multi-valued properties
  • 23. indexed db how it works var oRequestDB = window.indexedDB.open("Library"); oRequestDB.onsuccess = function (event) { db1 = oRequestDB.result; if (db1.version == 1) { txn = db1.transaction(["Books"], IDBTransaction.READ_ONLY); var objStoreReq = txn.objectStore( "Books"); var request = objStoreReq.get("Book0"); request.onsuccess = processGet; } };
  • 24. indexed db benefits Optimised way of querying data objects Website access to large amounts of related data Data filtering using KeyRange objects “Master” cloud and local IndexedDB database architecture Faster searches Off-line data access
  • 26. benefits Better off-line application performance Improved user stickiness to the application greater opportunity for your business
  • 30. real world www.beautyoftheweb.co.uk Showcase of sites using HTML5
  • 31. test drive http://ie.microsoft.com/testdrive/ download Internet Explorer 10 preview Example applications http://dev.windows.com
  • 32. the web as it should be W3C standards-based: HTML5, CSS3, Web-browsers Application delivery platform Compelling end-user experiences Driven by innovation