SlideShare une entreprise Scribd logo
1  sur  22
Télécharger pour lire hors ligne
Apache Flex ...
… and the imperfect Web
          Presented by
         Sebastian Mohr

       July 5th 2012, Berlin
About me
●
     HTML / Javascript Developer (2000 - 2006)
●
     Flex Developer since Summer 2006
●
     Mate, Robotlegs, Parsley, Spring AS, Swiz
●
     Study of Cognitive Science, Osnabrueck
●
     W3C Fan, Semantic Web, Open Web
     Technologies
●
     Apache Flex PPMC since November 2011
    Homepage: http://www.masuland.com/
    Twitter: http://twitter.com/masuland
    LinkedIn: http://www.linkedin.com/in/masuland
The imperfect Web
Gary Oldman explains why “Graffiti“ - or the “imperfect Web“
respectively - is great for the world ...




              Watch video: http://www.youtube.com/watch?v=Tt1W0F0yObg
The imperfect Web is:
●   Webbrowsers: Firefox, Chrome, Safari, Opera
●   Markups: XHTML, SVG, SMIL, MXML (Flex), XAML
    (Silverlight), FXML (JavaFX), WebGL, X3D, XForm, XPath,
    XML, XSLT, XQuery, RDF, OWL, ...
●   Script-Engines: ECMAScript, Javascript, Actionscript,
    JScript
●   Ajax & JS-Libs: JQuery, ExtJS, Dojo, Prototype, MochiKit,
    PhoneGap, Rhomobile, Sencha, ...
●   Devices: Desktop, Mobile, TV
●   Mobile OS: iOS, Android, Windows Mobile
Web History (2005 - 2011)




Read article:
http://code.google.com/p/masuland/wiki/WhatsWrongWithFlex
The Web Today
                          HTML /                   Flashplayer            Silverlight 5      Java
                          Javascript               11                                        (Applets)

 Runtime                  Dependent on             GPU support            GPU support,       GPU support,
 Features                 Web Browser                                     Multithreading     Multithreading

 Markup                   XHTML 1.1,               FXG 2.0, MXML          XAML               FXML
 Language                 HTML5, SVG

 Scripting                Javascript               Actionscript           JScript            Java, JRuby,
 Language                                                                                    Groovy

 Interaction              Adobe Muse,              Adobe Flash            Microsoft          JavaFX Scene
 Design Tools             Adobe Edge,              Catalyst, Adobe        Expression         Builder
                          Adobe Proto              Flash Pro              Blend
 Developer                Eclipse, Adobe           Adobe Flash            Microsoft Visual   Eclipse
 Tools                    Dreamweaver              Pro, Adobe             Studio
                                                   Flash Builder

Read article: http://code.google.com/p/masuland/wiki/WhatsWrongWithFlex
Thank you Tim for ...
+++ HTTP
+++ www.domain.com
                                                                 http://www.emca-international.org

--- HTML




http://www.w3c.org

                     Tim Berners-Lee, http://en.wikipedia.org/wiki/Tim_Berners-Lee
Flash Everywhere?
         ●   Adobe AIR 4+ for Mobile
         ●   Flashplayer 12+ with
             Multithreading and better GPU-
             support
         ●   Flashplayer 12+ great for Flash-
             Games and Apache Flex



         ●   Adobe Open Screen Project?
         ●   Faster Mobile-CPUs each year →
             Flashplayer 12+ for Mobile again?
         ●   Flash-2-HTML Converter?
What should we occupy?

                                        Occupy Wallstreet
                                               http://www.occupywallst.org




                             Occupy Flash & Occupy HTML 5
                               http://www.occupyflash.org            http://www.occupyhtml.org




                              Occupy W3C & Occupy ECMA Int.
                                   Not occupied yet:                          Not occupied yet:
                                  http://www.w3c.org                  http://www.emca-international.org

Read article:
http://masuland.wordpress.com/2011/11/28/where-could-flash-coding-be-in-the-year-2050/
Where is Apache Flex in 2050?
●
    Apache Flex might not be necessary if:
     ●
          Single Webbrowser / Webengine (Webkit?)
     ●
          RIA-HTML (Audio, Video, 3D, Text) (HTML 6?)
     ●
          Binary HTML (like SWF?)
     ●
          Semantic Web interface included into HTML
     ●
          Stronger Javascript / ECMAScript - Engine
            –   Typed Objects
            –   Packages / OOP

