SlideShare ist ein Scribd-Unternehmen logo
1 von 77
Downloaden Sie, um offline zu lesen
Building Post-Modern
Web Applications
Agenda
Agenda




No Agenda
Me

_   Working at SinnerSchrader
_   Joose - JavaScript Meta Object System
_   Bespin - Code in the Cloud
_   http://joose-js.blogspot.com
_   http://twitter.com/cramforce
The term postmodern is described by Merriam-
Webster as meaning either quot;of, relating to, or being an
era after a modern onequot;

The American Heritage Dictionary describes the
meaning of the same term as quot;Of or relating to art,
architecture, or literature that reacts against earlier
modernist principles, as by reintroducing traditional
or classical elements of style or by carrying
modernist styles or practices to extremes.
I won‘t talk about why
but about HOW!
A Brief History of the Web
A Brief History of the Web


       In the beginning there was the page
A Brief History of the Web


       In the beginning there was the page


         then there was the application
A Brief History of the Web


       In the beginning there was the page


         then there was the application


           and then there was G-Mail
Post Modern Web Applications

_ feel more like a 90s area desktop application than they do feel
  like a web page
_ talk to backend systems in highly asynchronous and bi-
  directional fashion
_ implement complex logic within the client
_ backend system must scale to large numbers of simultaenously
  connected users
PMWAs

_ Web 2.0 was about reapplying existing technologies to create
  more powerful web sites
  _ Ajax
  _ Re-Rendering only parts of a page
  _ „Look what we have here, letʻs make something cool with it“

_ PMWAs are about getting it right
_ Wir haben die Plattform endlich im Griff.
PMWAs DeïŹning Features

_ Realtime collaboration
_ Realtime updates
_ Work when ofïŹ‚ine / with ïŹ‚aky connections
_ Application VS. Page
Examples
More PMWA Examples

_ Google Reader/Docs/Etc.
_ Youtube Realtime
_ Beebo
_ Papercube
_ MobileMe
FAIL

_ User experience conventions for web pages fail for PMWAs
_ Traditional HTML and JavaScript programming techniques do
 not ïŹt PMWAs
_ The HTTP request pattern does not ïŹt the use cases of PMWAs
_ Relational databases do not scale to web scale
We need new paradigms!
We need new paradigms!
Do we?
We need new paradigms!
Do we?
Yes
We need new paradigms!
Do we?
Yes; but not for everything
We need new paradigms!
Do we?
Yes; but not for everything
I was raised by my parents with the
formular
conservatism = facism - 0.1
We need new paradigms!
Do we?
Yes; but not for everything
I was raised by my parents with the
formular
conservatism = facism - 0.1
Maybe I‘m a rebel now
Some old people already know
how to build rich client
applications
Some old people already know
how to build rich client
applications
Some old people already know
how to build rich client
applications
Lets go concept shopping!
We need to learn from Apple
how to build GUIs and let
the DIN A4 page behind
Event-Based programming
provides for loose coupling
in GUI programming
We need to re-apply
Model-View-Controller
techniques
We need to re-apply
Model-View-Controller
techniques




                    The Flash guys are years
                    further down this road
Client logic needs to be
responsive. We need
concurrency in the
browser.
Enabling Technologies
Disabling Technologies
The Internet Explorer 6 Dillemma

_ Progress in web development has been hindered by the need to
  be compatible with a 7 year old complete failure.
_ This will end in 2010.
The Internet Explorer 6 Dillemma

_ Progress in web development has been hindered by the need to
  be compatible with a 7 year old complete failure.
_ This will end in 2010.
The Internet Explorer 6 Dillemma

_ Progress in web development has been hindered by the need to
  be compatible with a 7 year old complete failure.
_ This will end in 2010.




                      Internet Explorer 6 is
                      steadily vanishing
Enabling Technologies
Ultra Fast JavaScript

_ Tracemonkey
_ SquirrelïŹsh
_ V8
Make-The-DOM-Nicer Libraries

