November 25th, 2009

Memory Management: Use the Lightest Classes You Can.

David and I have been teaching Flex at a local college.  Recently David mentioned to a student that he should use a lighter-weight class for a mask than Canvas.  The student asked why.  This brings up a good point.

When you’re using various Flex framework classes, you need to stop and think.  Do I really need the class I’m using or can I get away with something smaller.  One good example is when you’re creating custom MXML components.  Many times a rookie developer will create an MXML component with a Container as the root component when all they really need to do is to make a UI Control the root component.

In the case of the question, when using a mask, a very lightweight class the Sprite could have been used if the student had not needed the mask to participate in the display list.  Otherwise, they could have used a custom class based on UIComponent, vs using the larger Canvas class.

Just to re-enforce David’s point, I created a little POC where I created three custom classes, one based on Canvas, one based on UIComponent, and one based on Sprite.  I did not create any custom code in these classes, they were simply used so that they’d be easier to call out in the Flex Builder Profiler.  Then I profiled the application and here’s a screenshot of the results.

As you can see, there can be significant memory impact when you use classes that are more robust than you need.

That being said, pay attention to the classes you use in your code, and always stop to think, do I really need to use this class, or can I get away with something that is lighter-weight?

October 8th, 2009

Slides and Demos Now Available, MAX 2009: FP/AIR Performance and Memory Management

Thanks to all who stayed till the last session of the last day of MAX 2009 to watch my talk “Tackling Memory and Performance in Flash, Flex, and Adobe AIR“. I hope it was worth your while!

Thanks to Jonathan Campos for working together with me on prepping the session on short notice during MAX and talking at the Tuesday session, it was an honor, and pretty fun too.

Here are some links to the assets:

1. Slides/Resource link PDFs

2. FXPs of the demos I used during the talk

3. Resource links page online

Also, for those that couldn’t make it, here’s a screen cast of the presentation which is embedded below.

October 7th, 2009

Adobe MAX: Pinch Hitting a talk on Flash Player / AIR Memory and Performance

Today at 5pm Pacific Time I will be pinch hitting a talk on Flash Player and AIR memory and performance.  I found out about it on Saturday evening and have worked with Jonathan Campos – he presented the session on Tuesday – throughout the week to come up with some slides and demos.  If you’re at MAX and the following description sounds appealing to you, come join me in room 411 at 5pm.

Tackling Memory and Performance in Flash, Flex, and Adobe AIR

Learn everything you need to know about managing memory during the lifetime of your application. We’ll address how objects are created and deleted, how the garbage collector works, and how to debug your applications to find any leaks. We’ll also cover how you can monitor the memory and performance of your application using the Flash Builder 4 Profiler. You’ll walk away with code in hand that provides solutions to common problems likely to be encountered when creating a wide range of applications.

September 8th, 2009

Flash Builder 4 Profiler: All Your Backreference Belong to Us.

Along with a new and improved Object References view in the Flash Builder 4 Profiler, there are new and improved settings in the Eclipse preferences.  So now, you can open Eclipse Preferences and go to Flash Builder –> Profiler –> Object References and see the new settings:

By default “Show all back-reference paths” is unchecked and the maximum back-reference paths that will be found is 10. So, if you’re profiling your app and have a strong suspicion that the picture the profiler is painting for you is incomplete, you might want to play around with these settings.

April 24th, 2009

360|Flex Indy: Throw me the idol and I’ll give you the whip.

360|Flex Indy is just around the corner, and I have a request for you to help me to help you. As you may be aware, I’m doing the presentation on Flex Profiling by Example. The key to this presentation is a very small number of slides and theory, and a good number of live demonstration. That being said, I’m going to take a cue from Tom and John, and solicit community input.

Here’s the deal. This presentation is going to be 1.0 at 360|Flex Indy. I want it to be my most bad ass presentation yet, and I hope to make it worthwhile to all that attend. So, throw me the idol by giving me ideas on the type of live presentation you’d like to see and I’ll give you the whip by showing you the ropes on the Flex Profiler.

Without further ado, here’s the link to start giving me some input:

http://junsessions.uservoice.com/pages/general

Also, if you haven’t yet registered, stop slacking, and here’s the link:

http://360flex.eventbrite.com/

I thank you for your support, and see ya’ll there…

March 5th, 2009

CFUnited 2009 – Intro to Flex Debugging and Profiling

I was asked to present a 100 level intro on Flex debugging and profiling at the upcoming CFUnited conference. This session will be geared toward those of you just getting started with Flex development.

If you’re going to attend and are interested in what I’ve said so far, here is my session abstract:

If you are new to Flex development and want to be shown the ropes on how to debug and profile your applications, this is the session for you. During this session all aspects of debugging and profiling your applications using Flex Builder and other useful tools will be covered through both oral presentation and live demonstration. By the end of the session you should have a good understanding of the tools available to you for debugging and profiling your Flex applications.

Also, if you’re thinking of going to the conference, you definitely should, there’s a great lineup of speakers with some very interesting sessions.  Here’s the link to register:

http://register.cfunited.com/