Read article: http://masuland.wordpress.com/2011/11/28/where-could-flash-coding-be-in-the-year-2050/
Spoon Foundation Ecosystem




See presentation by Justin Mclean:
https://docs.google.com/presentation/pub?id=1SsVcr2SLkBJMXk1N6U3-HpxloSUUa4pBX-2f4GrRL5M#slide=id.p57
Personal Survey (1)
  Which Model-View-Controller (MVC) Microarchitectures
  have you used in your Flex projects?




See personal survey: http://code.google.com/p/masuland/wiki/Statistics
Personal Survey (2)
How many MXML files do you have in your latest Flex
projects?




See personal survey: http://code.google.com/p/masuland/wiki/Statistics
Goals for Apache Flex
●   Strengthening large-scale Flex applications
●   Highly productive and fast development environment
●   Flex code should be easily mergeable across different flex projects worldwide
●   Flex code should be based on coding standards
●   Flex code should be sustainable and easily maintainable
●   There should be more highly skilled Flex Developers around
●   Developer tools should be easy to be used and should help the
    designer/developer to be more productive
●   The Flashplayer - "Actionscript Virtual Machine" (AVM) respectively - should
    be as powerful as the "Java Virtual Machine" (JVM)
●   The Adobe Flash Catalyst should be as powerful as Microsoft Expression
    Blend

    Read article: http://code.google.com/p/masuland/wiki/WhatsWrongWithFlex
Masuland „Login Example“ for Web,
                           Desktop and Mobile




See code examples:
http://code.google.com/p/masuland/wiki/LoginExample
Is coding „fun“?
           At the beginning … probably true!
●   Coding is work
●   Goal-Driven Development … work, work, work, work, work, work -> HAPPY
●   Social-Driven Development – mental hygiene & social hygiene
●   An architecture often proves its quality at the end of the project
●   Desirable: Less frustrations and high success/motivation while working on
    bugs and features of your app
●   The more features in your app, the more dependencies you have to deal with
●   Testability of your code
●   Optimal development environment and configuration
●   Anarchy vs. coding conventions / design patterns
●   Artistic freedom of your software engineers
Apache Flex Layers




Read article: http://code.google.com/p/masuland/wiki/WhatsWrongWithFlex
Architectural Pattern /
    Nanoarchitectures




See Nanoarchitectures:
http://code.google.com/p/masuland/wiki/Nanoarchitecture
Application Development
                     Procedure
1. Application Code that shows the working application with
source code available
2. Specification Document which explains the purpose of the
application and collects all its requirements
3. Application Coding Standard which consists of a collection
of Architectural Patterns and underlying Coding Conventions in
the code
     3.1. Architectural Patterns just like "Model-View-
     Controller" (MVC), "Model-View-Presenter" (MVP),
     "Presentation Model" (PM) ... etc.
     3.2. Coding Conventions on the basis of Flex 3 or Flex 4

Read definition page: http://code.google.com/p/masuland/wiki/ApplicationDevelopmentProcedure
Read definition page:
http://code.google.com/p/masuland/wiki/ApplicationDevelopmentProcedure
Thank you!
Questions?
References
●   Apache Flex Community Revue July 2012,
    http://www.spoon.as/2012/apache-revue-july-2012/
●   Apache Flex 4.8 Release Candidate,
    http://people.apache.org/~cframpton/ApacheFlexRC/current/
●   Apache Flex News, http://incubator.apache.org/flex/news.html
●   Apache Flex Wiki,
    https://cwiki.apache.org/confluence/display/FLEX/Apache+Flex+(incubating)+Wiki
●   Apache Flex Mailing Lists, http://incubator.apache.org/flex/mailing-lists.html
●   Apache Flex JIRA, https://issues.apache.org/jira/browse/FLEX
●   Apache Flex Blog, http://blogs.apache.org/flex/
●   Adobe Flex, http://sourceforge.net/adobe/flexsdk/wiki/About/
●   Adobe Flex Roadmap, http://www.adobe.com/devnet/flex/whitepapers/roadmap.html
●   Adobe Flashplayer Roadmap,
    http://www.adobe.com/devnet/flashplatform/whitepapers/roadmap.html
●   Masuland „Login Example“, http://code.google.com/p/masuland/wiki/LoginExample

