Redesign Eclipse Logo Contest

December 18th, 2009

I wholeheartedly agree with this tweet by RJ Owen. The Eclipse icon is sad. For those of us who use the FlexBuilder plug-in (no doubt to achieve some modicum of geek cred) we look at it all day, every day. Luckily, it’s very easy to swap out. So, let’s see if we can do better!

Take a crack at making the Eclipse icon and loading splash image more interesting!

Create one PNG to be used as the application icon. It can use transparency and should be sized at either 512×512, 256×256 or 128×128. The png can be converted to icons for all systems at http://iconverticons.com/

Also, create one BMP to be used as the loading splash image. The existing Eclipse one is 455×295 but yours can be any size you like. Preferably not more than 500 pixels on either size.

Post your new creations as a comment to this post and the best ones will be picked by RJ and me! There’s no prize, just more geek cred! The deadline is 12:01am PST on January 1 after which I will annouce the winners and give instructions for how to swap the images out on your computer!

Go!

Using %tokens% with Flex resource bundles

December 8th, 2009

When I use Flex, I make extensive use of Resource Bundles for all but the most basic applications. In short, they allow you to keep all of your static string values (and non-string values) separated out of your code. That way, down the line it’s a very easy change when you want to localize the site in another language, rebrand it for another audience, or when a client asks you to change a button label or error message. Granted, this level of detail isn’t always necessary but I think it’s a good habit to get into even if it’s overkill for some projects.

But resource bundles can’t help you in every scenario. I often find myself needing to construct a sentence with live data inserted. For this, the resource strings are less helpful. For example, how would you write:

"At " + time + ", you received a message from " + userName + "."

With resource strings, you would have to do something like

at=At
message=, you received a message from
period=.

Which completely negates the whole point of using resource bundles. What to do?

Token replacement

tokens
What I really wanted was a way to inject data into the string. I’ve seen this done by use of tokens in other languages like Objective-C so I thought I’d give it a try. The result was surprisingly lightweight.

I created this utility that lets you use tokens (delimited by % signs) that can be replaced by live data when you retrieve the resource. Using this class, the example above would look more like this:

receivedMessage=At %time%, you received a message from %userName%.

// then in your code
trace(ResourceStringUtil.getResoureceStringWithTokens("receivedMessage", {time: "11:49", userName: "Mims"}));

// displays
At 11:49, you received a message from Mims.

Here’s the source code Feel free to use it and modify it for your purposes.

Using ant for Flex – a no B.S. guide – Part 4 of 4

November 13th, 2009

Now that you’ve been through 3 exhaustive tutorials on ant for flex, it’s time to use your knowledge you’ve gained to turn your back on the built-in Flex compiler and switch to ant for your builds. This part applies to FlexBuilder (and FlashBuilder) users only although it may apply if you’re using some other eclipse-based plugin. If you’re using another program like TextMate or Flash CSx, you can skip this article.
Read the rest of this entry »

Using ant for Flex – a no B.S. guide – Part 3 of 4

November 13th, 2009

This third installment talks about tips and tricks for using ant with version control systems.
Read the rest of this entry »

Using ant for Flex – a no B.S. guide – Part 2 of 4

November 13th, 2009

In this part, I get more nitty-gritty about working with flex’s ant tasks.
Read the rest of this entry »

Using ant for Flex – a no B.S. guide – Part 1 of 4

November 13th, 2009

About to burst with build targets

After spending hours wrangling with my ant build script and finally making everything work correctly, I am convinced of two things:

  1. ant is a very powerful tool for compiling code but it can also do so much more.
  2. The support for ant for flex online is abysmally frustrating.

So, I’d love to share with you some of the tips I’ve picked up after tweaking my script to the point where it finally worked!

Introducing ant

First of all, let me introduce the basics of what ant is. I couldn’t really say it better than the thousands of nameless editors of WikiPedia.

Apache Ant is a software tool for automating software build processes. It is similar to Make but is implemented using the Java language, requires the Java platform, and is best suited to building Java projects.

The most immediately noticeable difference between Ant and Make is that Ant uses XML to describe the build process and its dependencies, whereas Make has its Makefile format. By default the XML file is named build.xml.

Ant is an Apache project. It is open source software, and is released under the Apache Software License.

So in short, ant lets you use an XML based script to run a series of commands typically used to build software projects. It was originally designed to be “for Java, in Java” but it’s popularity and ease of use has created interest beyond the Java community. For flex, ant can be used for compiling ActionScript and Flex projects into SWFs, creating SWC files, generating documentation with ASDocs, and other actions associated with compiling.

There are a lot of great tutorials online that can cover the basics of how ant works so I’m not going to go into a general overview in this article. Instead, I’m going to try to focus on some of the practical aspects of getting a build set up when working with Flex. However, here are some links to the official ant documentation some helpful tutorials for the basics:

