The document discusses the relationship between Flex, Adobe AIR, and PHP for building rich internet applications (RIAs). It describes how Flex and AIR can be used to create applications with a PHP backend by calling PHP functions through AMF remoting. Examples are provided of communicating between Flex/AIR clients and PHP servers using REST services, web services, and remoting. Tools for developing Flex and PHP projects together in Eclipse are also discussed.
This document discusses building interactive dashboards with Java and Flex. It provides an overview of the Flex framework, data connectivity and visualization capabilities in Flex, and ways to learn Flex such as free online tutorials and videos. The document is presented by Michaël Chaize, a Flash Platform Evangelist at Adobe.
This document discusses the growth of mobile internet usage and the opportunity for multi-screen strategies. It notes that mobile bandwidth is rapidly increasing but that developing native mobile applications for each device is costly and inefficient. The document then introduces Adobe's new mobile development paradigm using Flex to write code once and deploy applications across multiple platforms and devices.
This document discusses upcoming changes and new features in Flex, Flash Builder, and Adobe AIR. Flash Builder will include improved productivity features for ActionScript development. Flex "Hero" will focus on improving performance on smartphones and continuing to evolve Spark components. AIR will extend the benefits of Flash to mobile applications, including geo-location, data storage, camera access, and more. Native mobile UI components and APIs are also discussed.
This document discusses strategies for developing mobile applications across multiple platforms using Adobe Flex and PhoneGap. It presents Adobe Flex as a tool for building rich user interfaces that can be deployed as mobile apps via Adobe AIR or as mobile web apps. PhoneGap is introduced as a way to take the web technologies built with Flex and wrap them into native mobile applications. The document also outlines the capabilities and APIs provided by PhoneGap for accessing device functionality like the camera and barcode scanner.
This document discusses communication between Java and Flex applications. It provides an overview of Flex and how it works with Java, including using HTTP requests, web services, and messaging between the two platforms. It also covers data management services and model-driven development when combining Java and Flex.
Flash camp portugal - Let's talk about Flex babyMichael Chaize
The document discusses Flex and its future as an open source project supported by Adobe and the Apache foundation. It outlines how Flex can be used to build applications for mobile, desktop, and multiple platforms using one codebase. It also highlights new features in Flash Builder 4.6 and examples of applications built with Flex for mobile.
The document discusses architecting user experiences with Flex and discusses:
- How Flex works in the browser and on mobile/desktop.
- Flex components that have mobile skins.
- Features of Flex 4.5 for mobile like ViewNavigatorApplication and ActionBar.
- Support for tablets in Flex 4.5.
- Using Flex and Java together for real-time collaboration applications.
This document discusses building interactive dashboards with Java and Flex. It provides an overview of the Flex framework, data connectivity and visualization capabilities in Flex, and ways to learn Flex such as free online tutorials and videos. The document is presented by Michaël Chaize, a Flash Platform Evangelist at Adobe.
This document discusses the growth of mobile internet usage and the opportunity for multi-screen strategies. It notes that mobile bandwidth is rapidly increasing but that developing native mobile applications for each device is costly and inefficient. The document then introduces Adobe's new mobile development paradigm using Flex to write code once and deploy applications across multiple platforms and devices.
This document discusses upcoming changes and new features in Flex, Flash Builder, and Adobe AIR. Flash Builder will include improved productivity features for ActionScript development. Flex "Hero" will focus on improving performance on smartphones and continuing to evolve Spark components. AIR will extend the benefits of Flash to mobile applications, including geo-location, data storage, camera access, and more. Native mobile UI components and APIs are also discussed.
This document discusses strategies for developing mobile applications across multiple platforms using Adobe Flex and PhoneGap. It presents Adobe Flex as a tool for building rich user interfaces that can be deployed as mobile apps via Adobe AIR or as mobile web apps. PhoneGap is introduced as a way to take the web technologies built with Flex and wrap them into native mobile applications. The document also outlines the capabilities and APIs provided by PhoneGap for accessing device functionality like the camera and barcode scanner.
This document discusses communication between Java and Flex applications. It provides an overview of Flex and how it works with Java, including using HTTP requests, web services, and messaging between the two platforms. It also covers data management services and model-driven development when combining Java and Flex.
Flash camp portugal - Let's talk about Flex babyMichael Chaize
The document discusses Flex and its future as an open source project supported by Adobe and the Apache foundation. It outlines how Flex can be used to build applications for mobile, desktop, and multiple platforms using one codebase. It also highlights new features in Flash Builder 4.6 and examples of applications built with Flex for mobile.
The document discusses architecting user experiences with Flex and discusses:
- How Flex works in the browser and on mobile/desktop.
- Flex components that have mobile skins.
- Features of Flex 4.5 for mobile like ViewNavigatorApplication and ActionBar.
- Support for tablets in Flex 4.5.
- Using Flex and Java together for real-time collaboration applications.
This document discusses the Flex framework and its history and future. It provides an overview of Flex as the leading Rich Internet Application (RIA) framework, how it has evolved from 2004 to support multiple screens. It also summarizes Adobe's investments in Flex in Europe, key developments in 2010 including new versions of Flash Builder and Adobe AIR, and the direction of Flex and related technologies going forward including improved support for mobile development.
The document discusses using Java and Flex to create enterprise-class rich internet applications (RIAs). It promotes Flex and the Flash platform as a complete system for building innovative web applications, including details on Flex's capabilities, integration with Java, and productive development workflows. The author, Michael Chaize, is identified as a Flash platform evangelist.
Flex presentation for Paris Android User group PAUGMichael Chaize
The document discusses using Flex and Adobe Flash technologies to build mobile applications. It outlines how Flex is a free and open-source SDK for building rich internet applications (RIAs) and provides components, data binding, and other features. It also discusses how the Flex SDK provides APIs for building mobile apps that can access device features like multitouch, geolocation, cameras, and more. Developers can extend the Flex SDK further using ActionScript Native Extensions to access native device APIs. Examples are provided of several mobile apps built with Flex.
The document discusses Flex 4.5 and its capabilities for multi-screen applications. Flex 4.5 allows developers to build applications that can run across multiple platforms like desktop browsers, mobile devices, and set-top boxes using a single codebase. It introduces new components and APIs for mobile development and automatic scaling of user interfaces for different screen densities. The document also presents examples of integrating Flex applications with Java and the benefits of the Flex and Java combination.
This document discusses how Flex can be used to build mobile applications that run across multiple platforms from a single codebase. It introduces Adobe AIR, which allows Flex applications to run as native mobile apps. It also highlights new features in Flex 4.5 that improve the mobile development experience, such as mobile skins for components and support for tablet densities.
The document discusses the evolution of enterprise applications from mainframes to modern mobile apps and the rise of mobility. It notes that users now expect to access enterprise knowledge from any device at any time. Older methods of interacting like paper, whiteboards and desktop PCs are no longer inspiring. The emergence of smartphones and tablets is driving a new generation of mobile apps that provide rich, comfortable interactions. When introducing new mobile devices in a company, IT must address security and manageability while users expect native apps and the latest technology, regardless of corporate strategy or help desk preparedness.
This document discusses new features in Flash Player 10.1 and AIR 2 for mobile devices. It introduces multi-touch support, screen orientation detection, accelerometer access, and geolocation. It also overview tools like Flash Builder and Device Central for mobile development. New APIs allow applications to take advantage of these mobile capabilities.
The document discusses design-driven development and human interactions with enterprise applications and knowledge. It describes how interactions have evolved from paper to desktop PCs to mobile/tablet devices. It advocates for a design-driven development approach where user needs are observed and used to design solutions, rather than starting with technical specifications. The document also outlines Adobe's role in designing, developing, managing content, and analyzing enterprise applications.
Ria2010 - keynote - Evolution des RIA d'EntrepriseMichael Chaize
The document discusses the evolution of rich internet applications (RIAs) in enterprises. It covers topics such as the limitations of traditional enterprise applications, IT investments, a new application model centered around customer experience, examples of RIA projects at Adobe and other companies, and the increasing importance of mobile applications. The document is a presentation from Adobe on how their tools and platforms can help companies create engaging multi-screen experiences across desktops, mobile devices and browsers.
This document summarizes a presentation about building Flash applications for mobile devices. It discusses Flash Player 10.1 bringing full Flash capabilities to mobile devices, Adobe AIR allowing development of standalone mobile apps, and Adobe Device Central CS5 aiding testing on device profiles. The presentation covers expanding the Flash platform across screens, new Flash Player 10.1 features, AIR packaging and distribution, and AIR and Flash Player showcases for Android and iPhone.
This document discusses Flex 4.5 and mobile applications. It introduces new features in Flex 4.5 like automatic scaling, multi-DPI bitmaps, and view menus that improve the development of mobile applications. It also covers mobile APIs in Flex 4.5 for geolocation, accelerometer, multi-touch, remote data, full screen mode, the camera, and local databases. The document demonstrates these features and APIs. It concludes by mentioning resources for learning more about developing mobile applications with Flex.
The document discusses xplatform mobile development using Adobe Flex and Flash Builder. It describes how Flex allows developing applications that can run on multiple mobile platforms like Android, iOS, and BlackBerry from a single codebase. It addresses challenges like supporting different screen densities and provides solutions like automatic scaling and multi-DPI bitmaps. It also lists mobile device APIs that are available for built-in features like multitouch, geolocation, cameras, and more.
The document discusses Adobe Flex 4.6 and its capabilities for mobile application development. It outlines how Flex allows developing once for multiple mobile platforms like Android, iOS, and others. It highlights features like automatic scaling of user interface elements for different device densities. The document also discusses Adobe's continued support for Flex through contributions to the Apache Flex project.
Devoxx 2010: Develop mobile applications with FlexMichael Chaize
This document discusses using Adobe AIR 2.5 to develop mobile applications for multiple screens. Key points include:
- AIR 2.5 allows developing native mobile apps using ActionScript that can access device capabilities like geolocation and data storage.
- Apps are compiled to Android APK or iOS IPK files and distributed through mobile app stores.
- The document demonstrates mobile app navigation patterns, components optimized for mobile, and encourages attendees to try building a sample mobile Flex app.
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
Enterprise Flex applications on tablet devicesMichael Chaize
The document discusses opportunities for developing enterprise applications for tablet devices using Flex. It highlights how tablet usage is rising in enterprises and how Flex allows developing apps that run across platforms using a single codebase. The document provides tips for Flex developers, including leveraging new Flex 4.6 capabilities, using design driven development, optimizing for tablets, and persisting data on tablets.
I presented the Adobe AIR runtime for Android at the "Over the AIR" event in London. Thanks to the Flash Platform, you can easily create first-class applications on Android. More information on my blog www.riagora.com
The document discusses the Adobe Flash Platform, including Adobe Flash Player, Adobe AIR, and related technologies. It highlights key capabilities and deployments of Flash Player across devices like Android smartphones and tablets. It also outlines the shared codebase and user interfaces that allow Adobe AIR applications to run across desktop and mobile platforms.
This document discusses the Adobe Flash Platform and how it can be used with Java. It provides an overview of Flex and how Flex applications can access Java backend services using AMF. It also discusses messaging capabilities and shows examples of code for integrating Flex and Java.
The document discusses Adobe's technology platform for building rich internet applications (RIAs). It notes that customer expectations have changed with the explosion in digital content and rise of personal publishing and social networks. The platform allows building applications faster with fewer people that can reuse existing infrastructure and assets while remaining flexible. It is centered around Adobe Flex and AIR which provide tools, frameworks and runtimes for developing RIAs that deploy consistently across browsers and operating systems.
This document discusses the Flex framework and its history and future. It provides an overview of Flex as the leading Rich Internet Application (RIA) framework, how it has evolved from 2004 to support multiple screens. It also summarizes Adobe's investments in Flex in Europe, key developments in 2010 including new versions of Flash Builder and Adobe AIR, and the direction of Flex and related technologies going forward including improved support for mobile development.
The document discusses using Java and Flex to create enterprise-class rich internet applications (RIAs). It promotes Flex and the Flash platform as a complete system for building innovative web applications, including details on Flex's capabilities, integration with Java, and productive development workflows. The author, Michael Chaize, is identified as a Flash platform evangelist.
Flex presentation for Paris Android User group PAUGMichael Chaize
The document discusses using Flex and Adobe Flash technologies to build mobile applications. It outlines how Flex is a free and open-source SDK for building rich internet applications (RIAs) and provides components, data binding, and other features. It also discusses how the Flex SDK provides APIs for building mobile apps that can access device features like multitouch, geolocation, cameras, and more. Developers can extend the Flex SDK further using ActionScript Native Extensions to access native device APIs. Examples are provided of several mobile apps built with Flex.
The document discusses Flex 4.5 and its capabilities for multi-screen applications. Flex 4.5 allows developers to build applications that can run across multiple platforms like desktop browsers, mobile devices, and set-top boxes using a single codebase. It introduces new components and APIs for mobile development and automatic scaling of user interfaces for different screen densities. The document also presents examples of integrating Flex applications with Java and the benefits of the Flex and Java combination.
This document discusses how Flex can be used to build mobile applications that run across multiple platforms from a single codebase. It introduces Adobe AIR, which allows Flex applications to run as native mobile apps. It also highlights new features in Flex 4.5 that improve the mobile development experience, such as mobile skins for components and support for tablet densities.
The document discusses the evolution of enterprise applications from mainframes to modern mobile apps and the rise of mobility. It notes that users now expect to access enterprise knowledge from any device at any time. Older methods of interacting like paper, whiteboards and desktop PCs are no longer inspiring. The emergence of smartphones and tablets is driving a new generation of mobile apps that provide rich, comfortable interactions. When introducing new mobile devices in a company, IT must address security and manageability while users expect native apps and the latest technology, regardless of corporate strategy or help desk preparedness.
This document discusses new features in Flash Player 10.1 and AIR 2 for mobile devices. It introduces multi-touch support, screen orientation detection, accelerometer access, and geolocation. It also overview tools like Flash Builder and Device Central for mobile development. New APIs allow applications to take advantage of these mobile capabilities.
The document discusses design-driven development and human interactions with enterprise applications and knowledge. It describes how interactions have evolved from paper to desktop PCs to mobile/tablet devices. It advocates for a design-driven development approach where user needs are observed and used to design solutions, rather than starting with technical specifications. The document also outlines Adobe's role in designing, developing, managing content, and analyzing enterprise applications.
Ria2010 - keynote - Evolution des RIA d'EntrepriseMichael Chaize
The document discusses the evolution of rich internet applications (RIAs) in enterprises. It covers topics such as the limitations of traditional enterprise applications, IT investments, a new application model centered around customer experience, examples of RIA projects at Adobe and other companies, and the increasing importance of mobile applications. The document is a presentation from Adobe on how their tools and platforms can help companies create engaging multi-screen experiences across desktops, mobile devices and browsers.
This document summarizes a presentation about building Flash applications for mobile devices. It discusses Flash Player 10.1 bringing full Flash capabilities to mobile devices, Adobe AIR allowing development of standalone mobile apps, and Adobe Device Central CS5 aiding testing on device profiles. The presentation covers expanding the Flash platform across screens, new Flash Player 10.1 features, AIR packaging and distribution, and AIR and Flash Player showcases for Android and iPhone.
This document discusses Flex 4.5 and mobile applications. It introduces new features in Flex 4.5 like automatic scaling, multi-DPI bitmaps, and view menus that improve the development of mobile applications. It also covers mobile APIs in Flex 4.5 for geolocation, accelerometer, multi-touch, remote data, full screen mode, the camera, and local databases. The document demonstrates these features and APIs. It concludes by mentioning resources for learning more about developing mobile applications with Flex.
The document discusses xplatform mobile development using Adobe Flex and Flash Builder. It describes how Flex allows developing applications that can run on multiple mobile platforms like Android, iOS, and BlackBerry from a single codebase. It addresses challenges like supporting different screen densities and provides solutions like automatic scaling and multi-DPI bitmaps. It also lists mobile device APIs that are available for built-in features like multitouch, geolocation, cameras, and more.
The document discusses Adobe Flex 4.6 and its capabilities for mobile application development. It outlines how Flex allows developing once for multiple mobile platforms like Android, iOS, and others. It highlights features like automatic scaling of user interface elements for different device densities. The document also discusses Adobe's continued support for Flex through contributions to the Apache Flex project.
Devoxx 2010: Develop mobile applications with FlexMichael Chaize
This document discusses using Adobe AIR 2.5 to develop mobile applications for multiple screens. Key points include:
- AIR 2.5 allows developing native mobile apps using ActionScript that can access device capabilities like geolocation and data storage.
- Apps are compiled to Android APK or iOS IPK files and distributed through mobile app stores.
- The document demonstrates mobile app navigation patterns, components optimized for mobile, and encourages attendees to try building a sample mobile Flex app.
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
Enterprise Flex applications on tablet devicesMichael Chaize
The document discusses opportunities for developing enterprise applications for tablet devices using Flex. It highlights how tablet usage is rising in enterprises and how Flex allows developing apps that run across platforms using a single codebase. The document provides tips for Flex developers, including leveraging new Flex 4.6 capabilities, using design driven development, optimizing for tablets, and persisting data on tablets.
I presented the Adobe AIR runtime for Android at the "Over the AIR" event in London. Thanks to the Flash Platform, you can easily create first-class applications on Android. More information on my blog www.riagora.com
The document discusses the Adobe Flash Platform, including Adobe Flash Player, Adobe AIR, and related technologies. It highlights key capabilities and deployments of Flash Player across devices like Android smartphones and tablets. It also outlines the shared codebase and user interfaces that allow Adobe AIR applications to run across desktop and mobile platforms.
This document discusses the Adobe Flash Platform and how it can be used with Java. It provides an overview of Flex and how Flex applications can access Java backend services using AMF. It also discusses messaging capabilities and shows examples of code for integrating Flex and Java.
The document discusses Adobe's technology platform for building rich internet applications (RIAs). It notes that customer expectations have changed with the explosion in digital content and rise of personal publishing and social networks. The platform allows building applications faster with fewer people that can reuse existing infrastructure and assets while remaining flexible. It is centered around Adobe Flex and AIR which provide tools, frameworks and runtimes for developing RIAs that deploy consistently across browsers and operating systems.
The document discusses building Drupal modules using the Flex framework. It begins with an overview of Flex, including what it is, the development tools available, and examples of Flex applications. It then discusses reasons why Drupal and Flex can be used together, such as for real-time features. The document demonstrates a Flex gallery module called Fx Gallery, and discusses its features and development process. It describes how Flex communicates with Drupal using XML-RPC and the roles of the PHP and Flex code.
This document discusses Adobe's LiveCycle platform and its capabilities. It introduces LiveCycle, which unifies Adobe's PDF and interactive document technologies. It allows the creation of dynamic PDF and web forms as well as business process management. The document outlines how LiveCycle supports a wide range of applications and can integrate with various systems. It positions LiveCycle as a platform that enables better customer experiences and streamlines business processes across industries.
Flex For Java Architects Ledroff Breizh Jug V Blog CcFrançois Le Droff
I had the chance to present at the BreizhJUG (a Breton Java user group) a session named "Flex for Java Deveoppers".
A crowd of almost 100 happy Java developers and architects was willing to know more about Flex.
I had an an hour and half to cover :
*
a basic presentation of the flash and AIR platforms,
*
cool UX flash/flex/AIR demos
*
the latest great features of flash 10
*
and flex, and its ecosystem from a Java developer perspective (mvn framework, testing libraries, building and quality tools, blazeds, lcds)
I ended up the session presenting fna maven archetypes
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
This document summarizes Cosmin Lehene's presentation on Big Data with HBase and Hadoop at Adobe. The presentation discusses how Adobe uses Hadoop and HBase to analyze large amounts of data from sources like video logs, Flash usage logs, and image metadata. It provides examples of how Adobe uses this analysis to improve products like the Adobe Media Player and Photoshop and gain business intelligence. The presentation also covers topics like HBase data modeling, MapReduce workflows, and scaling challenges encountered by Adobe.
Develop multi-screen applications with Flex Codemotion
Presentazione tenuta da Michael Chaize per Adobe in occasione del Codemotion del 5 marzo 2011 a Roma - http://www.codemotion.it/
With the rise of a wide range of Internet connected devices, a new class of application is emerging to work across multiple kinds of devices. Developers are now faced with new challenges to provide the most engaging user experiences on any screen. New device input methods like touch and gestures require developers to rethink interaction models. Screen size constraints also require developers to optimize real estate usage. With so many different mediums for delivering rich Internet applications
This document discusses developing mobile applications using Adobe Flex. It covers topics such as using Flash Builder as an IDE, the Flex SDK and component model, developing for mobile platforms with Flex and AIR, mobile APIs for geolocation, accelerometer, multitouch, and remote data, and controlling full screen and orientation on mobile devices. Live coding examples are provided for developing Android applications with Flex, Java, and real-time mobile APIs.
The document discusses using Flex and Adobe Flash technologies to build mobile applications. It presents Flex as a framework for building professional and easy to maintain user experiences connected to backend systems. Flex applications can be deployed to mobile devices using Adobe AIR to run as native apps or by using Flash Player in mobile browsers. The document provides examples of Flex apps built for mobile and highlights APIs available in the Flex SDK for mobile development features like multitouch and device sensors.
Adobe Flex 3 is a development solution for Rich Internet Applications (RIAs). Flex allows developers to create applications that run in a web browser using Adobe Flash Player or on desktops using Adobe AIR. It provides tools for building user interfaces, accessing data services, and integrating with existing IT infrastructure. Flex also has strong support for open source with many of its core components and libraries released under an open source license.
David Coletta Architecting A Shared Codebase For Browser And Desktop Finaldcoletta
Learn from our experience in adapting a complex codebase like the application Buzzword to run also as an Adobe AIR application. This session addresses the architectural challenges of developing SWF files to be shared between browser and AIR versions. We’ll cover user interface considerations, such as reconciling a single browser window with multiple AIR windows, and technical issues, like problems with the Singleton pattern when using multiple native windows. Other topics include abstracting code that must call AIR only APIs and packaging code into modules that load over HTTP for browsers and load from the file system under AIR.
Das brandneue Flash 11 bringt neben einem erstklassigen Multiplattform-Entwicklungswerkzeug für iOS, Android und Blackberry auch viele Neuerungen in Bezug auf Browserkomponenten und Games. Schützenhilfe für sonst Programmieraufwändige HTML5 Animationen kommt dabei von Adobe Edge.
The document discusses APIs and provides advice on designing good APIs. It begins with defining what an API is and explaining why organizations build APIs. It then discusses considerations for designing good APIs such as planning use cases, choosing protocols and data formats, and supporting developers. The document also covers topics like API versioning, security, authentication, and lessons learned from building APIs.
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.
The document provides an overview of the Adobe Flash Platform user group tour, including demos of Flash Catalyst, Flash Builder 4, and the Flex 4 framework. Key points covered include new workflows for interaction and visual design in Catalyst, data-centric development features in Builder, and improvements to graphics, states, layout, and text in the Flex framework.
Similar to Flex, Adobe AIR, and PHP: the beginning of a beautiful friendship (20)
ClojureScript allows developers to use the Clojure programming language to build applications that compile to JavaScript. This enables Clojure code to run in environments where JavaScript is supported, like web browsers and mobile apps. ClojureScript leverages the Google Closure compiler and library to provide whole program optimization of Clojure code compiling to JavaScript.
Why you should be excited about ClojureScriptelliando dias
ClojureScript allows Clojure code to compile to JavaScript. Created by Rich Hickey and friends, it provides optimizations for performance while maintaining readability and abstraction. As a Lisp for JavaScript, ClojureScript controls complexity on the web and benefits from JavaScript's status as a compilation target for many languages.
Functional Programming with Immutable Data Structureselliando dias
1. The document discusses the advantages of functional programming with immutable data structures for multi-threaded environments. It argues that shared mutable data and variables are fundamentally flawed concepts that can lead to bugs, while immutable data avoids these issues.
2. It presents Clojure as a functional programming language that uses immutable persistent data structures and software transactional memory to allow for safe, lock-free concurrency. This approach allows readers and writers to operate concurrently without blocking each other.
3. The document makes the case that Lisp parentheses in function calls uniquely define the tree structure of computations and enable powerful macro systems, homoiconicity, and structural editing of code.
O documento lista e descreve as principais partes de um contêiner de carga seco, incluindo o painel frontal, laterais, traseira, teto, piso e estrutura inferior. Muitos componentes como painéis laterais, travessas do teto e fundo são numerados de acordo com sua localização. As portas traseiras contêm quadros, painéis, dobradiças e barras de fechamento.
O documento discute a história da geometria projetiva, desde Euclides até seu uso em computação gráfica. Aborda figuras-chave como Pascal, que foi pioneiro na área, e como a perspectiva foi aplicada nas artes ao longo dos séculos.
Polyglot and Poly-paradigm Programming for Better Agilityelliando dias
This document discusses the benefits of polyglot and poly-paradigm programming approaches for building more agile applications. It describes how using multiple languages and programming paradigms can optimize both performance and developer productivity. Specifically, it suggests that statically-typed compiled languages be used for core application components while dynamically-typed scripting languages connect and customize these components. This approach allows optimizing areas that require speed/efficiency separately from those requiring flexibility. The document also advocates aspects and functional programming to address cross-cutting concerns and concurrency challenges that arise in modern applications.
This document discusses JavaScript libraries and frameworks. It provides an overview of some popular options like jQuery, Prototype, Dojo, MooTools, and YUI. It explains why developers use libraries, such as for faster development, cross-browser compatibility, and animation capabilities. The document also discusses how libraries resemble CSS and use selector syntax. Basic examples are provided to demonstrate common tasks like hover effects and row striping. Factors for choosing a library are outlined like maturity, documentation, community, and licensing. The document concludes by explaining how to obtain library code from project websites or Google's AJAX Libraries API.
How to Make an Eight Bit Computer and Save the World!elliando dias
This document summarizes a talk given to introduce an open source 8-bit computer project called the Humane Reader. The talk outlines the goals of providing a cheap e-book reader and computing platform using open source tools. It describes the hardware design which uses an AVR microcontroller and interfaces like video output, SD card, and USB. The talk also covers using open source tools for development and sourcing low-cost fabrication and assembly. The overall goals are to create an inexpensive device that can provide educational resources in developing areas.
Ragel is a parser generator that compiles to various host languages including Ruby. It is useful for parsing protocols and data formats and provides faster parsing than regular expressions or full LALR parsers. Several Ruby projects like Mongrel and Hpricot use Ragel for tasks like HTTP request parsing and HTML parsing. When using Ragel with Ruby, it can be compiled to Ruby code directly, which is slow, or a C extension can be written for better performance. The C extension extracts the parsed data from Ragel and makes it available to Ruby.
A Practical Guide to Connecting Hardware to the Webelliando dias
This document provides an overview of connecting hardware devices to the web using the Arduino platform. It discusses trends in electronics and computing that make this easier, describes the Arduino hardware and software, and covers various connection methods including directly to a computer, via wireless modems, Ethernet shields, and services like Pachube that allow sharing sensor data over the internet. The document aims to demonstrate how Arduinos can communicate with other devices and be used to build interactive systems.
O documento introduz o Arduino, uma plataforma de desenvolvimento open-source. Discute as características e componentes do Arduino, incluindo microcontroladores, software e exemplos de código. Também fornece instruções básicas sobre como programar o Arduino usando linguagem C.
O documento apresenta um mini-curso introdutório sobre Arduino, abordando o que é a plataforma Arduino, como é estruturado seu hardware, como programá-lo, exemplos básicos de código e aplicações possíveis como controle residencial e robótica.
The document discusses various functions for working with datasets in the Incanter library for Clojure. It describes how to create, read, save, select rows and columns from, and sort datasets. Functions are presented for building datasets from sequences, reading datasets from files and URLs, saving datasets to files and databases, selecting single or multiple columns, and filtering rows based on conditions. The document also provides an overview of the Incanter library and its various namespaces for statistics, charts, and other functionality.
Rango is a lightweight Ruby web framework built on Rack that aims to be more robust than Sinatra but smaller than Rails or Merb. It is inspired by Django and Merb, uses Ruby 1.9, and supports features like code reloading, Bundler, routing, rendering, and HTTP error handling. The documentation provides examples and details on using Rango.
Fab.in.a.box - Fab Academy: Machine Designelliando dias
This document describes the design of a multifab machine called MTM. It includes descriptions of the XY stage and Z axis drive mechanisms, as well as the tool heads and network used to control the machine. Key aspects of the design addressed include the stepper motor selection, drive electronics, motion control firmware, and use of a virtual machine environment and circular buffer to enable distributed control of the machine. Strengths of the design include low inertia enabling high acceleration, while weaknesses include low basic resolution and stiffness unsuitable for heavy milling.
The Digital Revolution: Machines that makeselliando dias
The document discusses the results of a study on the effects of a new drug on memory and cognitive function in older adults. The double-blind study involved giving either the new drug or a placebo to 100 volunteers aged 65-80 over a 6 month period. Testing showed those receiving the drug experienced statistically significant improvements in short-term memory retention and processing speed compared to the placebo group.
The document discusses using Clojure for Hadoop programming. Clojure is a dynamic functional programming language that runs on the Java Virtual Machine. The document provides an overview of Clojure and how its features like immutability and concurrency make it well-suited for Hadoop. It then shows examples of implementing Hadoop MapReduce jobs using Clojure by defining mapper and reducer functions.
This document provides an overview of Hadoop, including:
1) Hadoop solves the problems of analyzing massively large datasets by distributing data storage and analysis across multiple machines to tolerate node failure.
2) Hadoop uses HDFS for distributed data storage, which shards massive files across data nodes with replication for fault tolerance, and MapReduce for distributed data analysis by sending code to the data.
3) The document demonstrates MapReduce concepts like map, reduce, and their composition with an example job.
Hadoop and Hive Development at Facebookelliando dias
Facebook generates large amounts of user data daily from activities like status updates, photo uploads, and shared content. This data is stored in Hadoop using Hive for analytics. Some key facts:
- Facebook adds 4TB of new compressed data daily to its Hadoop cluster.
- The cluster has 4800 cores and 5.5PB of storage across 12TB nodes.
- Hive is used for over 7500 jobs daily and by around 200 engineers/analysts monthly.
- Performance improvements to Hive include lazy deserialization, map-side aggregation, and joins.
Multi-core Parallelization in Clojure - a Case Studyelliando dias
The document describes a case study on using Clojure for multi-core parallelization of the K-means clustering algorithm. It provides background on parallel programming concepts, an introduction to Clojure, and details on how the authors implemented a parallel K-means algorithm in Clojure using agents and software transactional memory. They present results showing speedups from parallelization and accuracy comparable to R's implementation on both synthetic and real-world datasets.
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.
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AIVladimir Iglovikov, Ph.D.
Presented by Vladimir Iglovikov:
- https://www.linkedin.com/in/iglovikov/
- https://x.com/viglovikov
- https://www.instagram.com/ternaus/
This presentation delves into the journey of Albumentations.ai, a highly successful open-source library for data augmentation.
Created out of a necessity for superior performance in Kaggle competitions, Albumentations has grown to become a widely used tool among data scientists and machine learning practitioners.
This case study covers various aspects, including:
People: The contributors and community that have supported Albumentations.
Metrics: The success indicators such as downloads, daily active users, GitHub stars, and financial contributions.
Challenges: The hurdles in monetizing open-source projects and measuring user engagement.
Development Practices: Best practices for creating, maintaining, and scaling open-source libraries, including code hygiene, CI/CD, and fast iteration.
Community Building: Strategies for making adoption easy, iterating quickly, and fostering a vibrant, engaged community.
Marketing: Both online and offline marketing tactics, focusing on real, impactful interactions and collaborations.
Mental Health: Maintaining balance and not feeling pressured by user demands.
Key insights include the importance of automation, making the adoption process seamless, and leveraging offline interactions for marketing. The presentation also emphasizes the need for continuous small improvements and building a friendly, inclusive community that contributes to the project's growth.
Vladimir Iglovikov brings his extensive experience as a Kaggle Grandmaster, ex-Staff ML Engineer at Lyft, sharing valuable lessons and practical advice for anyone looking to enhance the adoption of their open-source projects.
Explore more about Albumentations and join the community at:
GitHub: https://github.com/albumentations-team/albumentations
Website: https://albumentations.ai/
LinkedIn: https://www.linkedin.com/company/100504475
Twitter: https://x.com/albumentations
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.
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...SOFTTECHHUB
The choice of an operating system plays a pivotal role in shaping our computing experience. For decades, Microsoft's Windows has dominated the market, offering a familiar and widely adopted platform for personal and professional use. However, as technological advancements continue to push the boundaries of innovation, alternative operating systems have emerged, challenging the status quo and offering users a fresh perspective on computing.
One such alternative that has garnered significant attention and acclaim is Nitrux Linux 3.5.0, a sleek, powerful, and user-friendly Linux distribution that promises to redefine the way we interact with our devices. With its focus on performance, security, and customization, Nitrux Linux presents a compelling case for those seeking to break free from the constraints of proprietary software and embrace the freedom and flexibility of open-source computing.
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!SOFTTECHHUB
As the digital landscape continually evolves, operating systems play a critical role in shaping user experiences and productivity. The launch of Nitrux Linux 3.5.0 marks a significant milestone, offering a robust alternative to traditional systems such as Windows 11. This article delves into the essence of Nitrux Linux 3.5.0, exploring its unique features, advantages, and how it stands as a compelling choice for both casual users and tech enthusiasts.
In his public lecture, Christian Timmerer provides insights into the fascinating history of video streaming, starting from its humble beginnings before YouTube to the groundbreaking technologies that now dominate platforms like Netflix and ORF ON. Timmerer also presents provocative contributions of his own that have significantly influenced the industry. He concludes by looking at future challenges and invites the audience to join in a discussion.
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slackshyamraj55
Discover the seamless integration of RPA (Robotic Process Automation), COMPOSER, and APM with AWS IDP enhanced with Slack notifications. Explore how these technologies converge to streamline workflows, optimize performance, and ensure secure access, all while leveraging the power of AWS IDP and real-time communication via Slack notifications.
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Speck&Tech
ABSTRACT: A prima vista, un mattoncino Lego e la backdoor XZ potrebbero avere in comune il fatto di essere entrambi blocchi di costruzione, o dipendenze di progetti creativi e software. La realtà è che un mattoncino Lego e il caso della backdoor XZ hanno molto di più di tutto ciò in comune.
Partecipate alla presentazione per immergervi in una storia di interoperabilità, standard e formati aperti, per poi discutere del ruolo importante che i contributori hanno in una comunità open source sostenibile.
BIO: Sostenitrice del software libero e dei formati standard e aperti. È stata un membro attivo dei progetti Fedora e openSUSE e ha co-fondato l'Associazione LibreItalia dove è stata coinvolta in diversi eventi, migrazioni e formazione relativi a LibreOffice. In precedenza ha lavorato a migrazioni e corsi di formazione su LibreOffice per diverse amministrazioni pubbliche e privati. Da gennaio 2020 lavora in SUSE come Software Release Engineer per Uyuni e SUSE Manager e quando non segue la sua passione per i computer e per Geeko coltiva la sua curiosità per l'astronomia (da cui deriva il suo nickname deneb_alpha).
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Albert Hoitingh
In this session I delve into the encryption technology used in Microsoft 365 and Microsoft Purview. Including the concepts of Customer Key and Double Key Encryption.
In the rapidly evolving landscape of technologies, XML continues to play a vital role in structuring, storing, and transporting data across diverse systems. The recent advancements in artificial intelligence (AI) present new methodologies for enhancing XML development workflows, introducing efficiency, automation, and intelligent capabilities. This presentation will outline the scope and perspective of utilizing AI in XML development. The potential benefits and the possible pitfalls will be highlighted, providing a balanced view of the subject.
We will explore the capabilities of AI in understanding XML markup languages and autonomously creating structured XML content. Additionally, we will examine the capacity of AI to enrich plain text with appropriate XML markup. Practical examples and methodological guidelines will be provided to elucidate how AI can be effectively prompted to interpret and generate accurate XML markup.
Further emphasis will be placed on the role of AI in developing XSLT, or schemas such as XSD and Schematron. We will address the techniques and strategies adopted to create prompts for generating code, explaining code, or refactoring the code, and the results achieved.
The discussion will extend to how AI can be used to transform XML content. In particular, the focus will be on the use of AI XPath extension functions in XSLT, Schematron, Schematron Quick Fixes, or for XML content refactoring.
The presentation aims to deliver a comprehensive overview of AI usage in XML development, providing attendees with the necessary knowledge to make informed decisions. Whether you’re at the early stages of adopting AI or considering integrating it in advanced XML development, this presentation will cover all levels of expertise.
By highlighting the potential advantages and challenges of integrating AI with XML development tools and languages, the presentation seeks to inspire thoughtful conversation around the future of XML development. We’ll not only delve into the technical aspects of AI-powered XML development but also discuss practical implications and possible future directions.
Dr. Sean Tan, Head of Data Science, Changi Airport Group
Discover how Changi Airport Group (CAG) leverages graph technologies and generative AI to revolutionize their search capabilities. This session delves into the unique search needs of CAG’s diverse passengers and customers, showcasing how graph data structures enhance the accuracy and relevance of AI-generated search results, mitigating the risk of “hallucinations” and improving the overall customer journey.
For the full video of this presentation, please visit: https://www.edge-ai-vision.com/2024/06/building-and-scaling-ai-applications-with-the-nx-ai-manager-a-presentation-from-network-optix/
Robin van Emden, Senior Director of Data Science at Network Optix, presents the “Building and Scaling AI Applications with the Nx AI Manager,” tutorial at the May 2024 Embedded Vision Summit.
In this presentation, van Emden covers the basics of scaling edge AI solutions using the Nx tool kit. He emphasizes the process of developing AI models and deploying them globally. He also showcases the conversion of AI models and the creation of effective edge AI pipelines, with a focus on pre-processing, model conversion, selecting the appropriate inference engine for the target hardware and post-processing.
van Emden shows how Nx can simplify the developer’s life and facilitate a rapid transition from concept to production-ready applications.He provides valuable insights into developing scalable and efficient edge AI solutions, with a strong focus on practical implementation.
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
A tale of scale & speed: How the US Navy is enabling software delivery from l...sonjaschweigert1
Rapid and secure feature delivery is a goal across every application team and every branch of the DoD. The Navy’s DevSecOps platform, Party Barge, has achieved:
- Reduction in onboarding time from 5 weeks to 1 day
- Improved developer experience and productivity through actionable findings and reduction of false positives
- Maintenance of superior security standards and inherent policy enforcement with Authorization to Operate (ATO)
Development teams can ship efficiently and ensure applications are cyber ready for Navy Authorizing Officials (AOs). In this webinar, Sigma Defense and Anchore will give attendees a look behind the scenes and demo secure pipeline automation and security artifacts that speed up application ATO and time to production.
We will cover:
- How to remove silos in DevSecOps
- How to build efficient development pipeline roles and component templates
- How to deliver security artifacts that matter for ATO’s (SBOMs, vulnerability reports, and policy evidence)
- How to streamline operations with automated policy checks on container images
A tale of scale & speed: How the US Navy is enabling software delivery from l...
Flex, Adobe AIR, and PHP: the beginning of a beautiful friendship
1. Flex, Adobe AIR,
and PHP:
the beginning of a
Replace with
beautiful friendship a graphic
White Master
5.5” Tall & 4.3” Wide
Mihai Corlan
Platform Evangelist, Adobe
PHP GeekMeet 2009, Cluj
®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. 1
2. About me
• Platform Evangelist, member of the Adobe’s European team
• Used to be a Flex Builder engineer (Java Desktop SWT, Eclipse
Platform)
• Used to be a web developer (PHP, ColdFusion, DHTML, JS, MySQL,
Sybase…)
• ~9 years experience with web related technologies
• I write articles, I do presentations, and I code
®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. 2
3. Today’s Agenda
• What is RIA and why RIA is a good thing
• What is Flex
• What is Adobe AIR
• Why AIR applications?
• Flex/AIR and PHP
• Q&A
®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. 3
4. What matters?
Experience Matters!
®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. 4
5. What matters?
USER
Experience Matters!
®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. 5
6. A shoe story…
More than 2.000 years experience in
producing shoes.
We can produce them really cheap.
20 Euro a pair, maybe?
®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. 6
7. A shoe story…
More than 2.000 years experience in
producing shoes.
We can produce them really cheap.
20 Euro a pair, maybe?
Wrong! Because of better user experience,
people women are willing to pay 100+ euro!
Better design, limited edition = better user
experience = greater value
®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. 7
8. What is RIA?
Global
2004
RICH INTERNET
WEB APPLICATIONS APPLICATIONS
REACH
1998
1992
Local
MAINFRAME CLIENT/SERVER
Text UI RICH Integrated media GUI
®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. 8
9. Demos time!
Let’s see what it can be done with the Flash Platform!
Flash Player
®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. 9
10. What is Flex?
Flex is just another way to create a Flash application
Flash Player
®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. 10
11. What is Flex?
Flex SDK Flex SDK
MXML ActionScript
2 languages
Flex Class Library
MXML
Debuggers
ActionScript 3
Compilers
Rich Component Library
Debuggers
®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. 11
12. What is Flex?
Flex SDK Flex SDK
MXML ActionScript
2 languages
Flex Class Library
MXML
Debuggers
ActionScript 3
Flex Builder IDE
Compilers
Rich Component Library
Debuggers
Flex Builder IDE
Eclipse Plug-in or turn-key install
Accelerates Design and
Development
Design view and code view
Flash Player
®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. 12
13. What is Flex?
Flex SDK Flex SDK
MXML ActionScript
2 languages
Flex Class Library
MXML
Debuggers
ActionScript 3
Flex Builder IDE
Compilers
Compile Rich Component Library
Debuggers
Flex Builder IDE
Eclipse Plug-in or turn-key install
Accelerates Design and
Browser Development
Design view and code view
Flash Player
®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. 13
14. What is AIR?
Adobe® AIR™ lets developers use their
existing web development skills in HTML,
AJAX, Flash and Flex to build and deploy rich
Internet applications to the desktop
on Windows, Mac or Linux.
®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. 14
15. Adobe AIR Application Stack
HTML Flash
Cross-OS
HTML Flex Application
JavaScript Flash ActionScript HTML Integrated
XML XML Rendering
CSS Audio
Integrated DOMs
PDF Video PDF
& Scripting
File System Network Application Drag and Local
Access Detection
Notifications
Update Drop Database
... Adobe AIR APIs
Mac, Windows, Linux & Device OS
®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. 15
16. RIAs can be limited by the browser
®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. 16
17. #1 – No offline access
®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. 17
18. #2 – Constrained within the browser chrome
Browser chrome &
application chrome
con ict
®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. 18
19. #3 – Common desktop interactions not possible
Drag & drop
not possible
®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. 19
20. #4 – Local system access limited
File interaction
restricted by browser
sandbox
®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. 20
21. #5 – Updates only delivered when browser is open
Alerts only visible
when browser open
®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. 21
22. Why RIAs on the desktop
Persistent connection Branded experiences
Desktop functionality Data access Efficient development
®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. 22
23. AIR capabilities
• Native window types (normal, utility, lightweight)
• Support for multiple monitors
• Native Menu support (App, window, dock, system tray, context)
• Full access to the local le system (read/create/delete)
• Encrypted Local Storage
• Local SQLite databases, including encrypted
• Drag and Drop
• Clipboard (read/write)
• Network activity monitor
®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. 23
24. Communication between Flex and PHP server
“I think this is the beginning of a beautiful friendship!”
Flex & AIR on the client, PHP on the server.
REST Services
Web browser
FLEX Apps
Web Services Server
PHP
Desktop
AIR Apps Remoting
®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. 24
25. Are there any Flex/AIR apps with PHP out there?
AIR & Flex apps with PHP backend:
http://corlan.org/ exair-and-php-apps/
®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. 25
26. What tools to use?
For Flex and PHP and Eclipse based solution:
• Flex Builder + PDT
• Flex Builder + Zend Studio
Advantages:
• You can create combined Flex and PHP or AIR and PHP projects
• That helps you with deploying, and debugging
®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. 26
27. Debugging
Debugging Flex applications:
1. Use a log function on the server, and save the var_dump of the PHP
variables in a at le
2. Use Charles proxy sniffer, you can inspect the traffic between client
and server
3. Use Flex Builder and Zend Studio debuggers
®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. 27
28. How does remoting work?
Flex/AIR Client AMF3 PHP Server
MyClass {
getData() { … }
saveData($myVO) {…}
}
®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. 28
29. How does remoting work?
Flex/AIR Client AMF3 PHP Server
RemoteObject Client calls MyClass {
MyClass->getData()
getData(); getData() { … }
saveData(myVO); saveData($myVO) {…}
}
®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. 29
30. How does remoting work?
Flex/AIR Client AMF3 PHP Server
RemoteObject Client calls MyClass {
MyClass->getData()
getData(); getData() { … }
saveData(myVO); saveData($myVO) {…}
}
MyVO { MyVO {
public var id:int; Automatic conversion public $id;
public var name:String; between PHP and public $name;
ActionScript class
} }
®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. 30
31. How does remoting work?
Flex/AIR Client AMF3 PHP Server
RemoteObject Client calls MyClass {
MyClass->getData()
getData(); getData() { … }
saveData(myVO); Server sends an array saveData($myVO) {…}
of MyVO objects
Client calls }
RemoteObject.saveData(myVO)
MyClass->saveData($myVO)
MyVO { MyVO {
public var id:int; Automatic conversion public $id;
public var name:String; between PHP and public $name;
ActionScript class
} }
®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. 31
33. PHP and AMF
There are four libraries for doing remoting with PHP classes:
1. Zend AMF – part of the Zend Framework
2. AMFPHP
3. WebORB for PHP (remoting and data messaging – publisher/
subscriber)
4. SabreAMF
®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. 33
34. Thank you!
Download Flex Builder: http://www.adobe.com/go/flex_trial
AIR: http://www.adobe.com/go/air
AIR Adobe Developer Center: http://www.adobe.com/devnet/air/
Download Tour de Flex: http://flex.org/tour
Learn Flex in one week: http://www.adobe.com/devnet/flex/videotraining/
Mihai Corlan
Blog: http://corlan.org
E-mail: mihai.corlan@adobe.com
®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. 34