Contenu connexe

Tendances

The story behind PF2014 - Cordova
The story behind PF2014 - CordovaThe story behind PF2014 - Cordova
The story behind PF2014 - CordovaJuraj Michálek
 
HTML & Browsers
HTML & BrowsersHTML & Browsers
HTML & Browsersdynamis
 
How browser accessibility can enhance safe driving (AGL Summit Nov 2020)
How browser accessibility can enhance safe driving (AGL Summit Nov 2020)How browser accessibility can enhance safe driving (AGL Summit Nov 2020)
How browser accessibility can enhance safe driving (AGL Summit Nov 2020)Igalia
 
Behavior Driven Development with Drupal
Behavior Driven Development with DrupalBehavior Driven Development with Drupal
Behavior Driven Development with DrupalAlexandru Badiu
 
Front-End 개발의 괜찮은 선택 ES6 & React
Front-End 개발의 괜찮은 선택  ES6 & ReactFront-End 개발의 괜찮은 선택  ES6 & React
Front-End 개발의 괜찮은 선택 ES6 & React지수 윤
 
Seven ways to be a happier JavaScript developer - NDC Oslo
Seven ways to be a happier JavaScript developer - NDC OsloSeven ways to be a happier JavaScript developer - NDC Oslo
Seven ways to be a happier JavaScript developer - NDC OsloChristian Heilmann
 
Web Technologies
Web TechnologiesWeb Technologies
Web Technologiesdynamis
 
Enterprise makeover. Be a good web citizen, deliver continuously and change y...
Enterprise makeover. Be a good web citizen, deliver continuously and change y...Enterprise makeover. Be a good web citizen, deliver continuously and change y...
Enterprise makeover. Be a good web citizen, deliver continuously and change y...Mateusz Kwasniewski
 
Develop, Debug, Learn? - Dotjs2019
Develop, Debug, Learn? - Dotjs2019Develop, Debug, Learn? - Dotjs2019
Develop, Debug, Learn? - Dotjs2019Christian Heilmann
 
Angular 1.x reloaded: improve your app now! and get ready for 2.0
Angular 1.x reloaded:  improve your app now! and get ready for 2.0Angular 1.x reloaded:  improve your app now! and get ready for 2.0
Angular 1.x reloaded: improve your app now! and get ready for 2.0Carlo Bonamico
 
Frontend Monoliths: Run if you can!
Frontend Monoliths: Run if you can!Frontend Monoliths: Run if you can!
Frontend Monoliths: Run if you can!Jonas Bandi
 
Do Try This At Home
Do Try This At HomeDo Try This At Home
Do Try This At Homebdillard
 
Firefox Developer Tools
Firefox Developer ToolsFirefox Developer Tools
Firefox Developer Toolsdynamis
 
2013 04-02-server-side-backbone
2013 04-02-server-side-backbone2013 04-02-server-side-backbone
2013 04-02-server-side-backboneSC5.io
 
Firefox os how large open source project works
Firefox os   how large open source project worksFirefox os   how large open source project works
Firefox os how large open source project worksFred Lin
 
HTML5 and web platform
HTML5 and web platformHTML5 and web platform
HTML5 and web platformdynamis
 

Tendances (20)

The story behind PF2014 - Cordova
The story behind PF2014 - CordovaThe story behind PF2014 - Cordova
The story behind PF2014 - Cordova
 
HTML & Browsers
HTML & BrowsersHTML & Browsers
HTML & Browsers
 
How browser accessibility can enhance safe driving (AGL Summit Nov 2020)
How browser accessibility can enhance safe driving (AGL Summit Nov 2020)How browser accessibility can enhance safe driving (AGL Summit Nov 2020)
How browser accessibility can enhance safe driving (AGL Summit Nov 2020)
 
Behavior Driven Development with Drupal
Behavior Driven Development with DrupalBehavior Driven Development with Drupal
Behavior Driven Development with Drupal
 
Front-End 개발의 괜찮은 선택 ES6 & React
Front-End 개발의 괜찮은 선택  ES6 & ReactFront-End 개발의 괜찮은 선택  ES6 & React
Front-End 개발의 괜찮은 선택 ES6 & React
 
