As a follow-up to the RIA Unleashed Boston 2011 day one highlights post, below is a wrap-up of day two brought to you by attendee Doug Reynolds.
519 miles driven, 4 cups of coffee and 8 shots of espresso later {{{MOAR Coffee!!!}}} I have finally had a chance to sit down at my hotel desk to review and consolidate my session notes into this blog post. Day two of RIA Unleashed began with a beautiful, sunny Boston morning.
The second day of RIA Unleashed was all about sessions, whereas day one was workshops. The registration desk was busy checking in all of the attendees. I made my way back to the executive dining area to get some coffee and talk to friends and colleagues. I really appreciate how available all of the presenters at this conference have been; I’ve been able to approach anyone with which I would like to ask questions or discuss session topics and have been received with nothing but willingness to take the time for answers and insight. This willingness by the presenters makes conferences all the more worthwhile as I am able to take more knowledge with me on my way out.
The first session of the day was the Adobe Keynote, presented by Terry Ryan. Ok, keynotes are great, we get some cool announcements from the sponsors. However, this one was notable. Why? Well, after Adobe Max, I heard so much chatter about the emphasis that Adobe placed on HTML5 and PhoneGap. People, however, weren’t talking about this emphasis directly. Rather, they were talking about the lack of emphasis on Flash, Flex, and ColdFusion. There was some real heated talk on Twitter and Google+ which eluded to abandonment of Flex and ColdFusion.
Honestly people, really? By virtue of being involved with Adobe programs, I can say that there is so much attention going into the Flash platform and ColdFusion that people simply don’t know what is going on yet...but they will. I talked to Terry about these perceptions following his session and asked him if there was anything he’d like for me to mention that would address people’s concerns. The main point that he wanted to get across is that we have to understand the Flash platform community is obviously in-tune and responsive to Adobe and developments with the platform. However, the HTML5, JavaScript, PHP, etc... communities are not near as in-tune with Flash because the Flash platform is not a direct part of their platforms or communities. In order for Adobe to reach that audience, its imperative that they get the message out, get it out in a big way, and do it often.
The way I think about this, and I personally believe that Adobe does too, is that there are many ways that all of these technologies are complementary. We have to also consider native languages within which Flash runs. Adobe is giving us the ability, through AIR Native Extensions (ANE) to write our own Native APIs in Java, C#, Objective C, and more, to extend ActionScript to add functionality that doesn’t exist.
As for Adobe’s attention to Flash, Flex, and ColdFusion, well, if you weren’t paying attention then this will be huge news to you.
Flash
- Flash Player 11 Released
- Stage3D
- JSON Support
AIR 3 Released
- Native Extensions
- Captive Runtime
Flex 4.6
- New containers and components
- SplitViewNavigator
- CallOut Button
- SpinnerList
- DateSpinner
- ToggleButton
- NativeText
- native keyboard support
- auto capitalization
- auto correct
- 4.6 is a free upgrade for existing 4.5 users
Falcon
- The next generation compiler for Flex
- Up to 10 times faster
- Compile as you type
- Incredibly small resource usage
ColdFusion - On the Horizon
- ColdFusion Zeus
- Goodbye to JRUN Hello to Tomcat
- Goodbye to Verity Hello to SOLR
- Goodbye to Webcharts Hello to something better :-)
- Enhanced Admin w/ Hotfix Manager
- Enhanced Security, more advanced cross-scripting protection
- Enhancements with Web Servers
- HTML5 support
- location aware maps
- audio video tag mediaplayer
- ORM and Search enhancements
- JAVA Integration
- Language
- Cookie manipulation
- For-in looping for queries
- CallStack
- More implicite CFC's
- Closures
To wrap up, Terry addressed the emphasis on multi-screen development. Adobe has released a huge amount of products and enhancements. They have been acquiring new technologies and have been focused on multi-screen development in Flex/AIR. "Companies are more and more going to say, 'why are we building two versions of the same app,' multi-Screen development is going to be something that companies want - that companies need," Terry said.
The next session I attended was Jesse Warden’s, Refactoring: Getting Things Done, Keeping the Code Clean. Jesse launched into a fast-paced presentation covering refactoring. He approached this highly misunderstood and under-used topic from the point of view of interaction with other people. People, referring to non-technical clients as well as colleagues. Refactoring is the process of improving code and architecture without changing overall functionality or expected results.
Jesse covered common fallacies revolving around error catching and processes that can be used with varying degrees of results. Interaction with others was the predominant theme of the presentation. Coming from the perspective of a consultant, he asks, how can we improve trust, empower others to collaborate, and create an overall improvement of attitude, motivation, and desire to produce higher quality software. In the section of his presentation where he discussed the importance of leadership, Jesse made a brilliant, albeit morbidly funny, analogy to the “Cleaner” scene from Quintin Tarantino’s Pulp Fiction. "I solve problems." I can succinctly sum up Jesse’s intended message to software consultants in five words: Listen, Build Trust, and Lead.
Following Jesse’s presentation, I attended Terry Ryan’s Customizing the look of Mobile Flex. Terry addressed the importance of design, his main point being that people will tend to choose a beautifully designed application over an application with a lesser quality design even though the two may provide the exact same functionality. “Why care about beauty? Beauty is going to be the difference between apps that people have to use and apps that people want to use,” said Terry. He proceeded to demo the development of a bare-themed location search application and progressively incorporate skinning and CSS.
After Lunch, I attended Christophe Coenraets Cross Platform Mobile Applications From the Trenches. Christophe was filling in for Ryan Stewart who was unable to attend due to a scheduling conflict. Christoph asked, "What are we developing for? 5 Years ago, we were developing for a specific platform. Today, we are dealing with multiple device platforms, varying screen dimensions and DPI. The first challenge is obviously screen size. We have to be able to adapt a single application to work across platforms." The idea of states and state groups provide us with solutions to automatically adapt to changing device types, paradigms (consider back button on Android which doesn't exist on iOS) and screen sizes.
Screen density is another problem that we now have to be concerned with. Screen Density is the Dots Per Inch (DPI). This is important as the impact on graphics size rendering is profound. Using applicationDPI property on the Application and setting DPI at 160, Flex will automatically scale content for you. However, scaling can cause pixelation and degradation of image/graphic quality. If you need better control, then it is necessary to have individual assets designed for specific screen densities. Christoph illustrated by example the process of developing, building, packaging, and deploying to multiple device platforms with varying screen sizes and densities.
The next session I attended was Introducing Robotlegs 2.0 presented by Justin Moses, who was filling in for Joel Hooks. Okay, so more HUGE news of the day here, at the end of the presentation, Justin announced that Robotlegs 2.0 was being released on github. Justin provided a highly technical presentation on new features and enhancements of Robotlegs 2.0 over the 1.x framework. One of the new features of RL 2.0 is to provide the ability to choose API, whereas in RL 1.x features are bound to the Context. RL 2.0 introduces the Context builder. Context Builder is a core RL 2.0 feature. What this allows us to do is define features to be included so that un-needed features don't have to be included in the application. RL 2.0 also has pre-configured sets of features, pre-configured bundles. There are four main bundles, including the original RL 1.x bundle, the 2nd is called Light, designed when size and performance are paramount. The third is named Rapid, designed for quick implementation. The Fourth is Smart Views, which facilitates view injection. Justin also mentioned that the roadmaps for Robotlegs and Swift Suspenders were converging, as a result, Swift Suspenders will become completely integrated into RL 2.0.
My final session of the day was in Christophe Coenraets’ - Building and Deploying Native Extensions with AIR 3. Native Extensions provide access to device capabilities for which AIR does not provide an API. For instance:
- Gyroscope sensor, or vibration
- Licensing, Payment, or Advertisement APIs
- Local notifications or push notifications
Native Extensions facilitate the re-use of legacy code, for example, physics engines, image or video filters, PDF rendering. Native extensions provide us with the ability to achieve greater performance than we are able to in ActionScript - The reality is that AS doesn't run as fast as native code. By implementing Native Extensions in AIR mobile applications, we can greatly improve performance.
Christophe posed the question: What are Native Extensions?
Native extensions are Reusable software components which define an ActionScript API. They can be developed and distributed independent of applications and are added at development time to applications that use them.
The final event of the conference was the after party. FITC really treated us to a great time at the Lansdowne Pub in Downtown Boston, right across the street from Fenway Park and next door to House of Blues. A bus was provided to transport attendees to and from the party where we were provided with an open bar, a table of delicious food, live music and an absolutely great time. Thank you to FITC and all the presenters!!! This was an amazing conference and I can’t wait to attend another in the near future.
Now its time to get ready to drive another 568 miles completely over-caffeinate and write better code thanks to having been to FITC’s RIA Unleashed Boston 2011!
Be sure to look out for announcements on RIA Unleashed Boston 2012 next summer!