Welcome!

Adobe Flex Authors: Matthew Lobas, PR.com Newswire, Shelly Palmer, Kevin Benedict

Related Topics: Adobe Flex, Java IoT, Agile Computing

Adobe Flex: Article

Adobe Flex 2 - Answering Tough Questions About Enterprise Development

An interview with an expert Web programmer Anatole Tartakovsky of Farata Systems

There are cool software tools and there are practical tools. People who make their living by developing enterprise Web applications are very careful in selecting the language or technology for their needs. There is a huge difference in requirements for developing an application like Google maps and the enterprise-grade high availability business applications. Anatole Tartakovsky of Farata Systems (pictured) is one of these programmers who know pretty much everything. He lives and breathes programming. If he does not know the answer to your problem today, he’ll know it tomorrow. Flex Developer's Journal have asked Anatole some tough questions that concern most of the enterprise developers who are considering Adobe Flex 2 as a tool for their next Web application.

Q. How hard is it for typical Java EE developer with Struts and DAO skills to add Flex to their skill set?
A. I would say, the hard part is over. Flex allows seamlessly integrate your Web client with the Java server code of any flavor – POJO, Hibernate/Spring or JMS, so the server-side part remains relatively unchanged. Struts developers will find coding states in Flex a great simplification over Struts model – yet yielding fantastic user interface. Flex piggybacks on Java EE and browser technologies, so any experienced Java programmer will be able to correlate his current skills with the development process in Flex. Java and ActionScript 3 are very similar, Eclipse is a familiar environment for many developers. Tools, deployment techniques, security, performance tuning – everything can be reused.

Q. How Flex 2 technology addresses security issues?
A. The server-side security management is quite extensive, and it allows you to use either containers’ offerings or custom security providers via declarative XML binding. There are couple of challenges as Flex supports multiple protocols, so Java EE security that relies only on the HTTP sessions has to be extended, but it is simple and well documented process. On the client side, it builds on Flash player security that is known for its lack of serious security flaws. You have a built-in security manager that has all standard protection for cross-domain and zone access. Corporations can further restrict code they receive from 3rd parties by wrapping the code loaders in additional security managers.

Q. Can you share with us your experience regarding performance of the Flash 9 in a real time mode? What are your thoughts on advantages of using Flash 9 say in a real-time trading applications comparing to a tried-and-true Java Swing front end?
A. Flex is very capable of providing near real-time data rendering to the GUI and very high refresh rates on large data sets. Flash Player 9 is the high-performance modern virtual machine with precompiled optimized code and just-in-time (JIT) machine code compiler. And it is very possible to build the client portion of a real-time portfolio display integrated with news feeds and graphs with about 100 lines of Flex 2 code. A similar Java Swing program (even if it’s created by commercial IDEs) would be on average ten times larger.
The real selling point becomes obvious on a second or third day of the proof of concept phase. A decent Flex developer should be able to prototype (short of server processing) most of the UI for specific trading system by the end of the first week. If you are lucky and the system integration went fine, you can add the collaboration features and multimedia – with total client code base for the whole project within 1000-1500 lines.

Q. Can you compare performance of the Flex 2 and AJAX-based applications?
A. There are so many metrics by which you can judge the performance. First, you can just do a pure code performance comparison. I can’t cite any official metrics, but according to this presentation JavaScript was rated to be up to 5000 slower then C code. The ActionScript code (depending on JIT state and type of the operation/parameters) is compiled in highly optimized stack machine code expected to be only 50 time slower the C in interpreted mode – all the way up to native performance.
Due to its design, _JavaScript can not use the results of previous runs – every page refresh causes re-parsing of _JavaScript libraries even if they have been used before – seriously impending performance and scalability. Flex development team actively works on secure reuse of cross-domain libraries, retaining results of JIT, to make sure that over time Flex/Flash platform outruns other VMs on the client.

Q. We are pretty impressed with the quality of Flex 2 documentation and the software. We know that Flex 1.5 developers are very happy with features of Flex Builder IDE. But Java developers are spoiled by excellent and very responsive IDEs and are not too happy with the compilation speed of Flex Builder. But other than this it seems to be a pretty robust tool. If you could give an advice to Adobe on how to make this technology even better (MXML, ActionScript 3, Charting, Data Services), what would it be?