Seven ways to be a happier JavaScript developer - NDC Oslo
Seven ways to be a happier JavaScript developer - NDC OsloSeven ways to be a happier JavaScript developer - NDC Oslo
Seven ways to be a happier JavaScript developer - NDC Oslo
 
Web Technologies
Web TechnologiesWeb Technologies
Web Technologies
 
Hinting at a better web
Hinting at a better webHinting at a better web
Hinting at a better web
 
Enterprise makeover. Be a good web citizen, deliver continuously and change y...
Enterprise makeover. Be a good web citizen, deliver continuously and change y...Enterprise makeover. Be a good web citizen, deliver continuously and change y...
Enterprise makeover. Be a good web citizen, deliver continuously and change y...
 
Develop, Debug, Learn? - Dotjs2019
Develop, Debug, Learn? - Dotjs2019Develop, Debug, Learn? - Dotjs2019
Develop, Debug, Learn? - Dotjs2019
 
JS Module Server
JS Module ServerJS Module Server
JS Module Server
 
Angular 1.x reloaded: improve your app now! and get ready for 2.0
Angular 1.x reloaded:  improve your app now! and get ready for 2.0Angular 1.x reloaded:  improve your app now! and get ready for 2.0
Angular 1.x reloaded: improve your app now! and get ready for 2.0
 
Frontend Monoliths: Run if you can!
Frontend Monoliths: Run if you can!Frontend Monoliths: Run if you can!
Frontend Monoliths: Run if you can!
 
Do Try This At Home
Do Try This At HomeDo Try This At Home
Do Try This At Home
 
Firefox Developer Tools
Firefox Developer ToolsFirefox Developer Tools
Firefox Developer Tools
 
A Period of Transition
A Period of TransitionA Period of Transition
A Period of Transition
 
2013 04-02-server-side-backbone
2013 04-02-server-side-backbone2013 04-02-server-side-backbone
2013 04-02-server-side-backbone
 
Firefox os how large open source project works
Firefox os   how large open source project worksFirefox os   how large open source project works
Firefox os how large open source project works
 
HTML5 and web platform
HTML5 and web platformHTML5 and web platform
HTML5 and web platform
 
Flexbox
FlexboxFlexbox
Flexbox
 

Similaire à Apache Flex and the imperfect Web

Front End Development | Introduction
Front End Development | IntroductionFront End Development | Introduction
Front End Development | IntroductionJohnTaieb
 
Rapid and Reliable Developing with HTML5 & GWT
Rapid and Reliable Developing with HTML5 & GWTRapid and Reliable Developing with HTML5 & GWT
Rapid and Reliable Developing with HTML5 & GWTManuel Carrasco Moñino
 
Html5 workshop part 1
Html5 workshop part 1Html5 workshop part 1
Html5 workshop part 1NAILBITER
 
HTML5: An Introduction To Next Generation Web Development
HTML5: An Introduction To Next Generation Web DevelopmentHTML5: An Introduction To Next Generation Web Development
HTML5: An Introduction To Next Generation Web DevelopmentTilak Joshi
 
HTML5 Technical Executive Summary
HTML5 Technical Executive SummaryHTML5 Technical Executive Summary
HTML5 Technical Executive SummaryGilad Khen
 
Web Frameworks of the Future
Web Frameworks of the FutureWeb Frameworks of the Future
Web Frameworks of the Futureelliando dias
 
AstroLabs_Academy_Learning_to_Code-Coding_Bootcamp_Day1.pdf
AstroLabs_Academy_Learning_to_Code-Coding_Bootcamp_Day1.pdfAstroLabs_Academy_Learning_to_Code-Coding_Bootcamp_Day1.pdf
AstroLabs_Academy_Learning_to_Code-Coding_Bootcamp_Day1.pdfFarHanWasif1
 
Building Rich Applications with Appcelerator
Building Rich Applications with AppceleratorBuilding Rich Applications with Appcelerator
Building Rich Applications with AppceleratorMatt Raible
 
Mobile applications for SharePoint using HTML5
Mobile applications for SharePoint using HTML5Mobile applications for SharePoint using HTML5
Mobile applications for SharePoint using HTML5Christian Heindel
 
Seattle bestpractices2010
Seattle bestpractices2010Seattle bestpractices2010
Seattle bestpractices2010Olaseni Odebiyi
 
