Welcome!

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

Related Topics: Adobe Flex

Adobe Flex: Blog Feed Post

Adobe Flex Development - Personal Retrospect

Last year, I started writing a small application using the Adobe Flex SDK

I occasionally start small projects for friends or family. I intentionally use technology I have not used before in order to learn new things. The client gets something, I learn something new. It's nice also, because it forces me to finish the projects.

Last year, I started writing a small application using the Adobe Flex SDK, (version 4, even though it was just beta when I started). The app simply streams audio and flips slide images, a Flex/AS3 component, or a customizable automatically-generated questionnaire/quiz at defined timestamps. All of this is configured through a reasonably small XML file, all via the network.

The first problem I ran into was finding a decent development environment. Adobe's Flex Builder, (based on Eclipse, now called Flash Builder), had few nice features but also some things I couldn't live with. For what it provided on top of basic Eclipse, which was almost nothing, the price was robbery.


Problems with Flash Builder 4
  1. It hid some of the build details too much. Flash Builder provided almost no help in writing an appropriate build/ant file. Since I wanted to be able to build from the command-line, it was not very useful to me. Lesson: Don't expect Flash Builder to jumpstart you if you are a power user. Once you leave the dock, you'll need to paddle.

  2. Flash Builder had no source code formatting for ActionScript, other than automatic indentation as you enter it. I don't want to spend my time formatting all of the code. I found several options, the best of which was a plugin for Eclipse/Flex Builder. However, they were all based on older versions of Flex and ActionScript 2, which had significant changes in Flex 4 and could not be used. Lesson: I am sure they will support this, if Flash Builder 4 doesn't already support it in the current build, because without source formatting (i.e. you just refactored and indentation is no longer consistent), development is annoying.
Alternative Flex Editors
After several hours, I realized that my favorite Java IDE, Intellij Idea, supported Flex files. It even provided Source Code formatting for ActionScript 3. Since I had to write the build scripts/xml anyway, Intellij Idea turned out to be the ideal environment. As a mac user, TextMate is also pretty good, but at the time, still no easy source formatting for the latest ActionScript was available.

I was pretty surprised that IntelliJ was the best option, for Flex 4, at the time. I could debug, build, format source, run tests. I had more functionality from a third party, for a fraction of the price, than from the vendor alone.

Problems with Flex 4, ActionScript 3
As if tracking down suitable development tools wasn't time-consuming enough, there are several traps in Flex/ActionScript that make the experience a little more bitter for a newcomer.
  1. Many calls in ActionScript are asynchronous and have to be designed with concurrency in mind. The problem is that it's not always completely clear which calls are async. You can safely say that IO calls, such as HTTP and File requests, are async. Many things that I expected to be synchronous, (next line of code doesn't execute until the current line is done), were async, due to one or more of their dependencies being async. Lesson: Just use events (callbacks would be better) as much as possible. I got much better at this, but even examples in Adobe's live docs, (the main cause for my headaches), were only applicable in certain cases and very misleading.

  2. I hit a few bugs, where certain features I was using could only be called in certain ways, not in all of the ways shown in the docs. And that was fine when I was using the beta SDK. But in the fall of 2010, when I finished up, Flex 4 was released, I expected less issues. Lesson: Stay glued to the forums. Unit Test your code.
Summary
I don't have many issues anymore, although I still use Idea to develop instead of Flash Builder. My experience was a first impression. I mostly got over the language, SDK problems, much of it my own design errors. But Flash Builder needs some serious improvement.

As simple as my app was, I think it had a few aspects that forced me out of my shell and it didn't give me a server backend to depend on as much, as the client is (capable of) doing more. It's quite possible that I was a tad ambitious for a first app.

Unfortunately, I waited months to finish this post so I'll have to come back with the specific bugs/issues with the language, after reviewing my notebook.

Read the original blog entry...

More Stories By Jason Alexander

Unix Administrator for seven years. Software Developer for four years. Java, Groovy, Scala and more. Fan of the Pragmatic Bookshelf and continuous improvement.

