The document appears to be an agenda for a presentation on Rich Internet Applications (RIAs). The agenda includes discussions on best practices and pitfalls for developing RIAs, new features in upcoming Flash Platform runtimes, building iPhone apps with Flash CS5, and Model Driven Development. It also lists some potential prizes or "giveaways" at the event. Key topics to be covered are RIA dos and don'ts, the Flash innovation timeline, and building iPhone apps using Flash.
Não conseguiu ir ao Connect 2017? esta apresentação mostra o que aconteceu lá eo que foi apresentado, além de uma análise de de nossos clientes e do mercado
Mobile to mainframe - The Challenges and Best Practices of Enterprise DevOps IBM UrbanCode Products
Delivering software is complex. Systems being developed are made up of multiple components, which in turn interact with other systems, services, application servers, data sources and invocations of 3rd party systems. In an Enterprise this complexity is further enhanced by the cross-platform nature of the infrastructure typical enterprises have. While the customers may be interacting with Systems of Engagement using Mobile and Web Apps, the core capabilities of the enterprise that the customers access are in Systems of Record that are running on large datacenters and more than likely Mainframe systems. Keeping these complex systems up and running and constantly updated with the latest capabilities is a task that requires constant coordination between the lines of business, various cross-platform development, QA and operations teams.
DevOps addresses these development and deployment challenges. The goal of DevOps is to align Dev and Ops by introducing a set of principles and practices such as continuous integration and continuous delivery. Cross-platform enterprise Systems take the need for these practices up a level due to their inherent complexity and distributed nature. Such systems need even more care in applying DevOps principles as there are multiple platforms to be targeted, in a coordinated manner, each with its own requirements, quirks, and nuanced needs. This talk takes a look at the DevOps challenges specific to Cross-platform Enterprise Systems and present Best Practices to address them.
Não conseguiu ir ao Connect 2017? esta apresentação mostra o que aconteceu lá eo que foi apresentado, além de uma análise de de nossos clientes e do mercado
Mobile to mainframe - The Challenges and Best Practices of Enterprise DevOps IBM UrbanCode Products
Delivering software is complex. Systems being developed are made up of multiple components, which in turn interact with other systems, services, application servers, data sources and invocations of 3rd party systems. In an Enterprise this complexity is further enhanced by the cross-platform nature of the infrastructure typical enterprises have. While the customers may be interacting with Systems of Engagement using Mobile and Web Apps, the core capabilities of the enterprise that the customers access are in Systems of Record that are running on large datacenters and more than likely Mainframe systems. Keeping these complex systems up and running and constantly updated with the latest capabilities is a task that requires constant coordination between the lines of business, various cross-platform development, QA and operations teams.
DevOps addresses these development and deployment challenges. The goal of DevOps is to align Dev and Ops by introducing a set of principles and practices such as continuous integration and continuous delivery. Cross-platform enterprise Systems take the need for these practices up a level due to their inherent complexity and distributed nature. Such systems need even more care in applying DevOps principles as there are multiple platforms to be targeted, in a coordinated manner, each with its own requirements, quirks, and nuanced needs. This talk takes a look at the DevOps challenges specific to Cross-platform Enterprise Systems and present Best Practices to address them.
This session will describe how CICS TS v5.1 can quickly and simply support the creation of modern Mobile Ready interfaces to existing applications. The session will introduce the key technologies including the use of Liberty technology in CICS TS. We will work through a simple scenario to demonstrate the key points. The session will cover the core supporting technologies include in CICS TS v5.1 as well as the Dynamic Scripting Feature Pack and content included in the CICS TS v5.2 Open Beta.
Infrastructure Fitness and Design Simplicity for IBM Mobile ConnectBill Malchisky Jr.
Given at IBM Connect 2013, 31 January 2013
Most companies are unaware of IBM Mobile Connect - the hidden authentication jewel in the IBM Collaboration portfolio. No matter if you want to start with it or if you've learned in last year's conference how to setup IBM Mobile Connect - it's now time for optimization and tuning. This session will provide you a deep dive on different installation considerations and deployment design. Join to get real-world information about topics like how to install IMC on Linux 64bit, specific problems of different operating systems and how to setup IMC in High Availability. Last but not least we'll introduce to you the new capabilities of IMC 6.1.5 which enable it to be used with Sametime Mobile, Connections Mobile and Traveler High Availability.
Soccnx III - Using Social Controls in XPagesLetsConnect
Speakers: Martin Donnelly & Tony McGuckin
There is a lot of talk about "social" these days - social applications, social business, social media, social services and so on. This session uses a definition of "social" in the context of IBM Domino XPages, custom application development and IBM Domino/IBM XWork Server. It describes new social requirements, maps them to technologies and shows how the XPages Extension Library helps you create powerful social solutions to integrate with IBM Connections and other social providers within your custom application development. People are connected more than ever, blurring the line between business and private life. For example often employees have Twitter accounts that they use to tweet both private and business messages. Many employees use their private smartphones to access business applications and data. Furthermore, information is scattered more than ever, within enterprises and in public social networks, within on premise systems and on the cloud. The corporate inbox is no longer only the mail inbox, new notifications also come in via IBM Connections, Facebook, Google+, Twitter, LinkedIn, etc! The XPages Extension Library provides utilities that make integration of Social APIs really easy, including a new storage facility for OAuth application and consumer tokens. IBM Domino XPages is on the fast track to help make your applications social. Participate in this session to see the latest contributions to the XPages Extension Library for Social Business. XPages is ready today, are you?
Modern Enterprise Software Systems (MESS) is all
about envisioning, developing, managing and evolving
enterprise applications to fulfill business requirements. This
may entail many challenges like rapidly changing business
scenario, increase in complexity, shorter time to market and
business agility. In order to deal with this natural evolution,
achieving modularity across MESS is essential. In this paper,
we describe by way of an example application, some of the
common problems encountered while delivering & managing
enterprise software. We demonstrate that one of the root causes
for these is inadequate support for modularity at the physical
level viz. packaging & deployment. We look at the different
options available for extending the modularity across packaging
and deployment e.g. Impala and Open Service Gateway
initiative (OSGi). Based on our explorations and experiments
we provide a comparison between the two. We conclude the
paper with a note on the future directions for physical
modularity.
In this session, you'll learn techniques for extending your IBM Websphere Portal to mobile applications across iOS and Android devices. Experts from our User Experience team will demonstrate how to easily build IBM Worklight applications that integrate with personalization and web content features provided by Portal. You'll see how to use tools such as IBM Web Experience Factory and IBM Web Content Manager and how to leverage capabilities such as Portlet Services and mobile themes to develop a mobile application running on IBM Worklight in both online and offline modes. At the end of this session, you will be ready to take advantage of the IBM Worklight entitlement provided by IBM to take your Portal to the mobile world!
Securing the Automation of Application Deployment with UrbanCode DeployIBM UrbanCode Products
If you are contemplating the automation of application deployment or already doing it today with UrbanCode Deploy, you want to know that the proper checks and approvals are occurring at the right stages in your deployment process. These approvals can ensure that an application meets all requirements before it can deployed to an environment. This risk is that unsecured applications are vulnerable to someone inadvertently changing them or running them too soon or at the wrong time.
In this session you learn how to create teams and roles for a project and set up notifications and gates. You learn how to create authentication and authorization realms and permissions.
This session will describe how CICS TS v5.1 can quickly and simply support the creation of modern Mobile Ready interfaces to existing applications. The session will introduce the key technologies including the use of Liberty technology in CICS TS. We will work through a simple scenario to demonstrate the key points. The session will cover the core supporting technologies include in CICS TS v5.1 as well as the Dynamic Scripting Feature Pack and content included in the CICS TS v5.2 Open Beta.
Infrastructure Fitness and Design Simplicity for IBM Mobile ConnectBill Malchisky Jr.
Given at IBM Connect 2013, 31 January 2013
Most companies are unaware of IBM Mobile Connect - the hidden authentication jewel in the IBM Collaboration portfolio. No matter if you want to start with it or if you've learned in last year's conference how to setup IBM Mobile Connect - it's now time for optimization and tuning. This session will provide you a deep dive on different installation considerations and deployment design. Join to get real-world information about topics like how to install IMC on Linux 64bit, specific problems of different operating systems and how to setup IMC in High Availability. Last but not least we'll introduce to you the new capabilities of IMC 6.1.5 which enable it to be used with Sametime Mobile, Connections Mobile and Traveler High Availability.
Soccnx III - Using Social Controls in XPagesLetsConnect
Speakers: Martin Donnelly & Tony McGuckin
There is a lot of talk about "social" these days - social applications, social business, social media, social services and so on. This session uses a definition of "social" in the context of IBM Domino XPages, custom application development and IBM Domino/IBM XWork Server. It describes new social requirements, maps them to technologies and shows how the XPages Extension Library helps you create powerful social solutions to integrate with IBM Connections and other social providers within your custom application development. People are connected more than ever, blurring the line between business and private life. For example often employees have Twitter accounts that they use to tweet both private and business messages. Many employees use their private smartphones to access business applications and data. Furthermore, information is scattered more than ever, within enterprises and in public social networks, within on premise systems and on the cloud. The corporate inbox is no longer only the mail inbox, new notifications also come in via IBM Connections, Facebook, Google+, Twitter, LinkedIn, etc! The XPages Extension Library provides utilities that make integration of Social APIs really easy, including a new storage facility for OAuth application and consumer tokens. IBM Domino XPages is on the fast track to help make your applications social. Participate in this session to see the latest contributions to the XPages Extension Library for Social Business. XPages is ready today, are you?
Modern Enterprise Software Systems (MESS) is all
about envisioning, developing, managing and evolving
enterprise applications to fulfill business requirements. This
may entail many challenges like rapidly changing business
scenario, increase in complexity, shorter time to market and
business agility. In order to deal with this natural evolution,
achieving modularity across MESS is essential. In this paper,
we describe by way of an example application, some of the
common problems encountered while delivering & managing
enterprise software. We demonstrate that one of the root causes
for these is inadequate support for modularity at the physical
level viz. packaging & deployment. We look at the different
options available for extending the modularity across packaging
and deployment e.g. Impala and Open Service Gateway
initiative (OSGi). Based on our explorations and experiments
we provide a comparison between the two. We conclude the
paper with a note on the future directions for physical
modularity.
In this session, you'll learn techniques for extending your IBM Websphere Portal to mobile applications across iOS and Android devices. Experts from our User Experience team will demonstrate how to easily build IBM Worklight applications that integrate with personalization and web content features provided by Portal. You'll see how to use tools such as IBM Web Experience Factory and IBM Web Content Manager and how to leverage capabilities such as Portlet Services and mobile themes to develop a mobile application running on IBM Worklight in both online and offline modes. At the end of this session, you will be ready to take advantage of the IBM Worklight entitlement provided by IBM to take your Portal to the mobile world!
Securing the Automation of Application Deployment with UrbanCode DeployIBM UrbanCode Products
If you are contemplating the automation of application deployment or already doing it today with UrbanCode Deploy, you want to know that the proper checks and approvals are occurring at the right stages in your deployment process. These approvals can ensure that an application meets all requirements before it can deployed to an environment. This risk is that unsecured applications are vulnerable to someone inadvertently changing them or running them too soon or at the wrong time.
In this session you learn how to create teams and roles for a project and set up notifications and gates. You learn how to create authentication and authorization realms and permissions.
Content personalisation is becoming more prevalent. A site, it's content and/or it's products, change dynamically according to the specific needs of the user. SEO needs to ensure we do not fall behind of this trend.
Max flash based code quality is there a canary in your coal mine-Xavier Agnetti
Dive into the depths of code quality by learning about the main
rules around dead code, code optimization, security, multi-screen
development as well as language and framework specific smells.
We will explore different techniques to streamline your personal and
team development workflow in regards to code quality and team best
practices by using FlexPMD seamlessly in your development and
continuos integration environments.
Discover how you can tune FlexPMD by modifying and adding custom
rules to reinforce your team practices in a healthy, effective and
transparent manner.
Slides presented at the Webinale in Berlin to open your mind and your eyes on "What is Flash". Amazing projects developed by the Flash community. Innovation is in the DNA of Flash
Slides presented at JAX 2010, in Germany. Technical session on Flex and Java, focused on Interactive dashboard development. More information on my blog: http://www.riagora.com
Goal:
Minimize technical debt, code changes, and rewrites. Show stakeholders and customers the developing or fully-implemented UI as early as possible.
How:
Fake the backend. Then when the UI code is completely done, make the backend real.
bccon-2014 key01 ibm_collaboration_solutions_connect_2014ICS User Group
With the introduction of IBM Notes/Domino 9 Social Edition, 2013 has been a very exciting year across the IBM messaging and collaboration portfolio! You know the business value of our technologies; you've also watched us give you the ability to weave the benefits of social collaboration right into your messaging experience. Now, join us as we hit the highlights of 2013, give you a glimpse of what's just around the corner, and then energize you with where we're heading, next!
Ibm worklight - going from xpages mobile to native mobile applicationsMark Roden
Abstract
In this session John and Mark will demonstrate how an XPages developer can make the simple, practical, logical evolution from XPages to IBM Worklight developer.
Have you ever wondered how to easily integrate a mobile phone native feature set with your corporate web applications? We will show that any XPages developer currently building mobile-accessible websites already has the skillset to build native mobile apps using IBM Worklight. We will cover installation, setup, similarities in designer clients, the test environment, the skills necessary and provide a working example.
You have the skills, you have the knowledge. Your only challenge is to come to the session and understand how to make this work. Go from HTML5 to native in minutes.
Slides presented at the JAX2010 keynote in Germany by Michael CHAIZE, Flash Platform Evangelist for Adobe. Rich Internet Applications developed with Flex and JAVA.
I presented these slides at JAX2010 in Germany to showcase how to develop interactive dashboards with Flex and JAVA. More information on my blog (www.riagora.com).
Abstract:
Batch performance optimization remains a hot topic for many customers, whether merging workloads, supporting growth, removing cost or extending the online day.
This presentation outlines a structured methodology for optimizing the batch window, incorporating techniques written about in a Redbook written by experts from around the world. This methodology is well-structured and draws on information every installation should have access to.
AWS Accra Meetup - Developing Modern Applications in the CloudCobus Bernard
In this talk, we will go over what modern services look like when built for the Cloud and the evolution from the monolith to microservices. It will cover the attributes of a cloud application and why each of the 6 main ones are important. To wrap up the discussion, we will look at why service meshes are popping up everywhere and take a look at what Envoy and AWS AppMesh help solve.
[CPT DevOps Meetup] Developing Modern Applications in the CloudCobus Bernard
Covers the evolution from monoliths to microservices, the properties of modern cloud applications and why we need service meshes. Takes a closer look at Envoy and how AWS AppMesh can provide a managed service mesh.
AWS Jozi Meetup Developing Modern Applications in the CloudCobus Bernard
In this talk, we will go over what modern services look like when built for the Cloud and the evolution from the monolith to microservices. It will cover the attributes of a cloud application and why each of the 6 main ones are important. To wrap up the discussion, we will look at why service meshes are popping up everywhere and take a look at what Envoy and AWS AppMesh help solve.
1) Learn about Myplanet's Headless CMS solution using Gatsby Preview and Contentful’s UI Extensions (https://www.contentful.com/resources/serverless/)
2) their Serverless project with IBM - using Apache OpenWhisk (https://www.ibm.com/cloud/functions)
3) how Myplanet got involved with AWS DeepRacer - a fun way to get started with Reinforcement Learning (RL), and their racing experience at re:Invent DeepRacer League (https://reinvent.awsevents.com/learn/deepracer/)
4) their Machine Learning (ML) research related to finding DeepRacer’s ideal line (https://medium.com/myplanet-musings/the-best-path-a-deepracer-can-learn-2a468a3f6d64).
BONUS: Two TED Talks referenced in the intro
5) When ideas have sex | Matt Ridley | Jul 14, 2010 https://www.ted.com/talks/matt_ridley_when_ideas_have_sex
6) Why The Best Leaders Make Love The Top Priority | Matt Tenney | Dec 5, 2019 https://www.youtube.com/watch?v=qCVoohdyI6I
VIDEO: https://youtu.be/ZH1xxmBNx5k
Epistemic Interaction - tuning interfaces to provide information for AI supportAlan Dix
Paper presented at SYNERGY workshop at AVI 2024, Genoa, Italy. 3rd June 2024
https://alandix.com/academic/papers/synergy2024-epistemic/
As machine learning integrates deeper into human-computer interactions, the concept of epistemic interaction emerges, aiming to refine these interactions to enhance system adaptability. This approach encourages minor, intentional adjustments in user behaviour to enrich the data available for system learning. This paper introduces epistemic interaction within the context of human-system communication, illustrating how deliberate interaction design can improve system understanding and adaptation. Through concrete examples, we demonstrate the potential of epistemic interaction to significantly advance human-computer interaction by leveraging intuitive human communication strategies to inform system design and functionality, offering a novel pathway for enriching user-system engagements.
Enhancing Performance with Globus and the Science DMZGlobus
ESnet has led the way in helping national facilities—and many other institutions in the research community—configure Science DMZs and troubleshoot network issues to maximize data transfer performance. In this talk we will present a summary of approaches and tips for getting the most out of your network infrastructure using Globus Connect Server.
Removing Uninteresting Bytes in Software FuzzingAftab Hussain
Imagine a world where software fuzzing, the process of mutating bytes in test seeds to uncover hidden and erroneous program behaviors, becomes faster and more effective. A lot depends on the initial seeds, which can significantly dictate the trajectory of a fuzzing campaign, particularly in terms of how long it takes to uncover interesting behaviour in your code. We introduce DIAR, a technique designed to speedup fuzzing campaigns by pinpointing and eliminating those uninteresting bytes in the seeds. Picture this: instead of wasting valuable resources on meaningless mutations in large, bloated seeds, DIAR removes the unnecessary bytes, streamlining the entire process.
In this work, we equipped AFL, a popular fuzzer, with DIAR and examined two critical Linux libraries -- Libxml's xmllint, a tool for parsing xml documents, and Binutil's readelf, an essential debugging and security analysis command-line tool used to display detailed information about ELF (Executable and Linkable Format). Our preliminary results show that AFL+DIAR does not only discover new paths more quickly but also achieves higher coverage overall. This work thus showcases how starting with lean and optimized seeds can lead to faster, more comprehensive fuzzing campaigns -- and DIAR helps you find such seeds.
- These are slides of the talk given at IEEE International Conference on Software Testing Verification and Validation Workshop, ICSTW 2022.
Welcome to the first live UiPath Community Day Dubai! Join us for this unique occasion to meet our local and global UiPath Community and leaders. You will get a full view of the MEA region's automation landscape and the AI Powered automation technology capabilities of UiPath. Also, hosted by our local partners Marc Ellis, you will enjoy a half-day packed with industry insights and automation peers networking.
📕 Curious on our agenda? Wait no more!
10:00 Welcome note - UiPath Community in Dubai
Lovely Sinha, UiPath Community Chapter Leader, UiPath MVPx3, Hyper-automation Consultant, First Abu Dhabi Bank
10:20 A UiPath cross-region MEA overview
Ashraf El Zarka, VP and Managing Director MEA, UiPath
10:35: Customer Success Journey
Deepthi Deepak, Head of Intelligent Automation CoE, First Abu Dhabi Bank
11:15 The UiPath approach to GenAI with our three principles: improve accuracy, supercharge productivity, and automate more
Boris Krumrey, Global VP, Automation Innovation, UiPath
12:15 To discover how Marc Ellis leverages tech-driven solutions in recruitment and managed services.
Brendan Lingam, Director of Sales and Business Development, Marc Ellis
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfPaige Cruz
Monitoring and observability aren’t traditionally found in software curriculums and many of us cobble this knowledge together from whatever vendor or ecosystem we were first introduced to and whatever is a part of your current company’s observability stack.
While the dev and ops silo continues to crumble….many organizations still relegate monitoring & observability as the purview of ops, infra and SRE teams. This is a mistake - achieving a highly observable system requires collaboration up and down the stack.
I, a former op, would like to extend an invitation to all application developers to join the observability party will share these foundational concepts to build on:
Essentials of Automations: The Art of Triggers and Actions in FMESafe Software
In this second installment of our Essentials of Automations webinar series, we’ll explore the landscape of triggers and actions, guiding you through the nuances of authoring and adapting workspaces for seamless automations. Gain an understanding of the full spectrum of triggers and actions available in FME, empowering you to enhance your workspaces for efficient automation.
We’ll kick things off by showcasing the most commonly used event-based triggers, introducing you to various automation workflows like manual triggers, schedules, directory watchers, and more. Plus, see how these elements play out in real scenarios.
Whether you’re tweaking your current setup or building from the ground up, this session will arm you with the tools and insights needed to transform your FME usage into a powerhouse of productivity. Join us to discover effective strategies that simplify complex processes, enhancing your productivity and transforming your data management practices with FME. Let’s turn complexity into clarity and make your workspaces work wonders!
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfPeter Spielvogel
Building better applications for business users with SAP Fiori.
• What is SAP Fiori and why it matters to you
• How a better user experience drives measurable business benefits
• How to get started with SAP Fiori today
• How SAP Fiori elements accelerates application development
• How SAP Build Code includes SAP Fiori tools and other generative artificial intelligence capabilities
• How SAP Fiori paves the way for using AI in SAP apps
Pushing the limits of ePRTC: 100ns holdover for 100 daysAdtran
At WSTS 2024, Alon Stern explored the topic of parametric holdover and explained how recent research findings can be implemented in real-world PNT networks to achieve 100 nanoseconds of accuracy for up to 100 days.
Accelerate your Kubernetes clusters with Varnish CachingThijs Feryn
A presentation about the usage and availability of Varnish on Kubernetes. This talk explores the capabilities of Varnish caching and shows how to use the Varnish Helm chart to deploy it to Kubernetes.
This presentation was delivered at K8SUG Singapore. See https://feryn.eu/presentations/accelerate-your-kubernetes-clusters-with-varnish-caching-k8sug-singapore-28-2024 for more details.
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...UiPathCommunity
💥 Speed, accuracy, and scaling – discover the superpowers of GenAI in action with UiPath Document Understanding and Communications Mining™:
See how to accelerate model training and optimize model performance with active learning
Learn about the latest enhancements to out-of-the-box document processing – with little to no training required
Get an exclusive demo of the new family of UiPath LLMs – GenAI models specialized for processing different types of documents and messages
This is a hands-on session specifically designed for automation developers and AI enthusiasts seeking to enhance their knowledge in leveraging the latest intelligent document processing capabilities offered by UiPath.
Speakers:
👨🏫 Andras Palfi, Senior Product Manager, UiPath
👩🏫 Lenka Dulovicova, Product Program Manager, UiPath
Securing your Kubernetes cluster_ a step-by-step guide to success !KatiaHIMEUR1
Today, after several years of existence, an extremely active community and an ultra-dynamic ecosystem, Kubernetes has established itself as the de facto standard in container orchestration. Thanks to a wide range of managed services, it has never been so easy to set up a ready-to-use Kubernetes cluster.
However, this ease of use means that the subject of security in Kubernetes is often left for later, or even neglected. This exposes companies to significant risks.
In this talk, I'll show you step-by-step how to secure your Kubernetes cluster for greater peace of mind and reliability.
3. Agenda...
RIAs dos and don’ts
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
2
4. Agenda...
RIAs dos and don’ts
What’s coming in the new Flash Platform runtimes
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
2
5. Agenda...
RIAs dos and don’ts
What’s coming in the new Flash Platform runtimes
Building iPhone apps with Flash CS5
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
2
6. Agenda...
RIAs dos and don’ts
What’s coming in the new Flash Platform runtimes
Building iPhone apps with Flash CS5
Model Driven Development
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
2
7. Agenda...
RIAs dos and don’ts
What’s coming in the new Flash Platform runtimes
Building iPhone apps with Flash CS5
Model Driven Development
Some giveaways....
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
2
8. Agenda...
RIAs dos and don’ts
What’s coming in the new Flash Platform runtimes
Building iPhone apps with Flash CS5
Model Driven Development
Some giveaways....
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
2
11. Best and Worst practices building RIAS
By James Ward ( Adobe Flex Evangelist ) and
Josh Holmes ( MSFT UX Evangelist )
Presented at Web 2.0 2009 Expo
http://www.jamesward.com
http://www.joshholmes.com
http://www.slideshare.net/joshholmes/best-
and-worst-practices-building-ria-with-adobe-
and-microsoft
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
4
12. Best practices building RIAs...
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
5
13. Best practices building RIAs...
1. Form follows function (MVC vs MVP)
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
5
14. Best practices building RIAs...
1. Form follows function (MVC vs MVP)
2. Leverage Design Tenets
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
5
15. Best practices building RIAs...
1. Form follows function (MVC vs MVP)
2. Leverage Design Tenets
3. Use the right delity level
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
5
16. Best practices building RIAs...
1. Form follows function (MVC vs MVP)
2. Leverage Design Tenets
3. Use the right delity level
4. What do your users and customers
want?
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
5
17. Best practices building RIAs...
1. Form follows function (MVC vs MVP)
2. Leverage Design Tenets
3. Use the right delity level
4. What do your users and customers
want?
5. Ease of use or power users? Both
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
5
18. Best practices building RIAs...
1. Form follows function (MVC vs MVP)
2. Leverage Design Tenets
3. Use the right delity level
4. What do your users and customers
want?
5. Ease of use or power users? Both
6. Are you thinking about concurrency?
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
5
19. Best practices building RIAs...
1. Form follows function (MVC vs MVP)
2. Leverage Design Tenets
3. Use the right delity level
4. What do your users and customers
want?
5. Ease of use or power users? Both
6. Are you thinking about concurrency?
7. Balance the computing load
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
5
20. Best practices building RIAs...
1. Form follows function (MVC vs MVP)
2. Leverage Design Tenets
3. Use the right delity level
4. What do your users and customers
want?
5. Ease of use or power users? Both
6. Are you thinking about concurrency?
7. Balance the computing load
8. Security vs Usability
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
5
21. Best practices building RIAs...
1. Form follows function (MVC vs MVP)
2. Leverage Design Tenets
3. Use the right delity level
4. What do your users and customers
want?
5. Ease of use or power users? Both
6. Are you thinking about concurrency?
7. Balance the computing load
8. Security vs Usability
9. Maintenance and Versioning
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
5
22. Best practices building RIAs...
1. Form follows function (MVC vs MVP)
2. Leverage Design Tenets
3. Use the right delity level
4. What do your users and customers
want?
5. Ease of use or power users? Both
6. Are you thinking about concurrency?
7. Balance the computing load
8. Security vs Usability
9. Maintenance and Versioning
10. Contextual applications
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
5
23. Worst practices building RIAs...
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
6
24. Worst practices building RIAs...
1. Not a RIA application...don’t use RIA technology
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
6
25. Worst practices building RIAs...
1. Not a RIA application...don’t use RIA technology
2. Remember the environment...users REFRESH!!!
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
6
26. Worst practices building RIAs...
1. Not a RIA application...don’t use RIA technology
2. Remember the environment...users REFRESH!!!
3. HTML CAN NOT DO THAT
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
6
27. Worst practices building RIAs...
1. Not a RIA application...don’t use RIA technology
2. Remember the environment...users REFRESH!!!
3. HTML CAN NOT DO THAT
4. Do you really have that much bandwidth?
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
6
28. Worst practices building RIAs...
1. Not a RIA application...don’t use RIA technology
2. Remember the environment...users REFRESH!!!
3. HTML CAN NOT DO THAT
4. Do you really have that much bandwidth?
5. Animation-sickness
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
6
29. Worst practices building RIAs...
1. Not a RIA application...don’t use RIA technology
2. Remember the environment...users REFRESH!!!
3. HTML CAN NOT DO THAT
4. Do you really have that much bandwidth?
5. Animation-sickness
6. Have you heard the word “framework”?
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
6
30. Worst practices building RIAs...
1. Not a RIA application...don’t use RIA technology
2. Remember the environment...users REFRESH!!!
3. HTML CAN NOT DO THAT
4. Do you really have that much bandwidth?
5. Animation-sickness
6. Have you heard the word “framework”?
7. The wild developer (SC, TDD, CI)
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
6
31. Worst practices building RIAs...
1. Not a RIA application...don’t use RIA technology
2. Remember the environment...users REFRESH!!!
3. HTML CAN NOT DO THAT
4. Do you really have that much bandwidth?
5. Animation-sickness
6. Have you heard the word “framework”?
7. The wild developer (SC, TDD, CI)
8. Too many containers
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
6
32. Worst practices building RIAs...
1. Not a RIA application...don’t use RIA technology
2. Remember the environment...users REFRESH!!!
3. HTML CAN NOT DO THAT
4. Do you really have that much bandwidth?
5. Animation-sickness
6. Have you heard the word “framework”?
7. The wild developer (SC, TDD, CI)
8. Too many containers
9. Complex rendering
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
6
33. Worst practices building RIAs...
1. Not a RIA application...don’t use RIA technology
2. Remember the environment...users REFRESH!!!
3. HTML CAN NOT DO THAT
4. Do you really have that much bandwidth?
5. Animation-sickness
6. Have you heard the word “framework”?
7. The wild developer (SC, TDD, CI)
8. Too many containers
9. Complex rendering
10. Fanatic or Pragmatic?
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
6
34. Worst practices building RIAs...
1. Not a RIA application...don’t use RIA technology
2. Remember the environment...users REFRESH!!!
3. HTML CAN NOT DO THAT
4. Do you really have that much bandwidth?
5. Animation-sickness
6. Have you heard the word “framework”?
7. The wild developer (SC, TDD, CI)
8. Too many containers
9. Complex rendering
10. Fanatic or Pragmatic?
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
6
35. RIA Problems you never expected ( by Kevin Hoyt )
Rendering performance o f virtual Lists
Creation Queuing of UI
Character Formats (XML, SOAP, JSON, Binary)
Handling Large Data Sets ( Implicit Paging )
RPC Spaghetti Code vs Data driven development
Data Synchronization
Operational Efficiency
Service Versioning
Service Security ( security a feature )
http://blog.kevinhoyt.org
http://tv.adobe.com
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
7
38. Multiscreen
Content and
Applications
FLASH PLATFORM
TOOLS FRAMEWORK SERVERS SERVICES CLIENTS
9
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
9
39. Multiscreen
Content and
Applications
FLASH PLATFORM
TOOLS FRAMEWORK
Flash Flash Flex
Pro Catalyst SERVERS SERVICES CLIENTS
Flash Builder
Creative Suite
9
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
9
40. Multiscreen
Content and
Applications
FLASH PLATFORM
TOOLS FRAMEWORK SERVERS
Flash Flash Flex Flash Media
Pro Catalyst Server Family SERVICES CLIENTS
Flash Builder
LiveCycle
Server
Creative Suite ColdFusion
9
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
9
41. Multiscreen
Content and
Applications
FLASH PLATFORM
TOOLS FRAMEWORK SERVERS SERVICES
Flash Flash Flex Flash Media Flash
Pro Catalyst Server Family Platform CLIENTS
Services
Flash Builder
LiveCycle
Server
Creative Suite ColdFusion
9
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
9
42. Multiscreen
Content and
FLASH PLATFORM
Applications
SERVICES
LC Collaboration
Distribution
FLASH PLATFORM
TOOLS FRAMEWORK SERVERS SERVICES
Flash Flash
Payment
Flex Flash Media Flash
Pro Catalyst Server Family Platform CLIENTS
Services
Social
Flash Builder
LiveCycle
Server
Creative Suite ColdFusion
9
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
9
43. Multiscreen
Content and
Applications
FLASH PLATFORM
TOOLS FRAMEWORK SERVERS SERVICES
Flash Flash Flex Flash Media Flash
Pro Catalyst Server Family Platform CLIENTS
Services
Flash Builder
LiveCycle
Server
Analytics &
Creative Suite ColdFusion Optimization
9
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
9
44. Multiscreen
Content and
Applications
FLASH PLATFORM
TOOLS FRAMEWORK SERVERS SERVICES CLIENTS
Flash Flash Flex Flash Media Flash Flash
Pro Catalyst Server Family Platform Player
Services
Flash Builder
LiveCycle AIR
Server
Analytics &
Creative Suite ColdFusion Optimization
9
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
9
49. Flash Player 10.1 optimized for mobile and media
Double the number of operating systems reached
New options for media delivery and monetization
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
13
50. Flash Player 10.1 is designed for mobility
Performance Device integration
Graphics hardware acceleration Multi-touch and gestures
Audio/video hardware decoding Accelerometer
Memory, battery & CPU Screen orientation
optimizations
Mobile text input (virtual keyboards)
Optimized SWF Management
Porting kit for OSP partners
Sleep mode
Increased software rendering performance on mobile over 87%
Reduced memory consumption on mobile by over 55%
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
14
51. Automatic Memory Reduction
15
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
15
52. Automatic Memory Reduction
40MB
Gamma Bros 0
47MB
Wall-E 0
57MB
FP10 Demo 0
69MB
Flex Photo Album 0
13MB
Yahoo Ad 0
Flash Player 10
32MB
Flex Data Grid 0
15
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
15
53. Automatic Memory Reduction
40MB
Gamma Bros 0
15MB
47MB
Wall-E 0
26MB
57MB
FP10 Demo 0
23MB
69MB
Flex Photo Album 0
25MB
13MB
Yahoo Ad 0
4MB
Flash Player 10
32MB
Flex Data Grid Flash Player 10.1
0
17MB
15
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
15
54. Battery Usage
Active State
with Video
3.4 hours
16
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
16
55. Battery Usage
Active State Active State
with Video with Animation
3.4 hours 6.5 hours
16
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
16
56. Battery Usage
Active State Active State Low Power
with Video with Animation with Animation
3.4 hours 6.5 hours 14.5 hours
16
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
16
57. Optimized SWF Management
Player manages # of SWFs that load on a page at a time
Based on SWF priority, visibility , and available system resources
New HTML parameter – HasPriority
When page loads, player will load:
HasPriority SWFs
Onscreen SWFs
0x0 and 1x1 SWFs (e.g. helper SWFs)
Other off-screen instances are started when scrolled into view
If system resource limits reached, non-loaded & lower priority
instances revert to “click-to-play”
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
17
58. Multi-Touch and Gestures
New touch event APIs that
expose to AS3 code:
Raw touch events
Native OS gestures
Player performs “hit test” on
all incoming events
Maintains compatibility with
mouse centric content
Generate corresponding mouse events
for the initial touch point
Enables easy upgrade path for existing Flash
content
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
18
59. Globalization Support (GSLib)
New set of ActionScript APIs to
provide locale specific:
Date, time, currency and number formatting
Currency and number parsing
String comparison for sorting or searching
for text
Upper/lower case conversions
Easily create applications that will
display & process data appropriately
for all major world markets
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
19
60. Web mobilization plan
Flex mobile framework
Rapidly build rich applications across platforms & devices
Mobile UI components (List, Button, TextInput, Screens, etc.)
Core Flex framework capabilities optimized for mobile
Design principles and mechanism for creating adaptive UI
Proactive content enablement
Target top tier Flash sites
Flash-enable mobile websites (“m.sites”)
Developer enablement
Technical engagement team
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
20
61. Expanding options for high quality media delivery
Robust content protection (DRM) solution with Flash Access
File-based protection for PCs independent of transmission method –
Progressive, streaming, or download (AIR only).
Various usage rules including Windows output protection
HTTP Streaming
Deliver high-quality live and recorded media using standard HTTP
infrastructure
Full DRM protection with Flash Access
Peer Assisted Networking
Support for live and recorded media or application data
Private groups support in RTMFP
Enable lower cost real time interactive experiences
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
21
62. Enhanced Video Quality of Service
(Requires FMS 3.5.3)
Dynamic Streaming Enhancements
Faster bit rate transition times
Users no longer need to wait for the buffer to play through
Smart Reconnect
Play through buffered data to provide seamless playback of video in spotty network
conditions
Smart Seek
Buffers data to provide faster forward/backwards seeking
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
22
65. Adobe AIR has achieved critical mass since the release in Feb 2008
300,000,000+
AIR Runtime Installations
2,000,000+
Developer Tools Downloads
Broad range of customer applications and adoption
As of September 2008
17
24
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
24
66. Adobe AIR 1.0 : Web applications outside the browser context
Noti cation Branded experiences
Access native functionality Data management Efficient development
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
25
67. Adobe AIR 2.0
Contextual Apps and Desktop Prepare for mobile
Integration Performance improvements
More peripheral support Memory reductions
More exible networking New input methods for devices
Improved native OS integration (e.g. phones & netbooks)
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
26
68. AIR 2.0 new features
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
27
69. AIR 2.0 new features
Mass Storage Detection
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
27
70. AIR 2.0 new features
Mass Storage Detection Improved Socket Support
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
27
71. AIR 2.0 new features
Mass Storage Detection Improved Socket Support
Invoke Native Applications
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
27
72. AIR 2.0 new features
Mass Storage Detection Improved Socket Support
Invoke Native Applications
All FP 10.1 features
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
27
73. AIR 2.0 new features
Mass Storage Detection Improved Socket Support
Invoke Native Applications
All FP 10.1 features Mobile Groundwork
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
27
74. AIR 2.0 new features
Mass Storage Detection Improved Socket Support
Invoke Native Applications Updated Webkit Engine
All FP 10.1 features Mobile Groundwork
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
27
75. AIR 2.0 new features
Mass Storage Detection Improved Socket Support
Invoke Native Applications Updated Webkit Engine
All FP 10.1 features Mobile Groundwork Latest OS Support
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
27
76. Key takeaways
Smartphones adds a new vector to the Flash Platform sustainable competitive
advantage
With FP 10.1, consumers will immediately bene t with access to content
previously not available on smart phones.
Consistent runtimes provide a major productivity boost for developers – but
there is still work to be done to deliver content optimized for the mobile
context.
Adobe AIR 2 introduces fundamental new capabilities for RIA that enable
contextual applications
Access to peripherals and new network topologies
Performance improvements and mobile speci c features
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
28
78. Packager for iPhone
Features:
Package as iPhone app
AIR 2.0 (subset)
Ahead Of Time Compiler for AS3
Geolocation, Screen Orientation, Accelerometer APIs
Multi-Touch, Gesture APIs
Optional GPU support
Limitations:
No interpreter, so no remote SWFs
No H.264, RTMPE
PixelBender
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
30
79. AOT – Ahead of Time ActionScript Compilation
Flash Pro AOT tool
swf.exe
.swf
CS5 .swf
ABC ABC1
compiler SHA1
AS3 ABC1
ABC2
SHA1
AS3
ABC2
LLVM timeline
SWC bitcode
timeline assets
timeline
assets LLVM
assets code gen ARM
Flash runtime
Flash runtime library
library
12
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
31
80. AIR package vs. iPhone .app
.air .app
ARM exe
.swf code Flash assets .swf Flash assets
library
app:/ assets
app:/ assets
app.xml
Info.plist
runtime
9
32
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
32
81. Packager for iPhone: Work ow
ADL
.AIR
(swf, jpg, mp3)
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
33
82. Packager for iPhone: Work ow
ADL
.AIR
(swf, jpg, mp3)
.ipa
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
33
83. Packager for iPhone: Internals
.AIR
(swf, jpg, mp3)
• temp.air package • .app stub creation • .ipa creation
• inc. bundle seed ID • AS3 - > ARM • icons embedded
• inc. App.xml • Asset embedding • certificate signed
• Linked against SDK
34
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
34
84. Packager for iPhone: Internals
.AIR ADT+LLVM
(swf, jpg, mp3)
• temp.air package • .app stub creation • .ipa creation
• inc. bundle seed ID • AS3 - > ARM • icons embedded
• inc. App.xml • Asset embedding • certificate signed
• Linked against SDK
34
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
34
85. Packager for iPhone: Internals
Certi cate
.AIR ADT+LLVM
(swf, jpg, mp3)
• temp.air package • .app stub creation • .ipa creation
• inc. bundle seed ID • AS3 - > ARM • icons embedded
• inc. App.xml • Asset embedding • certificate signed
• Linked against SDK
34
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
34
86. Packager for iPhone: Internals
Certi cate
.AIR ADT+LLVM .ipa
(swf, jpg, mp3)
• temp.air package • .app stub creation • .ipa creation
• inc. bundle seed ID • AS3 - > ARM • icons embedded
• inc. App.xml • Asset embedding • certificate signed
• Linked against SDK
34
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
34
87. Packager for iPhone: Notes
Same applications can run on Flash Player 10.1
Optimization of code is key to success in mobile
Test and re-test core functionality on device
Target the masses, 2nd Gen iPod Touch and iPhone 3G
GPU usage may reduce rendering quality (e.g text
http://2009.max.adobe.com/online/session/402
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
35
89. LiveCycle Data Services 3.0
RemoteObject Producer Consumer Dataservice
NIO Long
Channels
HTTP NIO Polling NIO Streaming RTMP
Polling
Long
AMF Polling Streaming Piggyback
Polling
Messaging Remoting Data Mgmt
Proxy
Services
Pub/Sub RPC Change Tracking
Real Time Push AMF Data Sync
PDF
Adapters
JMS SQL Java Hibernate ColdFusion
WSRP Spring Security
37
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
37
90. Code-Driven Development
Code
•UI controls / formatters / styles
• Calculated elds
• Validation Rules
• Variants (conditional properties)
• Localization
• Security
• Data Retrieval Logic (paging, lazy loading)
• Data Synchronization Logic
Model
•Basic Data Description
Model Server-side code Client-side code
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
38
91. Modeling: LCDS Model-Driven Development
Code
• Ad-hoc customization
• View composition
• External business/validation logic
Model
• Rich data model (data and behaviors)
• Calculated elds
• Validation Rules
• Variants (conditional properties)
• Localization
• Security
• UI hints/defaults: controls, formatters, styles
Model includes enough information to derive data retrieval,
persistence, and synchronization logic
Model Server-side code Client-side code
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
39
92. Model-Driven Development
Model
XML-‐based
modeling
language
Tools Runtime Code Gen
40
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
40
93. LCDS Model Driven Development Bene ts
Productivity: Less code to write
No persistence code or data sync code
Value objects and service stubs are automatically generated
Maintainability: Less code to maintain
Changes to the model are automatically propagated
Consistency
Between client and server (for example, constraints and validation rules are de ned in the
model, not duplicated using different languages in the client and the server)
Across views (for example, UI controls, styles, and validation rules are de ned in the model,
not duplicated across different views)
Approachability
No code to write to implement complex capabilities such as persistence, synchronization,
paging, lazy loading, offline, etc.
41
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
41
94. RIAPT birthday party!!!
Enrique Duvós
Mgr, Flash Platform Evangelism EMEA
January 2010 ®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
42