HTML5 - The Python Angle (PyCon Ireland 2010)
HTML5 - The Python Angle (PyCon Ireland 2010)HTML5 - The Python Angle (PyCon Ireland 2010)
HTML5 - The Python Angle (PyCon Ireland 2010)Kevin Gill
 
HTML5 Webinar - Mind Storm Software
HTML5 Webinar - Mind Storm SoftwareHTML5 Webinar - Mind Storm Software
HTML5 Webinar - Mind Storm SoftwareRomin Irani
 
Bruce Lawson Opera Indonesia
Bruce Lawson Opera IndonesiaBruce Lawson Opera Indonesia
Bruce Lawson Opera Indonesiabrucelawson
 
LATEST_TRENDS_IN_WEBSITE_DEVELOPMENT.pptx
LATEST_TRENDS_IN_WEBSITE_DEVELOPMENT.pptxLATEST_TRENDS_IN_WEBSITE_DEVELOPMENT.pptx
LATEST_TRENDS_IN_WEBSITE_DEVELOPMENT.pptxchitrachauhan21
 
Don't touch the mobile parts
Don't touch the mobile partsDon't touch the mobile parts
Don't touch the mobile partsFrancesco Fullone
 
Afik Gal @alphageeks: Flex Intro
Afik Gal @alphageeks: Flex IntroAfik Gal @alphageeks: Flex Intro
Afik Gal @alphageeks: Flex IntroAlphageeks
 

Similaire à Apache Flex and the imperfect Web (20)

Front End Development | Introduction
Front End Development | IntroductionFront End Development | Introduction
Front End Development | Introduction
 
Echo HTML5
Echo HTML5Echo HTML5
Echo HTML5
 
Universal apps lightning talk
Universal apps lightning talk Universal apps lightning talk
Universal apps lightning talk
 
Rapid and Reliable Developing with HTML5 & GWT
Rapid and Reliable Developing with HTML5 & GWTRapid and Reliable Developing with HTML5 & GWT
Rapid and Reliable Developing with HTML5 & GWT
 
Html5 workshop part 1
Html5 workshop part 1Html5 workshop part 1
Html5 workshop part 1
 
HTML5: An Introduction To Next Generation Web Development
HTML5: An Introduction To Next Generation Web DevelopmentHTML5: An Introduction To Next Generation Web Development
HTML5: An Introduction To Next Generation Web Development
 
HTML5 Technical Executive Summary
HTML5 Technical Executive SummaryHTML5 Technical Executive Summary
HTML5 Technical Executive Summary
 
Web Frameworks of the Future
Web Frameworks of the FutureWeb Frameworks of the Future
Web Frameworks of the Future
 
AstroLabs_Academy_Learning_to_Code-Coding_Bootcamp_Day1.pdf
AstroLabs_Academy_Learning_to_Code-Coding_Bootcamp_Day1.pdfAstroLabs_Academy_Learning_to_Code-Coding_Bootcamp_Day1.pdf
AstroLabs_Academy_Learning_to_Code-Coding_Bootcamp_Day1.pdf
 
What is HTML 5?
What is HTML 5?What is HTML 5?
What is HTML 5?
 
Building Rich Applications with Appcelerator
Building Rich Applications with AppceleratorBuilding Rich Applications with Appcelerator
Building Rich Applications with Appcelerator
 
Mobile applications for SharePoint using HTML5
Mobile applications for SharePoint using HTML5Mobile applications for SharePoint using HTML5
Mobile applications for SharePoint using HTML5
 
Seattle bestpractices2010
Seattle bestpractices2010Seattle bestpractices2010
Seattle bestpractices2010
 
Swf search final
Swf search finalSwf search final
Swf search final
 
HTML5 - The Python Angle (PyCon Ireland 2010)
HTML5 - The Python Angle (PyCon Ireland 2010)HTML5 - The Python Angle (PyCon Ireland 2010)
HTML5 - The Python Angle (PyCon Ireland 2010)
 
HTML5 Webinar - Mind Storm Software
HTML5 Webinar - Mind Storm SoftwareHTML5 Webinar - Mind Storm Software
HTML5 Webinar - Mind Storm Software
 
Bruce Lawson Opera Indonesia
Bruce Lawson Opera IndonesiaBruce Lawson Opera Indonesia
Bruce Lawson Opera Indonesia
 
