Flex/Flash/Actionscript

Where have I been? Where am I going?

I haven’t been blogging too much recently, but I thought I’d do one of those “hey, I’m alive” blog posts, and also a put the word out that y’all should come to the silvafug meeting in SF in May and to 360 Flex in Seattle whenever that is. I’ll be speaking at both those things.

Traveling
I’m currently sitting under a thatched roof in El Salvador, somehow there’s a cat-5 jack coming out of the concrete table. Just got back from a trip into Guatemala, and soon I’m off to sail to Nicaragua or Costa Rica. I’ll get back to SF sometime around the first week of May. No Flex work while traveling, although I did consider bringing my new laptop to Central America.

Worst unemployed person ever
I became unemployed at the end of March, even had a sweet retirenement party to celebrate. Turns out I’m really bad at being unemployed and started doing contract work with Universal Mind for a few weeks. Part of me wanted to just sit back, relax, and forget about deadlines and paying work, but the project they got me working on was really interesting, I got to work with some great guys, and all in all had a blast. At least I managed to do most of the work in my bathrobe.

Silvafug and 360 Flex
I’ll be presenting at the silvafug meeting on March 10 in San Francisco. The session will be about custom component development, and Tom Ortega will be leading a training session on the same topic before my presentation. If you’re in the area, come on by Thursday night and tell me how wrong I am about whatever I’m talking about. And if anyone wants to go out for some drinks afterward, I’m always down.

I’ve also somehow managed to convince Tom that I know what I’m talking about (we’ll see if that changes after the silvafug meeting), so I’ll be speaking at 360 Flex in Seattle. I’ll be working out how that presentation will go over the next few months, but the topic will be similar to the silvafug session, basically how to fuck with the Flex framework classes to make the components that you actually want.

So come by the silvafug meeting on May 10 if you can make it. And I’ll try to get back to blogging more once I get back to the States in early May.

Standard
Uncategorized

Blogging while boozing

I was out drinking last night in San Francisco with some people after the Ignite event at the Web 2.0 Expo. We’re in a bar, I’m about 8 beers in at that point (thank god for free beer at conferences), and prolific blogger, Ryan Stewart, is playing with his phone. Suddenly he looks up at everyone and says “Hey guys, WPF is called Silverlight.” It’s almost midnight and some little bird is constantly whispering these tech-geek nuggets into Ryan’s ear. So while in the bar, with a beer in hand, Ryan takes out his laptop and starts writing blog posts. Look at the time stamps for his ZDNet posts. He’s got his Silverlight post logged at 11:49 pm and a post about Philo at 12:23 am.

I guess that’s what separates the casual bloggers from the professionals. I wouldn’t trust myself blogging under the influence. Ryan, I salute you.

Standard
Flex/Flash/Actionscript

Docking ToolBar from Adobe Flex Team added to FlexLib

The Docking ToolBar component that was released by the Adobe Flex Team has been contributed to FlexLib. This component was originally released on Adobe Exchange. The description from the Flex team:

The docking toolbar component collectively helps managing toolbars in an application.

The toolbars can be docked to the top or bottom edges or kept floating within application area. The contents within a toolbar use a flow based layout approach.

A big thank you goes to Matt Chotin at Adobe for supporting the FlexLib project and getting this contribution into the library.

Future updates to the DockingToolBar will be found in the FlexLib project, and bugs and feature requests should be logged here.

Here’s a sample showing off the Docking ToolBar component:

This movie requires Flash Player 9.

Standard
Flex/Flash/Actionscript

List control for the one-armed man – take two

Here’s my second attempt at making a List control for Flex that has the functionality of using the Control and Shift keys, but without making the user actually press the Control or Shift keys. For those poor programmers who have been crippled by RSI, now you can at least drag around list data with your one good hand.

This version is much better than the previous version. Now you click on an item and drag to select multiple items. You can still drag and drop items from one list to another. The only difference is that you must first select the items, then click and drag to move items to the other list. Control-click functionality is the default if you only click one item. If you drag to select items and try to select below the visible items it will scroll the list into view.

Here’s the source.

This movie requires Flash Player 9.

Standard
Uncategorized

I joined Qwitter – you should too!

qwitter

Last week marked the end of my employment at Stanford University. It’s been a great 4 years (wow, 4 years?!). The project I’ve been working on has reached a point where I can comfortably step away. This is completely voluntary, and I’m leaving on good terms with everyone at Stanford.

qwitter badge

