dispatchEvent

Roger Braunstein + Mims Wright = this blog


The Boxely UI Toolkit is finally available to the public! Congratulations go to the whole team.

Boxely is a declarative XML UI toolkit much like Flex. It is the brainchild of Joe Hewitt, the man who brought us FireBug. It was inherited from Joe by a small team at AOL, and through months of hard work they have been making it into their tool of choice for building the next generation of AOL apps. If you have used AIM Triton, you’re running Boxely, and AIM is sitting on your hard drive as a combination of flat files: Box files (like MXML), XML stylesheets (like CSS), javascript behavior scripts (like AS3), and external resources like PNGs. You can author Boxely apps with any editor, and the principles of the language like data binding, styling, behavior attaching, SMIL style animation constructs, and shared libraries of components, are applicable to other XML UI toolkits, so I believe the skills are somewhat interchangeable.

AOL has been developing this tool for its own internal use, but it’s fantastic to see that AOL is giving it away to the public. You should be able to build some pretty cool apps with it in a short time. It seems AOL likes owning their own technologies: .Net and XAML are comparable to the Open Client Platform — which Boxely runs on — and Boxely, yet AOL invested months of hard work into developing their own technologies. I don’t think they’re truly made to compete with other platforms, but perhaps to allow AOL to decide the direction they move in? It will be interesting to see what the development community will make of, and make with, Boxely.

Oh, and I care about all this because I worked on the Boxely team for a few months at AOL. (Too bad my pong demo didn’t make it into the deliverable, ha!) So congrats to all!


My newest efforts in ultimate closet optimization are what I call “Fashion Preview Hooks™” (pat. pend.). I installed mine last night!

The installation is simple. Just attach 2 hooks of any kind at approximately eye and belly-button level and aligned vertically. That’s it. Now you have Fashion Preview Hooks!

These hooks have a couple of uses. If you’re trying to put an outfit together you can preview it by hanging your shirt on the top hook and pants on the bottom hook and swap them out quickly without having to try each one on. Also, when you go to bed at night you can throw your outfit for the next day on the wall.

Fashion Hooks 1   Fashion Hooks 2


Someone asked Robert Reinhardt if it was possible to do gamma correction on video. This is a great detail you can pay attention to, if you want to be nice to everyone. For instance, say you published a video to look good on a Mac, with a typical gamma of 2.2. You could easily inspect flash.system.Capabilities.os and modify the gamma of the video on the fly if your viewer is using Windows, with a typical gamma of 1.8.

My first impression was to use a ColorTransform matrix, but this is only able to transform colors in a linear equation:
output = a * input + b
Gamma is a simple power curve, so this wasn’t going to cut it. Then I found that BitmapData.paletteMap was the solution. With paletteMap, you can perform any function on the colors in an image, or rather 4 functions on each channel RGBA. You simply precalculate 256 values for all possible 8 bit color values in each channel, and paletteMap uses this as a lookup table. This made the power curve of a gamma correction trivial to calculate and apply, and the performance even on large videos is more than acceptable.

Here’s the example. Just right-click to view source.
Real-time Gamma Correction [AS3]
Or just view the super-simple Gamma classs.

« Previous PageNext Page »