LATEST_TRENDS_IN_WEBSITE_DEVELOPMENT.pptx
LATEST_TRENDS_IN_WEBSITE_DEVELOPMENT.pptxLATEST_TRENDS_IN_WEBSITE_DEVELOPMENT.pptx
LATEST_TRENDS_IN_WEBSITE_DEVELOPMENT.pptx
 
Don't touch the mobile parts
Don't touch the mobile partsDon't touch the mobile parts
Don't touch the mobile parts
 
Afik Gal @alphageeks: Flex Intro
Afik Gal @alphageeks: Flex IntroAfik Gal @alphageeks: Flex Intro
Afik Gal @alphageeks: Flex Intro
 

Dernier

Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesZilliz
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 

Dernier (20)

Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector Databases
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 

Apache Flex and the imperfect Web

  • 1. Apache Flex ... … and the imperfect Web Presented by Sebastian Mohr July 5th 2012, Berlin
  • 2. About me ● HTML / Javascript Developer (2000 - 2006) ● Flex Developer since Summer 2006 ● Mate, Robotlegs, Parsley, Spring AS, Swiz ● Study of Cognitive Science, Osnabrueck ● W3C Fan, Semantic Web, Open Web Technologies ● Apache Flex PPMC since November 2011 Homepage: http://www.masuland.com/ Twitter: http://twitter.com/masuland LinkedIn: http://www.linkedin.com/in/masuland
  • 3. The imperfect Web Gary Oldman explains why “Graffiti“ - or the “imperfect Web“ respectively - is great for the world ... Watch video: http://www.youtube.com/watch?v=Tt1W0F0yObg
  • 4. The imperfect Web is: ● Webbrowsers: Firefox, Chrome, Safari, Opera ● Markups: XHTML, SVG, SMIL, MXML (Flex), XAML (Silverlight), FXML (JavaFX), WebGL, X3D, XForm, XPath, XML, XSLT, XQuery, RDF, OWL, ... ● Script-Engines: ECMAScript, Javascript, Actionscript, JScript ● Ajax & JS-Libs: JQuery, ExtJS, Dojo, Prototype, MochiKit, PhoneGap, Rhomobile, Sencha, ... ● Devices: Desktop, Mobile, TV ● Mobile OS: iOS, Android, Windows Mobile
  • 5. Web History (2005 - 2011) Read article: http://code.google.com/p/masuland/wiki/WhatsWrongWithFlex
  • 6. The Web Today HTML / Flashplayer Silverlight 5 Java Javascript 11 (Applets) Runtime Dependent on GPU support GPU support, GPU support, Features Web Browser Multithreading Multithreading Markup XHTML 1.1, FXG 2.0, MXML XAML FXML Language HTML5, SVG Scripting Javascript Actionscript JScript Java, JRuby, Language Groovy Interaction Adobe Muse, Adobe Flash Microsoft JavaFX Scene Design Tools Adobe Edge, Catalyst, Adobe Expression Builder Adobe Proto Flash Pro Blend Developer Eclipse, Adobe Adobe Flash Microsoft Visual Eclipse Tools Dreamweaver Pro, Adobe Studio Flash Builder Read article: http://code.google.com/p/masuland/wiki/WhatsWrongWithFlex
  • 7. Thank you Tim for ... +++ HTTP +++ www.domain.com http://www.emca-international.org --- HTML http://www.w3c.org Tim Berners-Lee, http://en.wikipedia.org/wiki/Tim_Berners-Lee
  • 8. Flash Everywhere? ● Adobe AIR 4+ for Mobile ● Flashplayer 12+ with Multithreading and better GPU- support ● Flashplayer 12+ great for Flash- Games and Apache Flex ● Adobe Open Screen Project? ● Faster Mobile-CPUs each year → Flashplayer 12+ for Mobile again? ● Flash-2-HTML Converter?
  • 9. What should we occupy? Occupy Wallstreet http://www.occupywallst.org Occupy Flash & Occupy HTML 5 http://www.occupyflash.org http://www.occupyhtml.org Occupy W3C & Occupy ECMA Int. Not occupied yet: Not occupied yet: http://www.w3c.org http://www.emca-international.org Read article: http://masuland.wordpress.com/2011/11/28/where-could-flash-coding-be-in-the-year-2050/
  • 10. Where is Apache Flex in 2050? ● Apache Flex might not be necessary if: ● Single Webbrowser / Webengine (Webkit?) ● RIA-HTML (Audio, Video, 3D, Text) (HTML 6?) ● Binary HTML (like SWF?) ● Semantic Web interface included into HTML ● Stronger Javascript / ECMAScript - Engine – Typed Objects – Packages / OOP Read article: http://masuland.wordpress.com/2011/11/28/where-could-flash-coding-be-in-the-year-2050/
  • 11. Spoon Foundation Ecosystem See presentation by Justin Mclean: https://docs.google.com/presentation/pub?id=1SsVcr2SLkBJMXk1N6U3-HpxloSUUa4pBX-2f4GrRL5M#slide=id.p57
  • 12. Personal Survey (1) Which Model-View-Controller (MVC) Microarchitectures have you used in your Flex projects? See personal survey: http://code.google.com/p/masuland/wiki/Statistics
  • 13. Personal Survey (2) How many MXML files do you have in your latest Flex projects? See personal survey: http://code.google.com/p/masuland/wiki/Statistics
  • 14. Goals for Apache Flex ● Strengthening large-scale Flex applications ● Highly productive and fast development environment ● Flex code should be easily mergeable across different flex projects worldwide ● Flex code should be based on coding standards ● Flex code should be sustainable and easily maintainable ● There should be more highly skilled Flex Developers around ● Developer tools should be easy to be used and should help the designer/developer to be more productive ● The Flashplayer - "Actionscript Virtual Machine" (AVM) respectively - should be as powerful as the "Java Virtual Machine" (JVM) ● The Adobe Flash Catalyst should be as powerful as Microsoft Expression Blend Read article: http://code.google.com/p/masuland/wiki/WhatsWrongWithFlex
  • 15. Masuland „Login Example“ for Web, Desktop and Mobile See code examples: http://code.google.com/p/masuland/wiki/LoginExample
  • 16. Is coding „fun“? At the beginning … probably true! ● Coding is work ● Goal-Driven Development … work, work, work, work, work, work -> HAPPY ● Social-Driven Development – mental hygiene & social hygiene ● An architecture often proves its quality at the end of the project ● Desirable: Less frustrations and high success/motivation while working on bugs and features of your app ● The more features in your app, the more dependencies you have to deal with ● Testability of your code ● Optimal development environment and configuration ● Anarchy vs. coding conventions / design patterns ● Artistic freedom of your software engineers
  • 17. Apache Flex Layers Read article: http://code.google.com/p/masuland/wiki/WhatsWrongWithFlex
  • 18. Architectural Pattern / Nanoarchitectures See Nanoarchitectures: http://code.google.com/p/masuland/wiki/Nanoarchitecture
  • 19. Application Development Procedure 1. Application Code that shows the working application with source code available 2. Specification Document which explains the purpose of the application and collects all its requirements 3. Application Coding Standard which consists of a collection of Architectural Patterns and underlying Coding Conventions in the code 3.1. Architectural Patterns just like "Model-View- Controller" (MVC), "Model-View-Presenter" (MVP), "Presentation Model" (PM) ... etc. 3.2. Coding Conventions on the basis of Flex 3 or Flex 4 Read definition page: http://code.google.com/p/masuland/wiki/ApplicationDevelopmentProcedure
  • 22. References ● Apache Flex Community Revue July 2012, http://www.spoon.as/2012/apache-revue-july-2012/ ● Apache Flex 4.8 Release Candidate, http://people.apache.org/~cframpton/ApacheFlexRC/current/ ● Apache Flex News, http://incubator.apache.org/flex/news.html ● Apache Flex Wiki, https://cwiki.apache.org/confluence/display/FLEX/Apache+Flex+(incubating)+Wiki ● Apache Flex Mailing Lists, http://incubator.apache.org/flex/mailing-lists.html ● Apache Flex JIRA, https://issues.apache.org/jira/browse/FLEX ● Apache Flex Blog, http://blogs.apache.org/flex/ ● Adobe Flex, http://sourceforge.net/adobe/flexsdk/wiki/About/ ● Adobe Flex Roadmap, http://www.adobe.com/devnet/flex/whitepapers/roadmap.html ● Adobe Flashplayer Roadmap, http://www.adobe.com/devnet/flashplatform/whitepapers/roadmap.html ● Masuland „Login Example“, http://code.google.com/p/masuland/wiki/LoginExample