_ jQuery
_ Dojo
_ YUI
_ etc.
Widget Libraries

_ jQuery UI
_ Dijits
_ YUI
Component Frameworks

_ PureMVC
_ JavaScript MVC
_ SproudCore
_ Cappucino
_ White Open Space Ready
 To Be Filled
Comet

_ Server-Push like technology
_ Bending HTTP to itʻs will
_ Long polling
Flash

_ Use where appropriate
_ Video!
Canvas

_ 2D drawing in the browser
_ Will have a big future
_ Eliminates many Flash use cases
Coming with HTML5
Local Storage
Local Storage




    _ Enables ofïŹ‚ine apps
    _ SQL database on the client side
_ The browser knows where you are
           _ Especially interesting for mobile apps
           _ But also coming to a home near you

Geo Location
Web Workers



_ Enable multi process JavaScript
_ Now we can do hard calculations on the client
_ without blocking the UI
_ Responsiveness!!!
Example time
Example time
Bespin

_ an experiment to build a text editor that works in the browser
_ shows what can be done with modern web browsers
_ absolutely zero Internet Explorer 6 compatibility
Goals

_ Fast
_ Responsive
_ Ability to edit very large ïŹles
_ Collaboration - edit ïŹle with multiple users
_ Extensible
_ Embeddable
Show Application

Thanks for the reminder
Event-Driven

_ Source-Code Examples (In Editor)
_ Real-World Example
_ Open-Document -> Change Syntax Coloring
Responsiveness

_ Use of Canvas
_ Web Workers, WorkerFacade
Post Modern Web Applications
Post Modern Web Applications

        The tools are here (HTML5, etc).
      We need to professionalize their usage.
Post Modern Web Applications

         The tools are here (HTML5, etc).
       We need to professionalize their usage.



    We can learn many things from the „Fat Client“
Post Modern Web Applications

           The tools are here (HTML5, etc).
         We need to professionalize their usage.



     We can learn many things from the „Fat Client“



The ecosystem is catching up (Component Frameworks, etc.).
                     We can help!
In the next 12 months more and more
websites will become post modern
web applications
In the next 12 months more and more
websites will become post modern
web applications

     The whole ecosystem of web development
               will need to adapt ...
In the next 12 months more and more
websites will become post modern
web applications

      The whole ecosystem of web development
                will need to adapt ...


   ... from user experience, over design to software
                     development
Thank You for Listening!

http://joose-js.blogspot.com
http://twitter.com/cramforce

Weitere Àhnliche Inhalte

Was ist angesagt?

Progressive Web Apps - Goto Chicago 2017
Progressive Web Apps - Goto Chicago 2017Progressive Web Apps - Goto Chicago 2017
Progressive Web Apps - Goto Chicago 2017Christian Heilmann
 
Hacking the Mid-End (Great Lakes Ruby Bash Edition)
Hacking the Mid-End (Great Lakes Ruby Bash Edition)Hacking the Mid-End (Great Lakes Ruby Bash Edition)
Hacking the Mid-End (Great Lakes Ruby Bash Edition)Michael Bleigh
 
Intro to Web Development from Bloc.io
Intro to Web Development from Bloc.ioIntro to Web Development from Bloc.io
Intro to Web Development from Bloc.ioDouglas Wright
 
Single Page Application presentation
Single Page Application presentationSingle Page Application presentation
Single Page Application presentationJohn Staveley
 
Front end for back end developers
Front end for back end developersFront end for back end developers
Front end for back end developersWojciech Bednarski
 
Progressive Web Apps – the return of the web? Goto Berlin 2016
Progressive Web Apps – the return of the web? Goto Berlin 2016Progressive Web Apps – the return of the web? Goto Berlin 2016
Progressive Web Apps – the return of the web? Goto Berlin 2016Christian Heilmann
 
Single Page Application Best practices
Single Page Application Best practicesSingle Page Application Best practices
Single Page Application Best practicesTarence DSouza
 