A. I’m glad you raised a concern about compiler and Eclipse environment, which is crucial for creation of the Flex ecosystem. One of the reasons why Flex seems slower then Java is that it does so much more then typical compiler. It uses a very sophisticated code generator, a multi-pass compiler/linker, JNDI to Flash Player and more. It is essentially a full-fledged platform within Eclipse. Opening code generation layers to the 3rd parties would provide for a direct plug of all Java EE technologies into a very powerful client model of Flex framework. Opening the Flash Player via Eclipse APIs would allow companies to provide developers with new Flex designers.

Q. What Flex 2 offers in terms of reporting, or business intelligence?
A.Flex is a great foundation for creating dashboards by providing high impact graphs and highly customizable grids. A transparent integration with data services and java messaging services makes it an ideal platform for creation of the enterprise dashboards. As you know, we have been developing BI solutions for Wall Street companies in Flex for quite some time, and see it as a great platform. It is capable of replacing custom PowerBuilder and VisualBasic applications for a fraction of the cost associated with a rewrite in Java report generators. In terms of replacing larger business intelligence suites, I think, it will be an interesting game – Flex offers so much in accessibility, collaboration and integration, it would be difficult for developers of business software resist to rewrite their products in Flex

Q. Java developers are very impressed with such Flex elements as data binding and E4X (XML processing), which simplifies and even changes the way people write code. What are your favorite Flex 2 features?
A. Flex 2 is innovative in so many ways, and at the same time it brings back some sanity to developers. The amount of code you need to write in Java and any other low level language is completely out of my reach. Writing less code is very addictive. You write your code in a way to make less code next time you do similar task. Open source for all major components of the framework is a great help. You build your components and libraries – to make other people’s life easier – and it is fun.

Q. Yes, we also believe that size mattes: the smaller the better. We're talking about the code. Even though modern Java IDEs can generates a boilerplate code for you, it still the code that someone will have to read and understand at some point in the future. Some Web application developers are concerned that their Flash based clients will not be properly indexed by the search engines. What's your take on this?
A. The problem is not Flash specific, but it’s more about moving from the static publishing to a content management approach. AJAX applications would have exactly the same issue as they update content without page refreshes, thus there is no new URLs to index/crawl, as well as any plain HTML site that is secured and requires a session management. As the result, the search engines are looking to get information in other way then a simple parsing of HTML . An RSS is a good example of alternative technology used by search engines and social-network Web sites.
With Flex, you have a wrapper html page that will provide initial site information. There you can provide some metadata like RSS links that will be indexed by the search engines. You seldom want the search engine to index or cache the page of an enterprise Web application as it would certainly contain some personal or other sensitive information. Also, in order to fully utilize caching of the applications, the URLs should become less relevant. I believe that new services similar to shortUrl utilizing extension of RSS will emerge and will allow application servers to persist state of the Ajax and Flex/Flash applications and expose tags to search engines via public “publishing” hubs. A simple implementation of a state identifier by a short cookie would drastically reduce traffic requirements for such services while maintaining the complete control of the security of the state content on the application provider side and eliminate multiple indexing of the same content.

Q. Many opponents of using Flex technology for the Web applications are asking this tricky question: if you move from one page to another in a pure Flash Web site, can you bookmark, say page #3?
A. The bookmarking of the sites is still available on the browser. But in Flash-based applications you do not move from one page to another as there is no roundtrip to the server – essentially you are on the same URL all the time. What looks like a page to the user is just another screen in the either monolithic or dynamic application. The approach I would take is to make application bookmark the data the user is looking for – that provides you much richer insight into the user’s preferences and type of information he is customary searching for. That data would be associated with user and combined with regular URL bookmark upon the user re-logon/cookie retrieval.

Q. Can you elaborate a bit on a little known fact (at least for the general public) that a Web browser can maintain only two connections to the Web server? Do you think it puts Flex into advantageous position comparing to AJAX based tools?
A. Flex provides extensive infrastructure for connection management. It allows you to specify all protocol details for RTMP, HTTP, HTTPS as well as plain socket connections. You can then specify the order in which the protocols have to be tried due to availability/firewall issues. Also, Flex automatically bundles multiple requests going over the same transport striving for the maximum performance out of the box. So you get much better use of the same two connections if you limit yourself to http only, and can easily control priority line versus data line. You also get an alternative real-time push or pull connections on additional protocols, direct socket API and tons of low-level hooks that allow you build any protocol you want.
An important thing for me as someone who worked on AJAX frameworks in 1999-2005 era is that Flex is unbelievably more robust in code and data delivery fields then any cross-browser AJAX solution I can think of. I would put robustness as even bigger show stopper for large AJAX applications then the performance. Flex/Flash really gives back control over communications that is very important for enterprise applications.

