A code monkey randomly typing on a keyboard for an infinite amount of time will almost surely produce brilliance (almost).

Spoken @ Capital Flash Camp

Posted: April 18th, 2010 | Author: Huyen Tue Dao | Filed under: Development | Tags: , , , , , | No Comments »

First off, thanks to Sara Nieburg, Andy Powell, David Tucker, and Todd Cieplinski of Universal Mind for putting together a Flash Camp in the DC Metro area. We just don’t get enough community events in the aret.  It was also great to see some familiar faces from the Capital Flex User Group.  Admittedly, I haven’t been able to attend in months, but I was told there was beer last time.  Damn, need to start going again.

I know the attendance was not what some people might have hoped, but I think it wasn’t bad considering that Capital Flash Camp was announced just a little over a month ago.  The DC area’s Flex community is not as large as other places (Flash Camp SF was the same day and heavily attended, but it’s a big hub for the community) so it’s worthwhile whenever we get together.

As an aside, the Naval Heritage Center is a great place to check out if you’re doing the tourist thing in DC.

So presentations…

Terry Ryan, Keynote: Terry is a platform evangelist from Adobe and gave an overview of all the features available in Flash Builder, Flash Catalyst, and CF Builder and discussed workflows between the three.  Even with all of the new presos on Flex 4, there was still plenty to learn (I had no idea about the two-way binding in Flex 4).

Jeff Tapper, Flex 4 for Flex 3 Developers: As always, Jeff gave a great preso between his straightforward-yet-humorous delivery and his ability to explain the why’s behind the how’s and what’s.

Christian Saylor, The Art of Storytelling: Really enjoyed how Christian (Anti-Chris) relating storytelling to designing applications and more importantly his take on how and why some applications and products take hold of us and change our ways, while others don’t.

Carl Smith, It’s a Matter of Trust: Carl’s presentation was a hilarious overview about the different ways that trust affects how we interact with the world in general and with technology in particular.  I had the pleasure of chatting with Carl, owner of nGen Works, and he’s got a brilliant perspective on what makes for good applications.  Ask him about usability if you get a chance to talk to him. :)

Adnaan Ahmad, Introduction to Flash Catalyst: It was good to actually get a demo of Flash Catalyst and I wish Adnaan had gotten more time to go more in depth with it.  Nice job though.

Dave Watts, Using Flash Builder 4’s Data-Centric Development with ColdFusion 9: I’m not a CF person and so a bit of the preso was lost on me, but it seems that there are a bunch of niceties for connecting to various data sources and wiring them up to your Flex apps.

Chris Scott, Swiz Framework – Brutally simple micro-architecture for Rich Internet Application development with Adobe Flex: I personally got a ton out of Chris’s talk since I’m using Swiz for this first time at the current gig. The Swiz team hasn’t quite caught up with their documentation, so it was good to have Chris talk about various features and how to apply them.

For anyone interested, here is my preso and the code from my examples. Not much is different than my 360|Flex preso and I left out code that I didn’t go over this time around.

Slides (1.1MB)

Greenthreading MSNBC Data Set (ZIP, 2.6MB)

Overall, it was a great day.

\m/\m/


Speaking @ Capital Flash Camp

Posted: April 15th, 2010 | Author: Huyen Tue Dao | Filed under: Development | Tags: , , , , , | No Comments »

So now that I have extracted my head from my hindquarters, I am v. belatedly making note of the fact that I am speaking at Capital Flash Camp TOMORROW on good ol’ Greenthreading.  I am completely lame for missing out on my blogging duties and can only point to my month-long head-in-hindquarters-itis as a lame excuse.

Capital Flash Camp

If you can, please join us tomorrow in the District.  :)


360|Flex Presentation: Slides and Code

Posted: March 8th, 2010 | Author: Huyen Tue Dao | Filed under: Development | Tags: , , | 1 Comment »

Today was my presentation.  I tried to re-edit and a few more new things to my talk on Greenthreading from CFUnited.  I even managed to drum up a multi-greenthreaded example a little before presentation time.

As promised I have updated slides and code here:

Slides (PDF, 1.1MB)

Greenthreading MSNBC Data Set Code (3MB)

Multithreading Code (5.4MB)

A huge thanks to everyone who showed up.  Really appreciate all the comments and the chance to give this presentation. I want to reiterate that what I am presenting is just a package of the great work of other people, namely Charlie Hubbard, whose library and great series of articles I use for this.

Again I am just really glad I got a chance to talk to you guys and present you with something that I hope you will find useful.

Please feel free me to ping me with comments, suggestions, or just to say hello.

\m/\m/


I Love Going to Office Depot: Speaker Interview for 360|Flex

Posted: January 22nd, 2010 | Author: Huyen Tue Dao | Filed under: Development | Tags: , , , | No Comments »

Shameless self-promotion do followeth.  Forgive me.  And come to see my presentation at 360|Flex. O.o

360FLEX – THE SPEAKERS – HUYEN TUE DAO


Putting the Nerd in It: Calculating Speedup with Amdahl’s Law

Posted: January 5th, 2010 | Author: Huyen Tue Dao | Filed under: Development | Tags: , , , | No Comments »

Okay, I promise I will try very hard not to bore you in the next few hundred words. But basically I just want to present a way of determining how much faster a system will be if you speedup one (or more) or its components.

Say that you have an enhancement that can be made to speedup some part of an application.
And say that you know how much runtime you can save with the enhancement.
And say that you know what fraction of the total runtime that part of the application takes up.
Then you can determine how much you will speedup the application as a whole by making that enhancement.

Why is this valuable?

You might be in a situation where you have to justify time and effort spent (and fancy formulas help to dazzle the crowd).
You might have two different enhancements or changes that could be made but only have time to do one. Which should you choose?
You might just want to know how badass your idea really is.

So, I present to you Amdahl’s Law:

Fraction_A = Fraction of application runtime taken up by component A

Speedup_A = {Runtime of A with enhancement}/{Runtime of A without enhancement}

Runtime_new = Runtime_old * ((1 - Fraction_A) + Fraction_A/Speedup_A)

Speedup_Overall = {Runtime_new}/{Runtime_old} = 1 / {(1 - Fraction_A) + Fraction_A/Speedup_A}

Formulas borrowed lovingly from Hennessy + Patterson’s Computer Architecture: A Quantitative Approach

You could use this formula for any other performance metric.  For example, if you were more concerned with memory consumption, the formulas still hold: just replace “runtime” with “memory use” and “speedup” with “memory reduction.”

Hope you find this helpful someday.  I’ll try to keep so many equations out of the next post. :)