5 single page application principles developers need to know
5 single page application principles developers need to know5 single page application principles developers need to know
5 single page application principles developers need to knowChris Love
 
Front-End 개발의 êŽœì°źì€ 선택 ES6 & React
Front-End 개발의 êŽœì°źì€ 선택  ES6 & ReactFront-End 개발의 êŽœì°źì€ 선택  ES6 & React
Front-End 개발의 êŽœì°źì€ 선택 ES6 & React지수 윀
 
10 Web Performance Lessons For the 21st Century
10 Web Performance Lessons For the  21st Century10 Web Performance Lessons For the  21st Century
10 Web Performance Lessons For the 21st CenturyMateusz Kwasniewski
 
What Web Framework To Use?
What Web Framework To Use?What Web Framework To Use?
What Web Framework To Use?Kasra Khosravi
 
Front end developer responsibilities what does a front-end developer do?
Front end developer responsibilities  what does a front-end developer do?Front end developer responsibilities  what does a front-end developer do?
Front end developer responsibilities what does a front-end developer do?Katy Slemon
 
Web Development
Web DevelopmentWeb Development
Web DevelopmentAditya Raman
 
Ali CV
Ali CVAli CV
Ali CVAli Raza
 
1-01: Introduction To Web Development
1-01: Introduction To  Web  Development1-01: Introduction To  Web  Development
1-01: Introduction To Web Developmentapnwebdev
 
That's crazy! how to build single page web apps
That's crazy! how to build single page web appsThat's crazy! how to build single page web apps
That's crazy! how to build single page web appsChris Love
 
CC 2015 Single Page Applications for the ASPNET Developer
CC 2015   Single Page Applications for the ASPNET DeveloperCC 2015   Single Page Applications for the ASPNET Developer
CC 2015 Single Page Applications for the ASPNET DeveloperAllen Conway
 
JavaScript Functions | JavaScript Tutorial for Beginners | Edureka
JavaScript Functions | JavaScript Tutorial for Beginners | EdurekaJavaScript Functions | JavaScript Tutorial for Beginners | Edureka
JavaScript Functions | JavaScript Tutorial for Beginners | EdurekaEdureka!
 
Top java script frameworks ppt
Top java script frameworks pptTop java script frameworks ppt
Top java script frameworks pptOmkarsoft Bangalore
 

Was ist angesagt? (20)

Progressive Web Apps - Goto Chicago 2017
Progressive Web Apps - Goto Chicago 2017Progressive Web Apps - Goto Chicago 2017
Progressive Web Apps - Goto Chicago 2017
 
Hacking the Mid-End (Great Lakes Ruby Bash Edition)
Hacking the Mid-End (Great Lakes Ruby Bash Edition)Hacking the Mid-End (Great Lakes Ruby Bash Edition)
Hacking the Mid-End (Great Lakes Ruby Bash Edition)
 
Intro to Web Development from Bloc.io
Intro to Web Development from Bloc.ioIntro to Web Development from Bloc.io
Intro to Web Development from Bloc.io
 
Single Page Application presentation
Single Page Application presentationSingle Page Application presentation
Single Page Application presentation
 
Front end for back end developers
Front end for back end developersFront end for back end developers
Front end for back end developers
 
Progressive Web Apps – the return of the web? Goto Berlin 2016
Progressive Web Apps – the return of the web? Goto Berlin 2016Progressive Web Apps – the return of the web? Goto Berlin 2016
Progressive Web Apps – the return of the web? Goto Berlin 2016
 
Single Page Application Best practices
Single Page Application Best practicesSingle Page Application Best practices
Single Page Application Best practices
 
5 single page application principles developers need to know
5 single page application principles developers need to know5 single page application principles developers need to know
5 single page application principles developers need to know
 
Front-End 개발의 êŽœì°źì€ 선택 ES6 & React
Front-End 개발의 êŽœì°źì€ 선택  ES6 & ReactFront-End 개발의 êŽœì°źì€ 선택  ES6 & React
Front-End 개발의 êŽœì°źì€ 선택 ES6 & React
 