Thank you Anatole. We're sure your answers will help many development managers who are still sitting on a fence, and they will seriously consider Flex 2 as a front end solution for their Java EE applications.

More Stories By Flex News Desk

Flex News Desk provides the very latest news on the cross-platform Flex development framework for creating rich Internet applications, and on Adobe's AIR/Flex/Flash product combination.

Comments (4) View Comments

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


Most Recent Comments
A Correct Person 05/16/08 06:28:24 PM EDT

Denis Roebrt commented on the 21 Aug 2006
"Tough Questions"??? Sounds more like questions a Fox anchor would ask Bush. Sheesh, can an interview sound more like a sales pitch?

Or has Adobe finally bought Sys-Con and we don't know it yet?

Hey Denis - I see you didn't provide any "tough" questions here of your own. Probably because you don't have any. Idiot. By the way your media bias is pretty far off.

n d 08/21/06 06:32:12 PM EDT

There are cool software tools and there are practical tools. People who make their living by development of the enterprise Web applications, are very careful in selecting the language or technology for their needs. There is a huge difference in requirements for developing an application like Google maps and the enterprise-grade high availability business applications. Anatole Tartakovsky of Farata Systems is one of these programmers that know pretty much everything about Web development.

Denis Roebrt 08/21/06 10:53:14 AM EDT

"Tough Questions"??? Sounds more like questions a Fox anchor would ask Bush. Sheesh, can an interview sound more like a sales pitch?

Or has Adobe finally bought Sys-Con and we don't know it yet?

n d 08/21/06 10:34:14 AM EDT

There are cool software tools and there are practical tools. People who make their living by development of the enterprise Web applications, are very careful in selecting the language or technology for their needs. There is a huge difference in requirements for developing an application like Google maps and the enterprise-grade high availability business applications. Anatole Tartakovsky of Farata Systems is one of these programmers that know pretty much everything about Web development.