@ThingsExpo Stories
With major technology companies and startups seriously embracing Cloud strategies, now is the perfect time to attend @CloudExpo | @ThingsExpo, June 6-8, 2017, at the Javits Center in New York City, NY and October 31 - November 2, 2017, Santa Clara Convention Center, CA. Learn what is going on, contribute to the discussions, and ensure that your enterprise is on the right path to Digital Transformation.
In order to meet the rapidly changing demands of today’s customers, companies are continually forced to redefine their business strategies in order to meet these needs, stay relevant and continue to see profitable growth. IoT deployment and development is integral in this transformation, and today businesses are increasingly seeing the value of investing their resources into IoT deployments. These technologies are able increase ROI through projects such as connecting supply chains or enabling sm...
DevOps is often described as a combination of technology and culture. Without both, DevOps isn't complete. However, applying the culture to outdated technology is a recipe for disaster; as response times grow and connections between teams are delayed by technology, the culture will die. A Nutanix Enterprise Cloud has many benefits that provide the needed base for a true DevOps paradigm.
SYS-CON Events announced today that Outscale, a global pure play Infrastructure as a Service provider and strategic partner of Dassault Systèmes, will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. Founded in 2010, Outscale simplifies infrastructure complexities and boosts the business agility of its customers. Outscale delivers a secure, reliable and industrial strength solution for its customers, which in...
SYS-CON Events announced today that Progress, a global leader in application development, has been named “Bronze Sponsor” of SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. Enterprises today are rapidly adopting the cloud, while continuing to retain business-critical/sensitive data inside the firewall. This is creating two separate data silos – one inside the firewall and the other outside the firewall. Cloud ISVs ofte...
SYS-CON Events announced today that Tintri, Inc, a leading provider of enterprise cloud infrastructure, will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. Tintri offers an enterprise cloud platform built with public cloud-like web services and RESTful APIs. Organizations use Tintri all-flash storage with scale-out and automation as a foundation for their own clouds – to build agile development environments...
In his opening keynote at 20th Cloud Expo, Michael Maximilien, Research Scientist, Architect, and Engineer at IBM, will motivate why realizing the full potential of the cloud and social data requires artificial intelligence. By mixing Cloud Foundry and the rich set of Watson services, IBM's Bluemix is the best cloud operating system for enterprises today, providing rapid development and deployment of applications that can take advantage of the rich catalog of Watson services to help drive insigh...
SYS-CON Events announced today that DivvyCloud will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. DivvyCloud software enables organizations to achieve their cloud computing goals by simplifying and automating security, compliance and cost optimization of public and private cloud infrastructure. Using DivvyCloud, customers can leverage programmatic Bots to identify and remediate common cloud problems in rea...
The 21st International Cloud Expo has announced that its Call for Papers is open. Cloud Expo, to be held October 31 - November 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA, brings together Cloud Computing, Big Data, Internet of Things, DevOps, Digital Transformation, Machine Learning and WebRTC to one location. With cloud computing driving a higher percentage of enterprise IT budgets every year, it becomes increasingly important to plant your flag in this fast-expanding busin...
A strange thing is happening along the way to the Internet of Things, namely far too many devices to work with and manage. It has become clear that we'll need much higher efficiency user experiences that can allow us to more easily and scalably work with the thousands of devices that will soon be in each of our lives. Enter the conversational interface revolution, combining bots we can literally talk with, gesture to, and even direct with our thoughts, with embedded artificial intelligence, whic...
SYS-CON Events announced today that Cloudistics, an on-premises cloud computing company, has been named “Bronze Sponsor” of SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. Cloudistics delivers a complete public cloud experience with composable on-premises infrastructures to medium and large enterprises. Its software-defined technology natively converges network, storage, compute, virtualization, and management into a ...
Every successful software product evolves from an idea to an enterprise system. Notably, the same way is passed by the product owner's company. In his session at 20th Cloud Expo, Oleg Lola, CEO of MobiDev, will provide a generalized overview of the evolution of a software product, the product owner, the needs that arise at various stages of this process, and the value brought by a software development partner to the product owner as a response to these needs.
New competitors, disruptive technologies, and growing expectations are pushing every business to both adopt and deliver new digital services. This ‘Digital Transformation’ demands rapid delivery and continuous iteration of new competitive services via multiple channels, which in turn demands new service delivery techniques – including DevOps. In this power panel at @DevOpsSummit 20th Cloud Expo, moderated by DevOps Conference Co-Chair Andi Mann, panelists will examine how DevOps helps to meet th...
Most technology leaders, contemporary and from the hardware era, are reshaping their businesses to do software in the hope of capturing value in IoT. Although IoT is relatively new in the market, it has already gone through many promotional terms such as IoE, IoX, SDX, Edge/Fog, Mist Compute, etc. Ultimately, irrespective of the name, it is about deriving value from independent software assets participating in an ecosystem as one comprehensive solution.
SYS-CON Events announced today that EARP will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. "We are a software house, so we perfectly understand challenges that other software houses face in their projects. We can augment a team, that will work with the same standards and processes as our partners' internal teams. Our teams will deliver the same quality within the required time and budget just as our partn...
SYS-CON Events announced today that delaPlex will exhibit at SYS-CON's @ThingsExpo, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. delaPlex pioneered Software Development as a Service (SDaaS), which provides scalable resources to build, test, and deploy software. It’s a fast and more reliable way to develop a new product or expand your in-house team.
SYS-CON Events announced today that Tappest will exhibit MooseFS at SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. MooseFS is a breakthrough concept in the storage industry. It allows you to secure stored data with either duplication or erasure coding using any server. The newest – 4.0 version of the software enables users to maintain the redundancy level with even 50% less hard drive space required. The software func...
SYS-CON Events announced today that A&I Solutions has been named “Bronze Sponsor” of SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. Founded in 1999, A&I Solutions is a leading information technology (IT) software and services provider focusing on best-in-class enterprise solutions. By partnering with industry leaders in technology, A&I assures customers high performance levels across all IT environments including: mai...
In his keynote at @ThingsExpo, Chris Matthieu, Director of IoT Engineering at Citrix and co-founder and CTO of Octoblu, focused on building an IoT platform and company. He provided a behind-the-scenes look at Octoblu’s platform, business, and pivots along the way (including the Citrix acquisition of Octoblu).
SYS-CON Events announced today that Systena America will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. Systena Group has been in business for various software development and verification in Japan, US, ASEAN, and China by utilizing the knowledge we gained from all types of device development for various industries including smartphones (Android/iOS), wireless communication, security technology and IoT serv...