10 Web Performance Lessons For the 21st Century
10 Web Performance Lessons For the  21st Century10 Web Performance Lessons For the  21st Century
10 Web Performance Lessons For the 21st Century
 
What Web Framework To Use?
What Web Framework To Use?What Web Framework To Use?
What Web Framework To Use?
 
Front end developer responsibilities what does a front-end developer do?
Front end developer responsibilities  what does a front-end developer do?Front end developer responsibilities  what does a front-end developer do?
Front end developer responsibilities what does a front-end developer do?
 
Web Development
Web DevelopmentWeb Development
Web Development
 
SxSW 2015
SxSW 2015SxSW 2015
SxSW 2015
 
Ali CV
Ali CVAli CV
Ali CV
 
1-01: Introduction To Web Development
1-01: Introduction To  Web  Development1-01: Introduction To  Web  Development
1-01: Introduction To Web Development
 
That's crazy! how to build single page web apps
That's crazy! how to build single page web appsThat's crazy! how to build single page web apps
That's crazy! how to build single page web apps
 
CC 2015 Single Page Applications for the ASPNET Developer
CC 2015   Single Page Applications for the ASPNET DeveloperCC 2015   Single Page Applications for the ASPNET Developer
CC 2015 Single Page Applications for the ASPNET Developer
 
JavaScript Functions | JavaScript Tutorial for Beginners | Edureka
JavaScript Functions | JavaScript Tutorial for Beginners | EdurekaJavaScript Functions | JavaScript Tutorial for Beginners | Edureka
JavaScript Functions | JavaScript Tutorial for Beginners | Edureka
 
Top java script frameworks ppt
Top java script frameworks pptTop java script frameworks ppt
Top java script frameworks ppt
 

Ähnlich wie Building Post-Modern Web Apps

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
 
Over view of Technologies
Over view of TechnologiesOver view of Technologies
Over view of TechnologiesChris Mitchell
 
Front End Development | Introduction
Front End Development | IntroductionFront End Development | Introduction
Front End Development | IntroductionJohnTaieb
 
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
 
Mastering Full-Stack Web Development in 7 Days Your Ultimate Guide.pdf
Mastering Full-Stack Web Development in 7 Days Your Ultimate Guide.pdfMastering Full-Stack Web Development in 7 Days Your Ultimate Guide.pdf
Mastering Full-Stack Web Development in 7 Days Your Ultimate Guide.pdfgetrichoffice
 
LATEST_TRENDS_IN_WEBSITE_DEVELOPMENT.pptx
LATEST_TRENDS_IN_WEBSITE_DEVELOPMENT.pptxLATEST_TRENDS_IN_WEBSITE_DEVELOPMENT.pptx
LATEST_TRENDS_IN_WEBSITE_DEVELOPMENT.pptxchitrachauhan21
 
The Ultimate Guide to Modern Web App Development.ppt
The Ultimate Guide to Modern Web App Development.pptThe Ultimate Guide to Modern Web App Development.ppt
The Ultimate Guide to Modern Web App Development.pptAsad Majeed
 
Web Application Development- Best Practices in 2023.
Web Application Development- Best Practices in 2023.Web Application Development- Best Practices in 2023.
Web Application Development- Best Practices in 2023.Techugo
 
The Superhero’s Method of Modern HTML5 Development by RapidValue Solutions
The Superhero’s Method of Modern HTML5 Development by RapidValue SolutionsThe Superhero’s Method of Modern HTML5 Development by RapidValue Solutions
The Superhero’s Method of Modern HTML5 Development by RapidValue SolutionsRapidValue
 
Making Of PHP Based Web Application
Making Of PHP Based Web ApplicationMaking Of PHP Based Web Application
Making Of PHP Based Web ApplicationSachin Walvekar
 