This will be my first time at a CFUnited conference so I’m really looking forward to checking it out.  Lately, I spend so much of my time working with Flex and AIR that it’s hard to keep up on all the fancy new stuff in the ColdFusion world, so the CFUnited conference will be my ticket to get up to speed this year. :)

September 12th, 2008

My 360|Flex San Jose Presentation was AMPed!

Here’s a link to my Profiler presentation…complete with audio and all:

http://www.onflex.org/ted/2008/09/360flex-sj-2008-using-flex-builder-3.php

Thanks Ted, recording team, John and Tom…and also Alex for sitting in the back of the room to help. :)

May 27th, 2008

Webmaniacs 2008 – Flex Debugging and Memory Management slides

The slides and code samples from my Flex Debugging sessions are now available. You can get them here:

Also, earlier in the week, the person that was gonna present on Flash Player Memory Management cancelled out and I was asked to cover for them.  Here are the slides and code samples for that session:

All in all, I enjoyed myself at the conference.  I got to meet and hang out with some great people in the community.  Heck, one night about 15 of us even went to China town to check out Indy and Iron Man.

As far as other people’s presentations, I have to admit I spent much of my time there working and prepping for the potential 5 presentations: 2 that were mine, 3 more I offered to cover that week.  Luckily for me I only had to present 3, but the unfortunate part is I missed out on some good sessions.

From what I did see, here’s what was good and interesting:

I got to check out Nick Matelli’s presso on CVS and ANT:

http://www.amentra.com/news_events/webmaniacs.asp

http://www.webmaniacsconference.com/Downloads/upload/cvs.zip

Thanks to Laura Arguello, I got to see a new Flex application framework called Mate (Pronounced MA-TAY Not mate):

http://mate.asfusion.com/

http://www.webmaniacsconference.com/Downloads/upload/mate.pdf

I also got to hang with David Hassoun while he gave his bad-ass presentations on Flex Skinning and AIR:Windows, Menus, System Tray:

http://labs.realeyes.com/labs/downloads/Flexmaniacs_2008_Flex3_Skinning.zip

http://labs.realeyes.com/labs/downloads/FlexManiacs2008_Windows_Menus_SystemTray.zip

February 28th, 2008

Flex 3 BYOP: Bring your own profiler…flash.sampler

So during my presentation at 360Flex some people had questions about accessing the profiler without Flex Builder 3 Professional. Being completely swamped on projects of late and not getting too much time to read extra material, I told them that there probably wasn’t but talk to David Zuckerman to find out if the API to the Profiler is exposed in Flex Builder…or something to that extent. Although I think this would have been more in Mike Morearty‘s or Tom Reilly’s court…

Well, unfortunately it looks like the Profiler is not accessible through an Eclipse based API… heres a tidbit according to Ted Patrick from a little while back:

“the code model and language intelligence features are there for you to extend and build upon. Eclipse is designed from the ground up to support plug-in extensibility and we have exposed these APIS for you to extend.”

Here’s the link to the info above:

http://www.onflex.org/ted/2007/09/flex-3-beta-2-code-debug-profiler.php

Now for the best part about this post…here is some late breaking news, and so far I don’t think anyone yet has blogged about it. Although it’s late…I need to sleep…and I haven’t fully digested all the specifics yet,  if you’re cool with some caveats you get a pretty awesome new package to play with and build your own Profiler!!!

Here are the caveats:

  1. You have to run the app in debug mode. (Specifically 9.0.115.0)
  2. You need to make use of PreloadSwf in the mm.cfg file to preload any custom profiling agent.

So…if you’re cool with that…drum roll please…I now announce the flash.sampler.* package!

Here’s some links for those of you who find this interesting:

Hey Doug…you feel like adding another tab to your custom FlexSpy? :)

Night all…

February 27th, 2008

360 Flex Milan, 360 Flex Atlanta, and My Presentation

For those of you that were interested in downloading my 360Flex Atlanta presentation on memory management and optimization, it can be found here:

http://labs.realeyes.com/default.cfm?cnt=presentations

Here are the direct links:

(My code)

(My Presentation)

Also, I just wanted to say for those of you that are going to be in Europe in April, you should definitely think about registering for 360 Flex Milan:

http://www.360flex.com/360Flex_Europe/

Tom and John put on bad-ass conferences with excellent parties full of free beer, food, shinanigans, and very good speakers that I look up to. As a little sampling of what you’re missing if you don’t come to 360:

Here in Atlanta yesterday Michael Labriola gave an outstanding presentation on Flex component lifecycle architecture…I have not seen or read any discussion of the component lifecycle that went into the depth of Michael’s. (His presentation can be found here)

Also yesterday I saw Doug Mccune give his overview of what’s out there in Flex open source. It was very informative filled with awesome information on projects I’ve never heard of and with plenty of cool shits. Pardon the translation. (His cool shits can be found here)

Now I’m sitting in on Ben Stuki’s presentation – a link to his blog – he’s a programming bad-ass. Some of the things he’s done is metaphile, degrafa, and openflux.

Anyway…back to the presentation I’ve got some 3D glasses and he’s showing some pretty cool stuff!

« Previous Entries

Upcoming Talks





A Book I Helped Write



Community


Ignite Denver Committee

Categories

Credits