So as of this moment I’m unemployed. I highly recommend it. I’m not looking for new work for a while. For the next 4 months or so I’ll be traveling and doing a little Flex contracting work. I’m going to try to focus on blogging a bit more, so hopefully I can start posting more frequently. My travel plans are still taking shape, but include some combination of the following:

  1. Sailing along the coast of Central America to Panama. For a few weeks in April I’ll be sailing with my dad, who is currently sailing alone from California to England via the Panama Canal (yes, he is amazingly badass). I’m going to meet up with him somewhere along the way, maybe El Salvador, and sail for a few weeks to Panama.
  2. A few east coast trips. I’ve got friends on the east coast I haven’t visited enough, so I’ll be making a few trips. I’ll be vacationing with my girlfriend in Cape Cod, and I also might make separate trips to DC or NY.
  3. Sasquatch music festival at the Gorge Amphitheatre in Washington state.
  4. An as-yet-undecided European-ish destination. Maybe Turkey, Greece, eastern Europe… this is pretty up in the air, we’ll see if it actually happens.
  5. Denmark for the best rock festival ever, Roskilde.

During and between traveling I’ll be playing with Flex stuff and blogging. I’ll be back home and doing contracting work for most of May. I’ll get back to real life around mid July or August, at which point I’ll be figuring out my employment situation. I am not looking for a job until then.

For now it’s time to enjoy life without worrying about paychecks and early-morning commuting. To celebrate I gave myself this sweet mohawk:

mohawk

Standard
Flex/Flash/Actionscript

List control for the one-armed man

This is a little experiment to play with a different method of selecting items in a Flex List control. It allows you to re-create some of the multiple selection options you usually get by holding down the control or shift keys while you select items. But now you don’t need to hold down the control or shift keys. Just play with it to see what I mean, it’s hard to explain.

There was a question on flexcoders that was about something like this. I’m not sure if this little experiment solved the right problem for the original poster, but trying to figure out how to get some of the functionality of using the control and shift keys without using the actual keys was kind of interesting (what can I say… item renderers and list controls turn me on). So this is what I came up with. Another thing to note is that the checkbox acts as a visual indicator only, it is not actually a clickable control.

View the source here.

This movie requires Flash Player 9.

Standard
Flex/Flash/Actionscript

Updated MXNA RSS Reader Flex App – Now With Source

Here’s the newest version of the MXNA RSS Reader Flex application that was shown at 360Flex. It’s been updated and another Flex community component was added into the mix. And full source is published. I call it ZOMGZ!!1 RSS Reader.

The updated recipe is:

So what’s new?
I added the sticky tooltip component by Maikel Sibbald, which shows the description of the article when you hover your mouse over it. I think it looks sweet. There’s a new icon for the most popular posts of the day. There’s also an options panel (click the rightmost icon). You can configure how many posts you want to read for each category. And you can choose to use the “Smart Categories” or the regular categories that MXNA offers (not all categories have smart categories that correspond). Those options are stored in a shared object, so next time you load the app it will remember your settings. And it will automatically load the last category you were browsing. I utilized a better method for sizing the font in the TreeMap that I didn’t realize Josh had included in the component. It looks a lot better now. I had to make a small modification to the component to get it work with embedded fonts, but now the fonts looks silky smooth and they show up in the reflection. I made some performance enhancements, turns out that drawing that reflection when you’re using embedded fonts really eats up processing power.

Future development
I’ve been working on getting the source to an acceptable point to release it to the wild. I didn’t get all this code to a point I’m truly happy with, a lot of it’s uncommented, but my ADD is kicking in and I’m tired of working on it, so here it is as it is. Use it to learn, use it for inspiration, use it for whatever. The only restriction is that Josh’s TreeMap is licensed under the GPL license (AFAIK the other stuff is MIT-ish license). I dropped this into an Apollo app and it kind of makes a cool desktop RSS app, but I didn’t add anything that really makes it any better than the web version, so I’m not going to release the Apollo version. I’m not planning on working on it anymore. I’ll be working on a few other RSS visualization apps.

ZOMGZ!!1

So check out the example below. View the source here.

[Or launch it in it’s own window: here’s the link]

This movie requires Flash Player 9.

Standard
Flex/Flash/Actionscript

Fire component added to FlexLib

I added a new Fire component to the FlexLib library. This is a Flex component that creates a fire or smoke effect. It can be customized in a variety of ways, including setting multiple colors for the flame. Check out the demo app below to see a few different presets I came up with. Try playing around with the different controls and you’ll get an idea of the different kinds of effects that are possible.

The key to this is using the perlinNoise function of the BitmapData class, and the DisplacementMapFilter. I don’t claim to be an expert on using these functions. Others have written about using them, I just copied the same approach.

View the documentation
View the example in a new window.

To get the source of the Fire component, download the FlexLib project from Google code.

And don’t complain about this using a lot of CPU horsepower, go get a faster machine 😛 Or look at the source and figure out how to optimize it for better performance and contribute the improvements back to FlexLib.

This movie requires Flash Player 9.

Oh, and for anyone wondering, I’ll be releasing the source for the RSS reader that was shown at 360Flex… soon. Probably tomorrow. And it’s an even more pimped out version.

Standard