Ant Basics tutorial

Another basics tutorial (this time for Flex)

Official Flex documentations

Ant Folklore

After the jump, I’ll get into some of the ways that ant can be useful for Flash and Flex projects.
Read the rest of this entry »

How was MAX?

October 14th, 2009

Hey readers, I just got back from my honeymoon and alas, I had to miss Adobe MAX this year (although, I can’t complain). Still, I’m a little behind on all the Adobe news. Perhaps you can share by commenting what your favorite new projects, ideas, and technologies were. Thanks!

The Deepening – Select Your Own Adventure Edition

September 22nd, 2009

Screen shot 2009-09-22 at 15.26.51 PM

I’m very pleased to announce that one of my latest projects has just gone live. The Deepening – Select Your Own Adventure Edition has just gone up on Atom Films. Go give it a look, it’s hilarious.

The video is a Good Cop / Bad Cop action show where you get to choose what happens next. It was created by the brilliant Duncan Brothers who asked me to help build the Flash portion of it. Enjoy!

deepening.atom.com

Where is everybody? A general update from the authors of dispatchEvent() Blog

September 12th, 2009

Hi faithful readers, I realized that we haven’t posted anything new since, <GASP!>, back in May. A lot has been happening in everyone’s lives. Here’s a summary of what’s been going on with each of us.

Mims

Prepare to be devastated, ladies and gay gentlemen, for I am getting married next Saturday the 19th! As the day has been drawing closer, I’ve been more and more consumed by wedding planning as well as general stress and excitement which is my main excuse for dropping of the face of the blog.

After the wedding, I’ll we’ll be making my our way through Europe, driving from Barcelona to Amsterdam via Provence, the Black Forest, and a few Belgian breweries. I know many of you hail from Europe so give a shout out if you know some great, strange places to visit along the way!

In between tasting cake and buying championship quantities of wine for the wedding, I’ve managed to keep busy with some really great gigs. I recently built the media-rich Toyota Tundra Experience site in collaboration with Bad Assembly and Saatchi & Saatchi LA which launched this summer. I contributed Gumbo skillz to the insanely extravagant Cannes Multi-Touch Wall with Schematic. I’m also very excited for a project I recently finished in collaboration with the very talented and funny Duncan Brothers and Atom (It’s not launched yet but I’ll announce it when it is).

Sadly, I’ll be missing Adobe MAX and the infamous Flashapaloozastock even though they’re in my own back yard! But after returning in mid-October, I’m looking forward to getting back out there and working my face off! That includes dabbling in some new technology like XNA or iPhone, blogging about some of the stuff I’ve learned on my last few gigs and hopefully, getting my shit together and finally speaking at some conferences. I’m also working on a completely revised version 2.0 of KitchenSync, my incredibly underused tweening and sequencing library.

I hope you’ve all had a great summer!

Roger

Gentlemen, WE CAN REBUILD IT. We have the technology. We have the capability to make the world’s finest programming book. The ActionScript 3.0 Bible Second Edition will be that book. We can make it better than it was before. Better. Stronger. Faster.

That’s right, I’m hard at work tearing the AS3B to pieces and building the second edition from the ground up, and I can’t wait to share it with you. I’ll post more about it when it’s ready to go to press. You won’t believe all the awesome new features in this book!

While writing, I’ve been traveling the world with my trusty laptop. This summer I’ve trekked out from my home in Brooklyn to Peru, Los Angeles, Santa Barbara, San Francisco, Montauk, Pittsburgh, Orlando, DC, Los Angeles again, Seattle, Portland, and Puerto Rico. Don’t worry, I’m taking lots of photos. I love traveling!

I’ve been working on some really cool projects, too! I made a website for the most wacky, creative filmmaker of our time. I helped to design (and hopefully I will soon program) an iPhone app for a gorgeously illustrated series of books for teens. Sorry I can’t be more specific!

When I’m not doing all this I’m rollerskating, going on long long bicycle rides, watching lots of movies, exploring all the amazing restaurants in NYC, and having adventures. I’m taking an intensive culinary class at the French Culinary Institute this Fall. I also got my motorcycle license and I can’t wait to use it more! Sadly, I’ve completely fallen off learning piano, but I really hope to start again soon!

What have you been up to, readers? Did you have a great summer?

Caleb

Caleb has left New York City. He is now studying hard at Cornell University in Ithica, NY. Aside from the mathy homework, he is kept up at night trying to determine what has gone wrong with his ray tracer. However, there may not be any better reason for a nerd to lose sleep!

Graph of Flash on Tap 2009

May 28th, 2009

flashontapgraph