Web Application Development in 2023.pdf
Web Application Development in 2023.pdfWeb Application Development in 2023.pdf
Web Application Development in 2023.pdfTechugo
 
What Are Progressive Web Application Development
What Are Progressive Web Application DevelopmentWhat Are Progressive Web Application Development
What Are Progressive Web Application DevelopmentApp Verticals
 
The challenges of building mobile HTML5 applications - FEEC Brazil 2012 - Recife
The challenges of building mobile HTML5 applications - FEEC Brazil 2012 - RecifeThe challenges of building mobile HTML5 applications - FEEC Brazil 2012 - Recife
The challenges of building mobile HTML5 applications - FEEC Brazil 2012 - RecifeCaridy Patino
 
(In)Security Implication in the JS Universe
(In)Security Implication in the JS Universe(In)Security Implication in the JS Universe
(In)Security Implication in the JS UniverseStefano Di Paola
 
Build Innovative Web Applications with Full Stack Development Know -123.pdf
Build Innovative Web Applications with Full Stack Development Know -123.pdfBuild Innovative Web Applications with Full Stack Development Know -123.pdf
Build Innovative Web Applications with Full Stack Development Know -123.pdfUncodemy
 
web development ppt by prakash bedage
web development ppt by prakash bedageweb development ppt by prakash bedage
web development ppt by prakash bedagePrakashBedage
 
web development project prakash.pptx
web development project prakash.pptxweb development project prakash.pptx
web development project prakash.pptxPrakashBedage
 

Ähnlich wie Building Post-Modern Web Apps (20)

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
 
Over view of Technologies
Over view of TechnologiesOver view of Technologies
Over view of Technologies
 
Front End Development | Introduction
Front End Development | IntroductionFront End Development | Introduction
Front End Development | Introduction
 
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
 
Mastering Full-Stack Web Development in 7 Days Your Ultimate Guide.pdf
Mastering Full-Stack Web Development in 7 Days Your Ultimate Guide.pdfMastering Full-Stack Web Development in 7 Days Your Ultimate Guide.pdf
Mastering Full-Stack Web Development in 7 Days Your Ultimate Guide.pdf
 
LATEST_TRENDS_IN_WEBSITE_DEVELOPMENT.pptx
LATEST_TRENDS_IN_WEBSITE_DEVELOPMENT.pptxLATEST_TRENDS_IN_WEBSITE_DEVELOPMENT.pptx
LATEST_TRENDS_IN_WEBSITE_DEVELOPMENT.pptx
 
The Ultimate Guide to Modern Web App Development.ppt
The Ultimate Guide to Modern Web App Development.pptThe Ultimate Guide to Modern Web App Development.ppt
The Ultimate Guide to Modern Web App Development.ppt
 
Web Application Development- Best Practices in 2023.
Web Application Development- Best Practices in 2023.Web Application Development- Best Practices in 2023.
Web Application Development- Best Practices in 2023.
 
The Superhero’s Method of Modern HTML5 Development by RapidValue Solutions
The Superhero’s Method of Modern HTML5 Development by RapidValue SolutionsThe Superhero’s Method of Modern HTML5 Development by RapidValue Solutions
The Superhero’s Method of Modern HTML5 Development by RapidValue Solutions
 
Making Of PHP Based Web Application
Making Of PHP Based Web ApplicationMaking Of PHP Based Web Application
Making Of PHP Based Web Application
 
Web Application Development in 2023.pdf
Web Application Development in 2023.pdfWeb Application Development in 2023.pdf
Web Application Development in 2023.pdf
 
PDF 1.pdf
PDF 1.pdfPDF 1.pdf
PDF 1.pdf
 
What Are Progressive Web Application Development
What Are Progressive Web Application DevelopmentWhat Are Progressive Web Application Development
What Are Progressive Web Application Development
 