@ThingsExpo Stories
"Space Monkey by Vivent Smart Home is a product that is a distributed cloud-based edge storage network. Vivent Smart Home, our parent company, is a smart home provider that places a lot of hard drives across homes in North America," explained JT Olds, Director of Engineering, and Brandon Crowfeather, Product Manager, at Vivint Smart Home, in this SYS-CON.tv interview at @ThingsExpo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
SYS-CON Events announced today that Conference Guru has been named “Media Sponsor” of the 22nd International Cloud Expo, which will take place on June 5-7, 2018, at the Javits Center in New York, NY. A valuable conference experience generates new contacts, sales leads, potential strategic partners and potential investors; helps gather competitive intelligence and even provides inspiration for new products and services. Conference Guru works with conference organizers to pass great deals to gre...
The Internet of Things will challenge the status quo of how IT and development organizations operate. Or will it? Certainly the fog layer of IoT requires special insights about data ontology, security and transactional integrity. But the developmental challenges are the same: People, Process and Platform. In his session at @ThingsExpo, Craig Sproule, CEO of Metavine, demonstrated how to move beyond today's coding paradigm and shared the must-have mindsets for removing complexity from the develop...
In his Opening Keynote at 21st Cloud Expo, John Considine, General Manager of IBM Cloud Infrastructure, led attendees through the exciting evolution of the cloud. He looked at this major disruption from the perspective of technology, business models, and what this means for enterprises of all sizes. John Considine is General Manager of Cloud Infrastructure Services at IBM. In that role he is responsible for leading IBM’s public cloud infrastructure including strategy, development, and offering m...
"Evatronix provides design services to companies that need to integrate the IoT technology in their products but they don't necessarily have the expertise, knowledge and design team to do so," explained Adam Morawiec, VP of Business Development at Evatronix, in this SYS-CON.tv interview at @ThingsExpo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
To get the most out of their data, successful companies are not focusing on queries and data lakes, they are actively integrating analytics into their operations with a data-first application development approach. Real-time adjustments to improve revenues, reduce costs, or mitigate risk rely on applications that minimize latency on a variety of data sources. In his session at @BigDataExpo, Jack Norris, Senior Vice President, Data and Applications at MapR Technologies, reviewed best practices to ...
Widespread fragmentation is stalling the growth of the IIoT and making it difficult for partners to work together. The number of software platforms, apps, hardware and connectivity standards is creating paralysis among businesses that are afraid of being locked into a solution. EdgeX Foundry is unifying the community around a common IoT edge framework and an ecosystem of interoperable components.
Large industrial manufacturing organizations are adopting the agile principles of cloud software companies. The industrial manufacturing development process has not scaled over time. Now that design CAD teams are geographically distributed, centralizing their work is key. With large multi-gigabyte projects, outdated tools have stifled industrial team agility, time-to-market milestones, and impacted P&L stakeholders.
"Akvelon is a software development company and we also provide consultancy services to folks who are looking to scale or accelerate their engineering roadmaps," explained Jeremiah Mothersell, Marketing Manager at Akvelon, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
"IBM is really all in on blockchain. We take a look at sort of the history of blockchain ledger technologies. It started out with bitcoin, Ethereum, and IBM evaluated these particular blockchain technologies and found they were anonymous and permissionless and that many companies were looking for permissioned blockchain," stated René Bostic, Technical VP of the IBM Cloud Unit in North America, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Conventi...
In his session at 21st Cloud Expo, Carl J. Levine, Senior Technical Evangelist for NS1, will objectively discuss how DNS is used to solve Digital Transformation challenges in large SaaS applications, CDNs, AdTech platforms, and other demanding use cases. Carl J. Levine is the Senior Technical Evangelist for NS1. A veteran of the Internet Infrastructure space, he has over a decade of experience with startups, networking protocols and Internet infrastructure, combined with the unique ability to it...
22nd International Cloud Expo, taking place June 5-7, 2018, at the Javits Center in New York City, NY, and co-located with the 1st DXWorld Expo will feature technical sessions from a rock star conference faculty and the leading industry players in the world. Cloud computing is now being embraced by a majority of enterprises of all sizes. Yesterday's debate about public vs. private has transformed into the reality of hybrid cloud: a recent survey shows that 74% of enterprises have a hybrid cloud ...
"Cloud Academy is an enterprise training platform for the cloud, specifically public clouds. We offer guided learning experiences on AWS, Azure, Google Cloud and all the surrounding methodologies and technologies that you need to know and your teams need to know in order to leverage the full benefits of the cloud," explained Alex Brower, VP of Marketing at Cloud Academy, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clar...
Gemini is Yahoo’s native and search advertising platform. To ensure the quality of a complex distributed system that spans multiple products and components and across various desktop websites and mobile app and web experiences – both Yahoo owned and operated and third-party syndication (supply), with complex interaction with more than a billion users and numerous advertisers globally (demand) – it becomes imperative to automate a set of end-to-end tests 24x7 to detect bugs and regression. In th...
"MobiDev is a software development company and we do complex, custom software development for everybody from entrepreneurs to large enterprises," explained Alan Winters, U.S. Head of Business Development at MobiDev, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
Coca-Cola’s Google powered digital signage system lays the groundwork for a more valuable connection between Coke and its customers. Digital signs pair software with high-resolution displays so that a message can be changed instantly based on what the operator wants to communicate or sell. In their Day 3 Keynote at 21st Cloud Expo, Greg Chambers, Global Group Director, Digital Innovation, Coca-Cola, and Vidya Nagarajan, a Senior Product Manager at Google, discussed how from store operations and ...
"There's plenty of bandwidth out there but it's never in the right place. So what Cedexis does is uses data to work out the best pathways to get data from the origin to the person who wants to get it," explained Simon Jones, Evangelist and Head of Marketing at Cedexis, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
SYS-CON Events announced today that CrowdReviews.com has been named “Media Sponsor” of SYS-CON's 22nd International Cloud Expo, which will take place on June 5–7, 2018, at the Javits Center in New York City, NY. CrowdReviews.com is a transparent online platform for determining which products and services are the best based on the opinion of the crowd. The crowd consists of Internet users that have experienced products and services first-hand and have an interest in letting other potential buye...
SYS-CON Events announced today that Telecom Reseller has been named “Media Sponsor” of SYS-CON's 22nd International Cloud Expo, which will take place on June 5-7, 2018, at the Javits Center in New York, NY. Telecom Reseller reports on Unified Communications, UCaaS, BPaaS for enterprise and SMBs. They report extensively on both customer premises based solutions such as IP-PBX as well as cloud based and hosted platforms.
It is of utmost importance for the future success of WebRTC to ensure that interoperability is operational between web browsers and any WebRTC-compliant client. To be guaranteed as operational and effective, interoperability must be tested extensively by establishing WebRTC data and media connections between different web browsers running on different devices and operating systems. In his session at WebRTC Summit at @ThingsExpo, Dr. Alex Gouaillard, CEO and Founder of CoSMo Software, presented ...