Saturday, March 15, 2008
Boo-hoo! I have to miss 360|Flex Milan
Tom and John have been great about it. They really have the coolest conference going these days.
But just because I can't go, it doesn't mean you shouldn't (my absence might even be *more* of a reason to go!). You simply will not find a better value for your 360 Euros than in Milan, April 7-9.
Cheers,
Doug
PS: Cowbell Hero is still a go, and I'll be posting details on this blog as development progresses.
Tuesday, March 4, 2008
Come see Cowbell Hero @ 360|Flex Europe!
I'm excited to be presenting at 360|Flex Europe in Milan, Apr 7-9.When I first talked with Tom & John about the Milan gig last August, I said that I had wanted to present something that integrates hardware and physical interaction with the Flash platform.
So over the past year I've been working on a number of home projects centered around the Arduino, a low-cost open source hardware platform, which fittingly was designed in Italy.
The Arduino is a 16 Mhz Atmel microcontroller with a USB interface and a number of digital I/Os and analog inputs. You can purchase a fully assembled Arduino controller for less than $40. And open source IDE is available for Mac/Windows/Linux.
So $40 plus a few spare LEDs and simple components can yield some interesting stuff.

Cowbell Hero with an Arduino
This Christmas my son got an Xbox 360, and I got Guitar Hero. Now my son (15) and daughter (11) routinely kick my butt at this game (but at least they unlocked Trogdor! for me).When I was planning for 360 Milan, I was trying to think of a fun way to engage the audience, and I thought it would be fun to create game in AIR. Natuarally, this game had to be Cowbell Hero.

We'll be hooking up my Mac to the projector, the Arduino, and the sound system, and rocking out like Bruce Dickinson would want.

So sign up now for 360 Flex Europe, and I'll see you in Milan!
Thursday, January 31, 2008
Pixton revealed at Vancouver Flex/AIR tour
Duane's quote of the night came at the Yaletown Brew Pub afterwards: After telling him that I think that Flex is the crack-cocaine of programming languages, Duane quipped "Adobe considers Flex to be the gateway-drug to AIR". Brilliant.
Star of the evening - Pixton
Local developer Clive Goodinson demoed a new online comic site called Pixton. This super awesome site was created by Clive in just two months, and includes a Flash CS3 front end married to a PHP back end. Pixton is incredibly visually appealing, plus it has very immerisive and intuitive editing capabilities. Drag a character's arm to reposition it, and the joints all move correspondingly, in a very natural manner.
You can also remix the content of other Pixton comics, if the original author permits. Duane has already used Pixton to mock co-worker Ted Patrick. Most excellent.
My new mashups book is out!
Please help support this blog and buy this book. It was seconds in the making!
Saturday, January 12, 2008
Labels everywhere often means that the design sucks
This blurry picture is a camera-phone snap (scratched lens! grrr!) of the elevator control panel at my previous gig, before I joined EffectiveUI. The pic is blurry, but you can still make out the details.There is just no affordance or discoverability in this button layout. I was working onsite for a couple of months, and I saw everybody continue to struggle to figure this thing out. I'm not talking just visitors (who also struggled), but people who had been working there for years! I was also tricked by the strange layout a couple of times a week.
Now, to be fair, the building was a little oddly shaped. It was built into a steep hill, and was terraced. An elevation perspective looked like this:
+---+
| 2 |
+---+--+
Gnd | 1 |
----+------+
| | Patio
+------------------+ Ground level
| Parking P3 |-------\
+------------------+ \
| Parking P2 |
+------------------+
| Parking P1 |
+------------------+
Things I found bad about this design:
"Main" (1) (2)
(P3) (M) "Roof Garden"
(P1) (P2)
- This panel is ordered right-to-left, instead of left-to-right. The standard layout (at least in North America) is for two-column panels to start with the top floor on the upper-left, and then decrement floor-by-floor in a left-to-right, top-to-bottom sequence.
- Floor 1 (street level entry) is also labeled "Main", but there is an "M" button!
- The mezzanine floor has the confusing "M" button, which everyone thought was the main level. "M" should only be for main.
- To fix the above, the mezzanine floor is labeled "Roof Garden". Roof? In the middle of the building? Call it a patio and avoid the confusion already!
- The parking levels are not ordered according to the standard. Underground parking levels should start with P1 being the level just below the main floor. So P3 should be floor furthest down, not at the top.
How would you solve the layout problem?
(PS: Can you tell I love ASCII art?)
No, I haven't died in a blogging accident
Just in case any of you were wondering. Man, you gotta love XKCD. Too many fluff posts like this are skewing the results.
Wednesday, January 2, 2008
DryerFox - Updated for Flex 3 Beta 3
- Updated the code to resolve breaking changes.
The WebKit control was reworked a fair bit for Beta 3. mx.controls.HTML no longer delegates the heavy lifting to flash.html.HTMLControl. So this meant a code sweep to change snippets like:html.htmlControl.historyBack()becomeshtml.historyBack().html.htmlControl.window.document.titlebecomeshtml.domWindow.window.document.title.HTMLUncaughtJavascriptExceptionEventbecomesHTMLUncaughtScriptExceptionEvent.
- Updated the
-app.xml
Another beta, another-app.xmlschema.
All the same values are set, but the precise location and names within the XML have changed again. I can see in the SDK that there is a template for these in sdk/templates/air/descriptor-template.xml. I just wish that Flex Builder provided a config panel interface to set this stuff, just like it does for the HTML wrappers. - Updated the badge installer
This beta included another update to the badge installer, so I have included this in the source update. - Added the new EverythingFlexAIR.SWC library
DryerFox was already using Rich Tretola's UpdateManager class, and Rich has now packaged this (and other useful goodies) in a SWC, available here. - Updated SWFObject to v2 RC1
SWFObject has moved to a release candidate, so I updated my copy. No other changes required.