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
SYS-CON Events announced today that Massive Networks will exhibit at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Massive Networks mission is simple. To help your business operate seamlessly with fast, reliable, and secure internet and network solutions. Improve your customer's experience with outstanding connections to your cloud.
SYS-CON Events announced today that CAST Software will exhibit at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 - Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. CAST was founded more than 25 years ago to make the invisible visible. Built around the idea that even the best analytics on the market still leave blind spots for technical teams looking to deliver better software and prevent outages, CAST provides the software intelligence that matter ...
Because IoT devices are deployed in mission-critical environments more than ever before, it’s increasingly imperative they be truly smart. IoT sensors simply stockpiling data isn’t useful. IoT must be artificially and naturally intelligent in order to provide more value In his session at @ThingsExpo, John Crupi, Vice President and Engineering System Architect at Greenwave Systems, will discuss how IoT artificial intelligence (AI) can be carried out via edge analytics and machine learning techn...
Everything run by electricity will eventually be connected to the Internet. Get ahead of the Internet of Things revolution and join Akvelon expert and IoT industry leader, Sergey Grebnov, in his session at @ThingsExpo, for an educational dive into the world of managing your home, workplace and all the devices they contain with the power of machine-based AI and intelligent Bot services for a completely streamlined experience.
SYS-CON Events announced today that Datera, that offers a radically new data management architecture, has been named "Exhibitor" of SYS-CON's 21st International Cloud Expo ®, which will take place on Oct 31 - Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Datera is transforming the traditional datacenter model through modern cloud simplicity. The technology industry is at another major inflection point. The rise of mobile, the Internet of Things, data storage and Big...
In his session at @ThingsExpo, Arvind Radhakrishnen discussed how IoT offers new business models in banking and financial services organizations with the capability to revolutionize products, payments, channels, business processes and asset management built on strong architectural foundation. The following topics were covered: How IoT stands to impact various business parameters including customer experience, cost and risk management within BFS organizations.
SYS-CON Events announced today that CA Technologies has been named "Platinum Sponsor" of SYS-CON's 21st International Cloud Expo®, which will take place October 31-November 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. CA Technologies helps customers succeed in a future where every business - from apparel to energy - is being rewritten by software. From planning to development to management to security, CA creates software that fuels transformation for companies in the applic...
SYS-CON Events announced today that Pulzze Systems will exhibit at SYS-CON's 21st International Cloud Expo®, which will take place October 31-November 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Pulzze Systems Inc, provides the software product "The Interactor" that uniquely simplifies building IoT, Web and Smart Enterprise Solutions. It is a Silicon Valley startup funded by US government agencies, NSF and DHS to bring innovative solutions to market.
From 2013, NTT Communications has been providing cPaaS service, SkyWay. Its customer’s expectations for leveraging WebRTC technology are not only typical real-time communication use cases such as Web conference, remote education, but also IoT use cases such as remote camera monitoring, smart-glass, and robotic. Because of this, NTT Communications has numerous IoT business use-cases that its customers are developing on top of PaaS. WebRTC will lead IoT businesses to be more innovative and address...
WebRTC is great technology to build your own communication tools. It will be even more exciting experience it with advanced devices, such as a 360 Camera, 360 microphone, and a depth sensor camera. In his session at @ThingsExpo, Masashi Ganeko, a manager at INFOCOM Corporation, will introduce two experimental projects from his team and what they learned from them. "Shotoku Tamago" uses the robot audition software HARK to track speakers in 360 video of a remote party. "Virtual Teleport" uses a...
When shopping for a new data processing platform for IoT solutions, many development teams want to be able to test-drive options before making a choice. Yet when evaluating an IoT solution, it’s simply not feasible to do so at scale with physical devices. Building a sensor simulator is the next best choice; however, generating a realistic simulation at very high TPS with ease of configurability is a formidable challenge. When dealing with multiple application or transport protocols, you would be...
SYS-CON Events announced today that CA Technologies has been named “Platinum Sponsor” of SYS-CON's 21st International Cloud Expo®, which will take place October 31-November 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. CA Technologies helps customers succeed in a future where every business – from apparel to energy – is being rewritten by software. From planning to development to management to security, CA creates software that fuels transformation for companies in the applic...
In his session at @ThingsExpo, Dr. Robert Cohen, an economist and senior fellow at the Economic Strategy Institute, presented the findings of a series of six detailed case studies of how large corporations are implementing IoT. The session explored how IoT has improved their economic performance, had major impacts on business models and resulted in impressive ROIs. The companies covered span manufacturing and services firms. He also explored servicification, how manufacturing firms shift from se...
SYS-CON Events announced today that Elastifile will exhibit at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 - Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Elastifile Cloud File System (ECFS) is software-defined data infrastructure designed for seamless and efficient management of dynamic workloads across heterogeneous environments. Elastifile provides the architecture needed to optimize your hybrid cloud environment, by facilitating efficient...
SYS-CON Events announced today that Golden Gate University will exhibit at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Since 1901, non-profit Golden Gate University (GGU) has been helping adults achieve their professional goals by providing high quality, practice-based undergraduate and graduate educational programs in law, taxation, business and related professions. Many of its courses are taug...
Recently, WebRTC has a lot of eyes from market. The use cases of WebRTC are expanding - video chat, online education, online health care etc. Not only for human-to-human communication, but also IoT use cases such as machine to human use cases can be seen recently. One of the typical use-case is remote camera monitoring. With WebRTC, people can have interoperability and flexibility for deploying monitoring service. However, the benefit of WebRTC for IoT is not only its convenience and interopera...
When shopping for a new data processing platform for IoT solutions, many development teams want to be able to test-drive options before making a choice. Yet when evaluating an IoT solution, it’s simply not feasible to do so at scale with physical devices. Building a sensor simulator is the next best choice; however, generating a realistic simulation at very high TPS with ease of configurability is a formidable challenge. When dealing with multiple application or transport protocols, you would be...
WebRTC is the future of browser-to-browser communications, and continues to make inroads into the traditional, difficult, plug-in web communications world. The 6th WebRTC Summit continues our tradition of delivering the latest and greatest presentations within the world of WebRTC. Topics include voice calling, video chat, P2P file sharing, and use cases that have already leveraged the power and convenience of WebRTC.
SYS-CON Events announced today that Secure Channels, a cybersecurity firm, will exhibit at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Secure Channels, Inc. offers several products and solutions to its many clients, helping them protect critical data from being compromised and access to computer networks from the unauthorized. The company develops comprehensive data encryption security strategie...
An increasing number of companies are creating products that combine data with analytical capabilities. Running interactive queries on Big Data requires complex architectures to store and query data effectively, typically involving data streams, an choosing efficient file format/database and multiple independent systems that are tied together through custom-engineered pipelines. In his session at @BigDataExpo at @ThingsExpo, Tomer Levi, a senior software engineer at Intel’s Advanced Analytics ...