The challenges of building mobile HTML5 applications - FEEC Brazil 2012 - Recife
The challenges of building mobile HTML5 applications - FEEC Brazil 2012 - RecifeThe challenges of building mobile HTML5 applications - FEEC Brazil 2012 - Recife
The challenges of building mobile HTML5 applications - FEEC Brazil 2012 - Recife
 
(In)Security Implication in the JS Universe
(In)Security Implication in the JS Universe(In)Security Implication in the JS Universe
(In)Security Implication in the JS Universe
 
Build Innovative Web Applications with Full Stack Development Know -123.pdf
Build Innovative Web Applications with Full Stack Development Know -123.pdfBuild Innovative Web Applications with Full Stack Development Know -123.pdf
Build Innovative Web Applications with Full Stack Development Know -123.pdf
 
web development ppt by prakash bedage
web development ppt by prakash bedageweb development ppt by prakash bedage
web development ppt by prakash bedage
 
web development project prakash.pptx
web development project prakash.pptxweb development project prakash.pptx
web development project prakash.pptx
 
How backbone.js is different from ember.js?
How backbone.js is different from ember.js?How backbone.js is different from ember.js?
How backbone.js is different from ember.js?
 
Wordpress development 101
Wordpress development 101Wordpress development 101
Wordpress development 101
 

KĂŒrzlich hochgeladen

CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍾 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍾 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍾 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍾 8923113531 🎰 Avail...gurkirankumar98700
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
[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
 
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
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
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
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsRoshan Dwivedi
 
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
 
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
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
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
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 

KĂŒrzlich hochgeladen (20)

CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍾 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍾 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍾 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍾 8923113531 🎰 Avail...
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
[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
 
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
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 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
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
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
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
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...
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 

Building Post-Modern Web Apps

  • 4. Me _ Working at SinnerSchrader _ Joose - JavaScript Meta Object System _ Bespin - Code in the Cloud _ http://joose-js.blogspot.com _ http://twitter.com/cramforce
  • 5. The term postmodern is described by Merriam- Webster as meaning either quot;of, relating to, or being an era after a modern onequot; The American Heritage Dictionary describes the meaning of the same term as quot;Of or relating to art, architecture, or literature that reacts against earlier modernist principles, as by reintroducing traditional or classical elements of style or by carrying modernist styles or practices to extremes.
  • 6. I won‘t talk about why but about HOW!
  • 7. A Brief History of the Web
  • 8. A Brief History of the Web In the beginning there was the page
  • 9. A Brief History of the Web In the beginning there was the page then there was the application
  • 10. A Brief History of the Web In the beginning there was the page then there was the application and then there was G-Mail
  • 11.
  • 12. Post Modern Web Applications _ feel more like a 90s area desktop application than they do feel like a web page _ talk to backend systems in highly asynchronous and bi- directional fashion _ implement complex logic within the client _ backend system must scale to large numbers of simultaenously connected users
  • 13. PMWAs _ Web 2.0 was about reapplying existing technologies to create more powerful web sites _ Ajax _ Re-Rendering only parts of a page _ „Look what we have here, letÊ»s make something cool with it“ _ PMWAs are about getting it right _ Wir haben die Plattform endlich im Griff.
  • 14. PMWAs DeïŹning Features _ Realtime collaboration _ Realtime updates _ Work when ofïŹ‚ine / with ïŹ‚aky connections _ Application VS. Page
  • 16.
  • 17.
  • 18.
  • 19. More PMWA Examples _ Google Reader/Docs/Etc. _ Youtube Realtime _ Beebo _ Papercube _ MobileMe
  • 20.
  • 21. FAIL _ User experience conventions for web pages fail for PMWAs _ Traditional HTML and JavaScript programming techniques do not ïŹt PMWAs _ The HTTP request pattern does not ïŹt the use cases of PMWAs _ Relational databases do not scale to web scale
  • 22. We need new paradigms!
  • 23. We need new paradigms! Do we?
  • 24. We need new paradigms! Do we? Yes
  • 25. We need new paradigms! Do we? Yes; but not for everything
  • 26. We need new paradigms! Do we? Yes; but not for everything I was raised by my parents with the formular conservatism = facism - 0.1
  • 27. We need new paradigms! Do we? Yes; but not for everything I was raised by my parents with the formular conservatism = facism - 0.1 Maybe I‘m a rebel now
  • 28. Some old people already know how to build rich client applications
  • 29. Some old people already know how to build rich client applications
  • 30. Some old people already know how to build rich client applications
  • 31.
  • 32. Lets go concept shopping!
  • 33.
  • 34. We need to learn from Apple how to build GUIs and let the DIN A4 page behind
  • 35.
  • 36. Event-Based programming provides for loose coupling in GUI programming
  • 37.
  • 38. We need to re-apply Model-View-Controller techniques
  • 39. We need to re-apply Model-View-Controller techniques The Flash guys are years further down this road
  • 40.
  • 41. Client logic needs to be responsive. We need concurrency in the browser.
  • 44. The Internet Explorer 6 Dillemma _ Progress in web development has been hindered by the need to be compatible with a 7 year old complete failure. _ This will end in 2010.
  • 45. The Internet Explorer 6 Dillemma _ Progress in web development has been hindered by the need to be compatible with a 7 year old complete failure. _ This will end in 2010.
  • 46. The Internet Explorer 6 Dillemma _ Progress in web development has been hindered by the need to be compatible with a 7 year old complete failure. _ This will end in 2010. Internet Explorer 6 is steadily vanishing
  • 48. Ultra Fast JavaScript _ Tracemonkey _ SquirrelïŹsh _ V8
  • 50. Widget Libraries _ jQuery UI _ Dijits _ YUI
  • 51. Component Frameworks _ PureMVC _ JavaScript MVC _ SproudCore _ Cappucino _ White Open Space Ready To Be Filled
  • 52. Comet _ Server-Push like technology _ Bending HTTP to itÊ»s will _ Long polling
  • 53. Flash _ Use where appropriate _ Video!
  • 54. Canvas _ 2D drawing in the browser _ Will have a big future _ Eliminates many Flash use cases
  • 57. Local Storage _ Enables ofïŹ‚ine apps _ SQL database on the client side
  • 58.
  • 59. _ The browser knows where you are _ Especially interesting for mobile apps _ But also coming to a home near you Geo Location
  • 60.
  • 61. Web Workers _ Enable multi process JavaScript _ Now we can do hard calculations on the client _ without blocking the UI _ Responsiveness!!!
  • 64. Bespin _ an experiment to build a text editor that works in the browser _ shows what can be done with modern web browsers _ absolutely zero Internet Explorer 6 compatibility
  • 65. Goals _ Fast _ Responsive _ Ability to edit very large ïŹles _ Collaboration - edit ïŹle with multiple users _ Extensible _ Embeddable
  • 67. Event-Driven _ Source-Code Examples (In Editor) _ Real-World Example _ Open-Document -> Change Syntax Coloring
  • 68. Responsiveness _ Use of Canvas _ Web Workers, WorkerFacade
  • 69.
  • 70. Post Modern Web Applications
  • 71. Post Modern Web Applications The tools are here (HTML5, etc). We need to professionalize their usage.
  • 72. Post Modern Web Applications The tools are here (HTML5, etc). We need to professionalize their usage. We can learn many things from the „Fat Client“
  • 73. Post Modern Web Applications The tools are here (HTML5, etc). We need to professionalize their usage. We can learn many things from the „Fat Client“ The ecosystem is catching up (Component Frameworks, etc.). We can help!
  • 74. In the next 12 months more and more websites will become post modern web applications
  • 75. In the next 12 months more and more websites will become post modern web applications The whole ecosystem of web development will need to adapt ...
  • 76. In the next 12 months more and more websites will become post modern web applications The whole ecosystem of web development will need to adapt ... ... from user experience, over design to software development
  • 77. Thank You for Listening! http://joose-js.blogspot.com http://twitter.com/cramforce