February 11, 2008

Color of Spam: dots sneak peak

A sneak peak at what the color of spam may look like:

December 14, 2007

Snowstorm in 15 minutes

At FOTB, Seb's talk on particle systems was on my short list of sessions I wanted to see, and meeting him was a real treat. I was delighted when he joined the GalaxyGoo Flash-a-thon. His snow effect is great, and the fact that he wrote it so quickly is a testament to both his skill as a coder and his familiarity with particles. ~Kristin


Author: Seb Lee-Delisle, Technical Director, Plug-in Media
Author's comments:
At FlashBrighton's Big Day Out a couple of weeks ago, I set myself the somewhat crazy challenge of programming a dynamically generated snowstorm in fifteen minutes from scratch. No pre-written classes, no graphics, nothing!

Needless to say it was a somewhat frenetic, but exciting session, and I just about made it with a few seconds to spare. And, as I felt that producing 2D particle snow would be a little too easy, I decided halfway through that it'd look better in 3D. And then I added some wind. As I always say, it'd be boring if it were too easy. :-)

Support the educational projects at GalaxyGoo, and make an online donation through Network for Good or Facebook Causes..

For live version, and source files, continue reading.

Continue reading "Snowstorm in 15 minutes" »

December 13, 2007

Causes Giving Challenge

How's this for a little experiment in social networking for a good cause? And the timing is great!

About the Causes Giving Challenge The Causes Giving Challenge launches on December 13, 2007 at 3pm EST and ends on February 1, 2008 at 3pm EST. Through the Challenge, all users of Causes on Facebook are invited to participate by creating a cause. A total of $250,000 will be awarded to the causes of those individuals who inspire the most donors to give to their charity.

$50,000 to the Cause with the most donors
$25,000 to the next two Causes with the most donors
$10,000 to the next ten Causes with the most donors
AND $1,000 each day to the Cause with the most donors that day

We believe that this campaign has the potential to show the extraordinary impact that new technologies and online communities are having on giving.
~ The Case Foundation

Note that it says the "most donors" not the most donated. So, if 200 people donate $40 each, we could be in very good shape.

Our goal is to raise money for The Cell Project, bringing us closer to getting it into classrooms as an integrated project based learning activity and lesson plan.

As of a few minutes ago, the Flash-a-thon for The Cell Project was doing pretty well. We're still in the top 4, but we need your help to stay there.
Adding to the excitement of the Flash-a-thon, the stats are updated real-time, so this could get exciting. How many donors will we need to win one of those $1,000 daily grants? Or one of the bigger grants?

December 10, 2007

Chaos Game

We're going to start with a fantastic piece by Keith Peters. What a great way to kick off the Flash-a-thon! ~Kristin


Author: Keith Peters
Author's comments:
The Chaos Game is a simple algorithm that can produce some surprising fractal forms. This one has been done in 3D. More info here:

Support the educational projects at GalaxyGoo, and make an online donation through Network for Good or Facebook Causes..

For live version, and source files, continue reading.

Continue reading "Chaos Game" »

The GalaxyGoo Flash-a-thon Begins!

Today, the marathon begins! We will post experimental Flash projects every day, until the 15th or until we run out of projects to post. Right now, It's looking like we'll run over our minimum!

We're posting our source files, and releasing them under creative commons license, so download and have some fun! All files are released as is, without warranty.

As with any something-a-thon, this is a fund raiser. Your donation will help bring project based science activities, like The Cell Project, into classrooms and enrichment programs.


Support the educational projects at GalaxyGoo, and make an online donation through Network for Good or Facebook Causes. Please see the GalaxyGoo Flash-a-thon FAQ for more information.

Creative Commons License

Creative Commons License

This work is licensed under a
Creative Commons GNU General Public License License and a
Creative Commons Attribution 3.0 United States License.

December 04, 2007

Flash-a-thon Flickr Group

We've started a group on Flickr, for the Flash-a-thon. There are already a couple of sneak-peek images up.

We start posting on Monday, Dec 10th...less than a week away! Stay tuned for upcoming prizes for best audience participation.

October 25, 2007

Moo Cards! Flash on the Beach! and Mathematica!

The moo cards I ordered, to take to FOTB, arrived today! Yeah!


Looks like the conference is completely sold out! Wow! Really looking forward to it! I just hope my presentation stands up to all the other great sessions on the schedule. I'm having a great time preparing it! Atoms, and fractals, and algorithms...oh my!

Thanks to a temp license from Wolfram Research, I now have a copy of Mathematica installed on my laptop. Yeah! If you're going to FOTB, and you're curious, look for me at the conference.

October 11, 2007

New name and logo needed for "flash-a-thon".

We're getting ready for the GalaxyGoo "flash-a-thon", in late November. Still need a few things including:

1. An official name ...other than a "Flash-a-thon". Any ideas for what to call it? Code-a-thon? Geek-a-thon? Code-fest?

2. A logo -- for t-shirts and other items.

3. Flash coders -- to contribute source files. We've got some great talent lined up for the event, but there's always room for more.

Are there sponsorship opportunities? Of course! If you're interested in sponsoring the event, send a note through our contact form

October 10, 2007

Trying to install AIR Beta 2 for Flash CS3

Well, I'm trying to install the update for Flash CS3 that supports publishing an AIR file from the Flash CS3 authoring environment. It's not going well.

I've searched, and haven't found a mention of this problem, so I'm posting it here as a reminder to myself and in the hope that somebody in-the-know will have an answer.

When I ran the update installer everything seemed to be going well. I have not installed an earlier (beta 1) version of the update. But when I try to publish an AIR file, I get the following error message:

"Creating AIR file failed.
C:\Program Files\Adobe\Adobe Flash CS3: error 400: Certificate file missing/cannot be opened "

What certificate is missing?

September 24, 2007

Shapes unexpectedly cancelling each other out in AS3

This weekend, I was playing around with some AS1 code that Edwin posted a few years back. I even managed to convert it to AS3. Which was a great exercise!

His original version draws short lines, to fill a color pattern. In my simple modification, I've used graphics.drawEllipse() instead. But I keep getting a white line down the middle of the pattern, that shouldn't be there.

vLine2.gif vLine1.gif

When zooming in on the swf, I noticed that when dots overlap on the mid-line, they cancel each other and leave a white space. Very odd!

Wondering if the size of the shape would have any effect, I changed the width and height of the ellipses on half of the pattern.

vLine2b.gif vLine2a.gif

While this didn't give me the hoped-for result, it did give me an idea for simulating fish scales!

I'm sure I've seen something like this posted somewhere, but I just can't remember where or if there was a fix.


If I replace
var fillColor = f0*(sqX=x1*x1)+f1*sqX*sqX+f2*sqX*(sqY=y1*y1)+f3*sqY*sqY+f4*sqY;;, pY=y1+100, 1.8,1.9);, pY,4,4);,198-pY,1.8,1.9);, 198-pY,3,3);


var fillColor = f0*(sqX=x1*x1)+f1*sqX*sqX+f2*sqX*(sqY=y1*y1)+f3*sqY*sqY+f4*sqY;;, pY=y1+100, 1.8,1.9);;, pY,4,4);;,198-pY,1.8,1.9);;, 198-pY,3,3);

which simply adds a new beginFill command, before each drawEllipse command,

the subtraction problem is eliminated. Very strange.

Update (after Robert Penner's commentt):

August 09, 2007

Keep It Simple -- Building Complexity From Simple Structures

My session description for Flash on the Beach is up. I'm going to have a lot of fun with this one!

The complexity of the universe and all of life is based on simple building blocks. A metal is a metal, no matter how many times you melt or pound it. It's the sub-atomic particles of each atom that determine its character, and how it interacts with others.

Computational objects can be modeled on this simplicity, and in this session we will explore examples from nature
and computational art, including the atom and fractals.

We'll look at some basic objects (both visual and code) and ask "what are it's sub-atomic particles?" Starting with these objects, we'll build up models of increasing complexity.

Attendees will get:

  • Inspirational examples from nature and science,
  • Confidence to jump in and start playing with AS3,
  • An appreciation for well encapsulated code and simplicity in code and design,
  • An introduction/overview of AS3 code samples that will be available online.

June 26, 2007

What is Flash?

Flash! What is it?!

An vector illustration and animation tool?
A video format?
A programming paradigm?
AS3 + movie clips?
Endless font frustrations?
A tool for developing specialized Flex components?

I'm heading out for the Gordon Research Conference on Visualization in Science and Education this week. While there, I will undoubtedly be talking about Flash a lot...about what I do with it. About interaction, and dynamic animation, ...

A lot of people have an idea of what Flash is, and what it can do. Do they have the complete picture? What would you say, if someone asked you what Flash is?

June 20, 2007

FlashCS3: Static and Dynamic elements not printing as same color from Mac

This has me completely puzzled. I'm finishing up a project that allows the user to input information and then print a page combining tdynamic elements with static elements. All elements are black (0x000000), and are mostly text (static & dynamic) and straight lines.

On my system (win XP), everything works fine. But client is reporting that the static elements are printing as blue, instead of black. He's on a mac.

Any ideas why? How to fix it?

June 13, 2007

GalaxyGoo Flash-a-thon?

GalaxyGoo has participated in the Blogathon twice now. It's been a lot of fun and we posted some great experimental Flash projects.

It's time for us to spin off on our own, with a less hectic schedule and more community participation. I'm thinking that we should spread the posts out over a few weeks and encourage the community to post links to their adaptations. Perhaps we should arrange some nice prizes.

We need a name! Current candidates are "GalaxyGoo-a-thon" and "Flash-a-thon". Obviously, we need more ideas.

June 10, 2007

Flex 3 Beta on Adobe Labs

Well, there goes the summer...Flex 3 Public Beta is now on Adobe Labs.

I haven't had a chance to look at it yet, but I'm hoping that it supports better work-flow integration with Flash....without boxing people into Flex for coders and Flash for designers.

June 06, 2007

Where I'm stuck, with importing Mathematica FLV into Flash

Below is a short description of how I might import a video file into Flash. I wrote it to explain to the folks at Wolfram what I want to do with flv or swf files generated by Mathematica . I'm hoping that someone may have some insights on how to resolve the problem I'm having when working with the files generated by Mathematica in Flash. Please note that this is not a tutorial. If it was, I'd be a lot more careful about defining my terms and not leaving out any steps or details.

Continue reading "Where I'm stuck, with importing Mathematica FLV into Flash" »

June 04, 2007

Speaking At Flash On The Beach

I'm still thinking about what to present at Flash on the Beach, in November. I certainly want to have a lot of fun with this one. If I can get the details of exporting Mathematica generated swfs worked out with Wolfram, I may explore some of the possibilities that opens up.

Yes, I know I've already posted about this, but they sent me such a lovely graphic I had to post again.

Adobe needs a Science and Education Evangelist!

The scientific and education communities use Adobe products extensively. Does Adobe have an evangelist that serves their needs? If not, why?

I'd like to see Adobe doing more to meet the needs of scientists and educators. I'd like to see Adobe at the next AAAS national meeting, as exhibitors--a big booth with demonstrations of the current releases of Photoshop, Flash, and the rest. Introduce them to AS3 in'd be surprised how often I meet scientists/programmers who have no idea that Flash has a scripting language, let alone one with the capabilities of AS3!

Why do I want Adobe to do this? Because it will make my life a lot easier! Adobe now owns most of the software that I use in my work. The more scientists and educators know about Flash, the sooner I can get to the project brainstorming and development aspects of my work. We will all start to build even more compelling and useful learning tools.

May 17, 2007

Registration Before Downloads?

What do you think about registering, before getting open source files? I ask this because it is rather challenging for us, as a non-profit organization, to provide reports on how our efforts are received by the public. How many people are we reaching and serving with our programs? Are we fulfilling our mission? We could develop better server solutions for tracking download statistics, behind the scenes. However, I'd prefer to go with a full disclosure policy, from all parties.

Is registration "bad", when we're a growing community? Identity supports responsibility, and respect for fellows.

My impression is that this is a sensitive issue, and I'd like some well considered thoughts from the community at large. If you are unfamiliar with GalaxyGoo, we are a small non-profit dedicated to increasing science literacy.

May 14, 2007

My First Export to SWF, From Mathematica

A little while ago, I briefly posted about Mathematica 6 exporting to SWF. Well, I've had a little time to play with it, and must confess that I'm finding it difficult to focus on finishing a project, because there is always something interesting in the documentation to distract me.

I've set myself the task of exploring the export to SWF feature, and here's an early example. AT this point, all I've done is make some small modifications to provided examples.

My impressions, so far:

Some Good stuff:
1. A lot of power in a few lines of code! This example was created in about 4 lines.
2. Wonderfully simple programming interface--I've always loved that about Mathematica.
3. Amazingly easy to go from evaluating a function to producing an interactive animation of it (even if the swf export doesn't have the interaction part).
4. Nice range of color palettes to choose from, and easy to apply. (I need to research how to add custom palettes).

Some Problems:
1. The resulting swf is huge! 3.27mb!
2. There is no interactivity in the swf - it runs automatically, even though there is a slider visible. (within Mathematica there is a lot of interaction with the example).
3. The swf does not support the 3d rotation of rendered object, which is present in the Mathematica interface.
4. The swf appears to be frame-by-frame animation of stills, rather than making use of any of the Flash drawing api.

Because the file is so big, I've posted it to the extended entry, instead of the main body, of this post. I've also posted a screenshot of the Mathematica notebook file, used to create this swf.

Continue reading "My First Export to SWF, From Mathematica" »

May 09, 2007

To Blogathon or not to Blogathon?

In past years, GalaxyGoo's participation in the Blogathon has been a lot of fun and resulted in collections of cool Flash experiments and their source files. Participants post every 30 minutes, for 24 hours. It's certainly a marathon.

I'm thinking that GalaxyGoo should go independent, and modify the program a bit. Scheduling daily bursts, for a week or two, instead of the 24 hour marathon. That would give our readers time to participate as well. I'd love to see variations on the posted source files.

May 07, 2007

How to get Trace output in Flex Builder 2?

This post is really just a question. One that's been puzzling me.

Why is there no built-in output panel that displays trace() results in Flex Builder 2? Is there a setting I should change, and have it functioning the way I'd expect from my years as a Flash-coder? Is it perhaps that Flash-coders were not expected to switch to the Flex Builder for coding? Is there a better tool than trace() in Flex Builder?

Why should I have to do any extra work to get trace() output when developing AS in Flex Builder? While I appreciate the code collapse, and other neat dev tools, trace() is really an important to how I develop code.

**Update: --- Read Comments for answers and explinations
* You must use Debug, instead of Run to get trace() output

May 02, 2007

Mathematica 6 exports to Flash!

Holy Cow! The new release of Mathematica (6) exports to swf!

Guess what I'm going to be playing with as soon as the disk arrives.

April 16, 2007

Flash on The Beach

The graphics for Flash on The Beach have been updated....that must mean the whole site's about to be updated. If that's the case, keep an eye out for my name on the speaker list.

That's right, I've accepted an invitation to speak at Flash On The Beach this coming November. My general theme will be the intersection of art and science. Not sure of the details yet, but really looking forward to it.

April 13, 2007

Use delete instead of removeNode() in AS3 -- was (Having trouble with removeNode() in AS3 preview)

I'm working on a little app that tracks user activity and saves the data locally, so the user can go back and resume where they left off. To keep track of where they position various movieclips, I'm using an xml object with a node for each movieclip and it's position. Fairly simple, really.

What's been frustrating me, though, is the removeNode method of the XML class. I have yet to successfully get it to work for me. I've also had trouble finding much documentation on removeNode() in AS3. In the end, I've resorted to delete, which works like a charm.

So, instead of


I'm using

delete myXML.mynode;

April 03, 2007

Exploring AS3 by Building a Portfolio

Well, I've gone an built a portfolio. Would you believe it's the first time I've done so?

It's still rough, and I need to add "loading" messages, among other things.

It was a great learning experience. Many things that were very simple in AS1 and AS2, are more complicated in AS3. Others are blissfully simple in e4x for XML!

The whole thing was built with AS3, using the Flash9 AS3 Preview.

March 30, 2007

FITC or Bust!

Woohoo! I'm making the trek to Toronto, for FITC. And I get to just enjoy it all, without any stress, because I'm not speaking this time.

March 27, 2007

Order Adobe CS3 and Benefit GalaxyGoo

Creative Suite 3 Design Premium. Deliver innovative ideas in print, web, and mobile design! Order Now!

When you order through this link, GalaxyGoo receives a commission from an affiliate program.

March 24, 2007

Can't have manually set instance names, with Flash9 AS3 Preview?

So, I'm playing around with the Flash9 AS3 Preview, and updating a project I'd built in Flash8 to AS3....when I get stuck. I can't figure out how to fix an error message I get when trying to run a Document I go back to the tutorials, and start from scratch. I tinker with the files I create with the tutorials. It all goes well.

But when I go back to my old file, I still can't get my document class to run without a fatal error. So....I go through all the visual assets in the fla. Eventually, I find one movieclip on the stage with an instance name. When I remove this instance name, my document class works like a charm.

So, why does having a manually set instance name cause an error? I'd very much like this explained, because I think I'm missing something important. Does it have something to do with not setting insance names in AS3?

March 19, 2007

What will I use Adobe's Apollo for?

At last Friday's Apollo Camp, I was interviewed...on camera! To my frustration, when they asked me what I would build with Apollo, I blanked. Must have been the bright lights, and the late hour. Of course, as soon as I was off-camera, the ideas spontaneously regenerated in my tired brain. What's a geek to do? Blog it!

Apollo is a bit more than a desk-top Flash player. There are number of features that have captured my interest:

1. Apollo applications sit on Apollo Runtime, not the operating system, freeing the developer from choosing which operating system to develop for. This is the reason I first got into Flash.

2. Apollo desktop integration means applications have local file access, and can make use of system clipboard and drag-n-drop...think how easy it will be to add your local photos to online applications!

3. Apollo applications can run in the background. When I heard this, the first thing that popped in my head was distributed computation projects.

4. I can use my existing web dev skills. According to Kevin Lynch, anything that works in HTML will work in Apollo.

5. Apollo also has online/offline detection events. This has a lot of interesting possibilities...preparing content, and then publishing, all in one application...checking for updates...

With the ease of web-services integration into Flash and Flex projects, and a force of developers who think web-enabled, I think we'll see some very interesting applications in the near future.

I'll probably start with something that will make my own life easier, like a bookmark manager.

March 16, 2007

Heading out for Apollocamp

I'm heading across town for Adobe's Apollocamp, in a couple hours. If you're going to be there, be sure to say hi!

I'll be the short, round, female, with glasses and dark hair ;-)

March 15, 2007

What got you into experimental Flash/ActionScript?

A lot of people that visit this blog have some sort of connection with Flash and the more experimental side of ActionScript and even experimental code in general. Whether it's by coding yourself or loving to check out what others can come up with. So this entry is about when it got started for you, what was the first piece that made you go 'whoa'?

When it comes to Flash and sparking my interest to take ActionScript one step further, Geoff Stearns' Click 3 Points is what started it for me. I remember seeing the original piece on an early version of his website, Deconcept and just spending hours clicking away and being mesmerized by it. I wanted to see if I could recreate it, I *needed* to recreate it. Since my AS-skills at the time (Flash5) weren't all that, it took me a bit, but eventually I came close. I even used one of my own resulting images as a wallpaper on my computer at work for a long time. And then Geoff created this page where people could showcase their variations of his original code, so I tweaked his code and he was gracious enough to add my piece on there. I was *beaming* when I saw my name on the page...

I could list a few more people/sites that have also been influential to me at some point, but Click 3 Points is what started it all, so... What started it for you?

February 28, 2007

Adobe ApolloCamp

I want to go to Adobe ApolloCamp, but it's "sold out". If anyone has tickets, but can't attend, I'd appreciate it if you'd consider transferring one to me.

Update: There was a cancelation, and i'm now registered. :-) If you're going to be there, be sure to say "hi"!

February 07, 2007

How did you learn Flash?

Often, I'm asked how I "learned Flash". I don't always know how to answer, since I don't think the way I learned it would work out for others. I also started programming before I even knew Flash existed.

People learning Flash, have a big challenge in finding good material amid all the noise. Some of the material really frustrates me. In fact, I recently had an "argument" with someone who wants to teach the old "on()" event model to high school students, instead of teaching best practices. For a lot of people, ActionScript is their first programming language, and I don't think it's a good idea to teach an outmoded event model that they will have to unlearn before they can make real progress in Flash.

What resources do you point people to, when they're starting out? Do you think there is a shortage of online resources that help people start out, with a solid foundation that prepares them to continue on?

January 18, 2007

Flash Player 9 for Linux official release

About 2 months ago I posted an entry about the beta release of the Flash Player 9 plugin for Linux. I installed it on my Ubuntu desktop and have been enjoying Flash8 & 9 content since (there has never been a Flash Player 8 plugin for Linux, only 7 and lower). I didn't encounter any real problems with it and I was very pleased with it. But lo and behold, it seems Adobe has not been sitting back to enjoy the achievement! Yesterday it announced the official Flash Player 9 for Linux release! Not just a beta, but a full release, putting Linux officially on par with Windows and OSX as far as Flash Player support goes. I am pretty stoked about this, the beta-release was an awesome feat, and knowing that Adobe continues with it is awesome as well!

December 14, 2006

No Women at FITC

Every so often, the absence of women at Flash conferences gets mentioned in the Flash blogs. But still...not much changes. There's a speakers list up for FITC now, and out of over 36 speakers currently listed, guess how many are women. Zero.

Why should I, as a woman, speak or even attend a Flash conference?

FITC Toronto 2007 - The Design & Technology Festival

November 15, 2006

Flash Player 9 for Linux

A few weeks ago Adobe released the Flash Player 9 Beta for Linux. This is great news as there wasn't a Flash Player 8 for Linux and now Linux users can check out the latest and greatest Flash applications and sites without a problem (do submit bugreports if you find any!)... This means it is now possible to create and view Flash9/AS3 content under Linux without the use of Wine/etc (creating it was already possible). Flash has taken one more, big!, step in the cross-platform world.

I'm planning to update my Linux install soon (it's my main OS at home), so once that is done I'll install the beta and report my findings here.

November 13, 2006

Bitmaps & Vectors Article Live

My article (Adventures with Bitmaps and Vectors) is now live. It's a work in progress, so please send in comments.

I hope that people find it useful. I've gone into more detail on subjects that there wasn't room for in the last published book I worked on.

Thanks to Aral Balkan, who inspired me with his post about vector vs bitmap.

November 07, 2006

Tamarin--ActionScript compiling

darron schall :: Compile ActionScript in ActionScript

November 02, 2006

I'm Famous! ....sort of.

The folks at Adobe surprised me this summer. They said they wanted to feature my work in the Adobe Design Center Gallery. I was thrilled...and who am I to pass up such great publicity?!

I had a lot of fun creating the piece, and I hope you enjoy it:
Adobe Design Center Gallery Featured Artist: Kristin Henry

September 15, 2006

Where are the Women Speakers at Flash Conferences?

Every time I speak at a Flash conference, I'm asked how to find female speakers. Well, Ann-Marie, over at FlashGoddess has taken steps to make this easier for everybody, with the new (and growing) Flash Goddess Women Speakers Listing. Personally, I'm thrilled to be on this list.

September 12, 2006

Adobe - Security Advisories - Flash Player Critical Upgrade

Adobe has released a security bulletin for the Flash player, and recommends a critical upgrade of the Flash player. Details and download link are available from Adobe.

Adobe - Security Advisories : Multiple Vulnerabilities in Adobe Flash Player and Earlier Versions

August 23, 2006

The Continuing Adventures of Flash Cross-Domain Data Loading

Back in 2002, I figured out how to integrate webMathematica and Flash. When the Flash player security tightened up with player 7, some problems came up. Even with a policy file on the remote server, the player wouldn't load the data. It couldn't find the policy file. But with the addition of loadPolicyFile(), it was possible to indicate the exact location of the file. All good.

But that solution no longer works. New problems popped up when we moved the webMathematica portion of our Periodic Table of Elements project to a new server. Data stopped loading from the remote server, and the application stalled in a "loading data" loop.

The application itself is very simple, and is an exploration of importing data from a webMathematica script into Flash. Building the table is fairly straight-forward, and a simple version of it (sans webMath calls) is in our mediaLab.

The tricky part comes in when the user clicks on an element's table cell, this triggers a call to the msp (a webMathematica script) on the remote server. Normally, a simple policy file would take care of the restrictions the Flash player has for loading remote data. However, the player looks for the policy file on the standard port.

webMathematica does not serve on the standard port. On our previous server, we found that we could work around this by using loadPolicyFile() in the swf. The port was indicated in the address:

On the new server, the port is not part of the URL. And for some reason, loadPolicyFile() won't load the policy file we specify. Perhaps it's looking on the standard port. I tried the to-port attribute for the outgoing policy file, but this didn't help. This is where I'm stuck.

In case anyone at Adobe is reading this, and could use more details on the problem:

  • when testing in the Flash authoring environment, the remote data loads just fine.

  • we are now on port 21

  • I tried using to-port attribute in the policy file, but it didn't help

For now, as a temporary work around, Edwin has whipped up a sweet proxy-script which bypasses the whole policy file issue.

Update (question for John):
How do I load data from a remote server (through port 21 on that server) to a swf residing on my website's server (normal port)?

The remote server is running webMathematica. I've been able to load data into Flash from a remote webMathematica server before, but the remote server's port number was part of the address, using a policy file and indicating it's location with actionscript's loadPolicyFile( inside the swf.

August 18, 2006

Help! Trouble loading data into Flash remotely.

Yep, I'm having trouble with cross-domain data loading and quirky policy files again.

I recall someone recently posted on the blogs about having similar troubles, where the data loaded just fine when tested on local dev machine, but wouldn't load from server. I'd appreciate it if anyone could point me to that post, or another solution.

The problem seems to stem from being on an unexpected port, again. There are policy files on both servers, but the server the swf is on seems to be unable to locate the crossdomain.xml file on the remote server with the data.

August 15, 2006

Discrepancy in the Glow Filter in Flash8?

I never use the filters that Flash8 has inside the authoring environment. But after Kristin pointed out to me she had problems reproducing a Glow Filter in AS that she had made in the authoring environment I checked it out.

The default Glow Filter settings inside the authoring environment are as follows: color is #FF0000 (red) at alpha 100%, blurX & blurY are 5, strength is 100%, quality is low and knock out and inner glow are unchecked.
To recreate this using AS you need the same settings as above except the strength needs to be set to 1 and alpha needs to be set to 1. The alpha parameter in AS goes from 0 to 1 which makes enuf sense. However according to the docs the strength goes from 0 to 255. So how does this relate to the strength settings inside the authoring environment which can be set from 0% to 1000%? 100% relates to 1 apparently. So there doesn't seem to be a linear transformation. Which seems odd.

I haven't checked any of the other filters if there are odd differences between filters applied inside the authoring environment and those applied in AS. Anybody?

July 31, 2006

Flurry of Experimental Flash

Wow! We did it! We posted experimental Flash projects (with source files) every 30 minutes for 24 hours. It wouldn't have been possible without my amazing team. Edwin, Mike, Paul, and Stacey, and special guest Keith Peters, posted fantastic and diverse experimental flash projects (including source files). The experience made us all wish we had more time to experiment. Everyone went above and beyond what was asked of them, and in my eyes they truly sparkled.

In addition to the coders, we had an invaluable team member who may be unfamiliar to the Flash blog audience: Phyllis Pugh. Phyllis is a neuroscientist.She is also on the board of directors and is the science advisor to GalaxyGoo. If you ask me, we've just discovered a hidden talent of hers: blogger extraordinaire. Her introductions were great! She stepped up during the blogathon, even with an unexpected and personal loss.

Why'd we do this? There were two main goals: 1) inspire our fellow flash developers to do more experimentation and 2) raise money for the educational programs at Galaxygoo.

It's not too late to make a pledge of support for GalaxyGoo at To every donor who pledges $40 or more, we'll be sending a cool thank you gift: a Glow-in-the-dark Astro-Logix construction toy (64 pieces).

July 19, 2006

Blogathon 2006

The blogathon is almost upon us, and we're working furiously to get ready. We've got a fantastic group of Flash coders contributing files to this event. Some participated back in 2003, and some are joining us for the first time.

The projects will be in various version of Flash, including AS3.

During the event, we'll publish source files as well as finished swf. We hope that you will join in on the fun, play around with the code, and post your own variations.

The event starts at 6am (pacific), on Saturday, July 29th, and ends 24 hours later.

You can help support the educational programs at GalaxyGoo, by making a pledge of support on the website.

July 05, 2006

Updated Avian Flu Data Viz

I've updated the Data Visualization of Avian Flu so that it shows the data from the World Health Organization on cases reported through July 4th, 2006.

GalaxyGoo in Blogathon 2006

It's official! We're in the 2006 Blogathon. We'll post an experimental Flash project every 30 minutes, for 24 hours.

In the 2004 blogathon, GalaxyGoo won the award for "Best Visual Arts". After a two year break, we're participating in the blogathon again.

When: Saturday, July 29th
Start Time: 6am (Pacific)

Sponsor GalaxyGoo! Your pledge supports the educational projects at GalaxyGoo.

July 04, 2006

Animated timeline of Human Cases of Avian Flu

This is a little project I've been working on. It shows the progress of confirmed cases of Avian Flu over time, and is based on data from the World Health Organization. Please note that they only report cases that have been confirmed by laboratory testing.

Data Visualization of Avian Flu Cases in Humans

The most challenging part of the project, in all truth, was to convert the data from the format the WHO published it into an XML formatted data structure. It was the manual formatting that took the most time and concentration.

This animation, to use a current catch-phrase, uses client-side logic to render data from an external data source (in XML format), and can be updated without editing the swf file.

Please note that this is a work in progress, and there are a number of features I will be adding in the future, including greater user interaction with the data, alternative rendering views, and the overlay of other data (such as cases in birds).

April 26, 2006

Back from FITC

Wow! What a conference!

Yes, the sessions were good, but it's really the people who make a conference. It was great to meet up with old friends, and to make wonderful new friends....just too many to list in a blog post. Two new and very dear friends (Mario and Alexandra) were so much fun throughout the conference. It was all such a whirl-wind that I didn't get to spend enough time with lots of people, especially Stacey and Ann-Marie. Robert, Keith, Aral, Simon...the list goes on and on. Really great people.

I had to tend to business as well, and may have a new sponsor for GalaxyGoo. I also got some good advice on the book-writing front, including the possibility of developing courses or workshops.

Even on the flight home, the conversations continued. Paul Ortchanian and I talked for a good portion of the flight. He's now based in San Francisco, but we'd never met before.

I can hardly wait for the next FITC.

April 19, 2006


Early tomorrow morning, my long journey to Toronto and FITC begins.

I'm really looking forward to this conference. I'm especially hoping to meet up with people who are active or interested in the OSFlash movement. Be sure to introduce yourselves! My talk is at 10:15 am on Saturday, in Pier 2 & 3, and is titled Beyond Usability: Building Meaningful Learning Applications.

April 03, 2006

Flash Player 7 for Pocket PC

Woohoo! This is great news! With AS2!

Macromedia - Flash Player 7 For Pocket PC

March 27, 2006

Job Opening at Red Hill Studios

Marc Tanenbaum, from Red Hill Studios, recently asked if I knew any Flash coders who are currently available. If you are interested in this position, please use the contact address at the end of this post.

Red Hill Studios is an educational interactive media developer for consumer, classroom, online, and museum markets. Although we operate in a fast-paced environment and strive to do the best work possible, we feel it is important to have fun along the way.

Position: Flash Programmer

Responsibilities: Design code architecture and perform programming of Flash applications and games. Develop procedures and templates for educational activity creation. Implement all interactive components working closely with other members of the production and programming teams. We are looking for a motivated, creative person to assist in our development efforts to create new projects of all kinds.

* 3+ years experience with Flash programming (including a demonstrated understanding of AS2)
* In-depth knowledge of web development including HTML, JavaScript and XML
* Strong object-oriented development skills
* Ability to write clean, well documented code
* Ability to create and maintain clean file structure, using established conventions and procedures (and perhaps developing some new ones along the way)
* Ability to work with a large amount of content and create procedures to manage it efficiently

Other useful knowledge/applications/abilities:
* Perl, PHP, CSS
* VB, C++, or other programming languages
* Databases (MySQL, FileMaker)
* Director & Lingo
* Photoshop (and a general understanding of graphics formats)
* Dreamweaver
* Video development
* Serial port interaction
* 3rd party Flash apps (Sorenson Squeeze, Swift 3D, Zinc, Zoomify, etc)

This position involves significant interaction with Red Hill Studios staff therefore working on-site will be required.

To apply for this job please submit a resume and cover letter to programmer at redhillstudios dot com.

March 22, 2006

color-challenged in Flash: Part 3

Over the years, I've informally explored the issue of color-challegned users in Flash. Some of my recent explorations have turned up these links:

And here is a book I'd like to pick up:

Color Science: Concepts and Methods, Quantitative Data and Formulae
(Wiley Series in Pure & Applied Optics)

March 15, 2006

Update your Flash Player to fix Security Vulnerabilities

For those of you that don't follow the Flash blogs, this may be news to you. A vulnerability in the Flash player has been discovered, but Adobe already has a fix for you to download. This is a security vulnerability, so make sure to take care of this, and download the update right away. Macromedia - APSB06-03: Flash Player Update to Address Security Vulnerabilities

February 16, 2006

Bug in FlashPlayer 8?

I recently came across an odd issue with FlashPlayer 8. Consider the following ActionScript:

var arr = [];
arr[203] = "�";
arr[235] = "�";
var obj = {};
for (var i in arr) obj[arr[i]] = i;
var t = "";
for (var i in obj) t += i+" - "+obj[i]+" | ";
txt.htmlText = t;

Where 'txt' is a dynamic textfield on the stage.

When this code is published for FlashPlayer6 / ActionScript1.0 (as is the case with the company I work for, I work with MX2004 at the moment) it displays "� - 203 | � - 235 |" in the textfield when viewed with FlashPlayer 6 & 7. It however displays "� - 203 |" when viewed with FlashPlayer 8! It does however show the correct result in FlashPlayer 8 when this code is published for FlashPlayer7 / ActionScript2.0. Very odd and it seems to be a backwards compatibility issue/bug.

Since we use our own custom encoding/decoding scheme to send texts back & forth between Flash and the server which relies on the above-mentioned ability, this is kind of a problem. Is there an easy solution besides publishing for FP7/AS2.0 and thus having to update a lot of applications?

I might actually file this as a bug with Adobe/Macromedia as it isn't, in my eyes, expected behavior/correct backwards compatibility.

February 13, 2006

400,000 years of climate history in a Flash

Call me a geek, but I just love creating interactive data visualizations with Flash. The more challenging, the better.

I recently finished a really fun project for NASA: an interactive visualization of the Vostok ice core data. The small graph at the bottom of the data widget (as we've been calling it) is the navigation system for the data set. It's embedded, about halfway down, on Earth Observatory Feature: Paleoclimatology: Frozen in Time: the Ice Core Record

January 17, 2006

Speaking at FITC

I've been asked to speak at FITC 2006 Toronto - The Design & Technology Festival. I accepted the invitation. So, it looks like I'm heading to Toronto in late April. I was planning to take a break from tech conferences this year, but just couldn't resist FITC.

January 14, 2006

And the name of the book is...

Special Edition Using Macromedia Studio 8, by Sean Nicholson. I'm amazed that I only now remembered to post the title. While my name isn't on the front cover, it is printed just below Sean's on the title page, and on the back cover :-) Sean was also very kind, and mentioned me in his acknowledgements.

There's a possibility that the publisher will post one of my chapters online. I'm still not sure which one to ask for, though. The chapters I'm considering are "Introduction to Action Script", "ActionScripting for Motion Graphics", and "Introduction to Class-based Programming in Flash". I'm leaning toward "Introduction to Class-based Programming in Flash". Let me know if you have thoughts on which would be most useful to the Flash community. By the way, the files for the tutorial chapter (building an XML-based slide show) can be downloaded on the publisher's page for the book. Look for "The example files developed for Chapter 16".

Since I was a "contributing author" and not "co-author", I didn't get to write any acknowledgements for the book. So, I'd like to do a little of that here. First of all, I need to thank my husband and children for putting up with me while writing the chapters, and for being so supportive and understanding...and for eating so many take-out dinners. MD Dundon was my tech editor, and I couldn't have gotten through it with out her. There were something like 7 editors on this book, and MD really helped me figure things out, when I'd get confused. Frances Segal, my intern at the time, was wonderfully patient with me and the crazy schedule.

Writing the Flash chapters of this book was an amazing learning experience. I had to start at the very beginning, and give the reader a footing in drawing on the stage with the toolbox and frame-by-frame animations and tweening. From there, the reader works from simple ActionScripting to working with external data and then Class-based coding. And of course, we had to fit in audio and video. I especially enjoyed writing about the new Flash 8 video encoder and the FLVPlayback component. Cool stuff! There wasn't a lot of room to cover things in as much detail as I'd have liked to. Everything had to be boiled down to their simplest essence. I also didn't get to spend much time on the new features in Flash8, although I did slip in a coded filter for the tutorial on coding a slide show.

Do I plan to write another book? Yes! In fact, I'm looking for the right publisher for my next book. It's much more fun to write a book at one's own pace than under tight deadlines. :-)

January 12, 2006

Need to Make Things Move?

Just saw today, that Keith Peters' fantastic book, ActionScript Animation: Making Things Move, is sold out. Wow! Congratulations Keith!

It just so happens that we were about to list a signed copy of the book in our MissionFish/Ebay auctions. So, if you've just got to have a copy, and you'd like to support our programs at the same time, the timing couldn't be better. The listing is scheduled to go live tonight at 9pm, Pacific.

Legal note: GalaxyGoo is a registered charity in the State of California. This is not a solicitation for donations outside of California.

November 29, 2005

Kaleidoscopic Cell

Sometimes, I just have to make something silly. Usually this happens when I've been working on a particular project for a very long time and I start imagining it's elements in a peculiar way ;-)

Click on the stage to start a new randomly generated pattern.

Thanks go to Edwin, for inspiration and some code from his kaleidoscopes (1, 2, & 3).

November 23, 2005

New version of The Cell

We've just uploaded a new version of The Cell: A Learning Tool.

This version includes a feature that lets the user build a cell from a selection of organelles, and checks if the correct organelles have been placed in the cytoplasm.

We've also included questions in the quiz that are more cognitive based.

We still need to add better logic to the quiz, so that the same question isn't repeated and the quiz responds to the user's learning needs.

November 14, 2005

Moock Announces Essential ActionScript 3.0

Woohoo! When this book comes out, it will be a must-have.

moockblog: announcing Essential ActionScript 3.0...

What Makes a Great Conference

It's been so busy around here, that many "news" items just haven't made it to the blog.

This summer, I attended the best conference I've ever been to: the Gordon Research Conference on Visualization in Science and Education. There were several factors that made it such a great conference. First of all, the attendees were all encouraged to participate by presenting posters, so that most attendees were either giving a talk or giving a poster. Also, the speakers were not singled out, or isolated from the rest of the attendees.

The conference was focused on a single track of sessions, and there were more opportunities for talking with the other attendees than at other conferences I've been to. Also, limiting attendees to 125 reduced the chances of getting "lost in the crowd". During the five days of the conference, we ate all of our meals together and there were many opportunities in the day to socialize. We visited several pubs.

For me, attending one of the two-day workshops before the conference began was a great way to get to know people. We broke up into small working groups. I learned a great deal about assessing the effectiveness of learning applications, and got to know some amazing people at the workshop. You could even say that I had a paradigm shift, as a result of the workshop. I'll be writing more about this, as I continue my studies and explorations.

There was also the mini-grant competition. During the course of the conference, we were encouraged to form interdisciplinary teams, design a pilot project, and write a grant application to fund the project. Each team was expected to include a subject expert, a learning expert, and a media expert. The application was due at the end of the conference.

I am pleased to announce that I am part of a team that won funding for a pilot project, through the conference, and the project will include the development of a learning tool built with Flash. The grants were funded by the National Science Foundation (NSF).

November 11, 2005

Class Based version of CML Reader

Eric Mulvihill contributed a class based update of Edwin's CML reader a while back. It's now available for download on the GalaxyGoo Working Forums - CML reader

November 04, 2005

Tarbell and Peters in Art Intersect Science

Two great Flash developers have donated items to the Art Intersect Science auction. Jared Tarbell has sent a print of his Nine.Block piece and Keith Peters has sent an autographed copy of his much anticipated book Making Things Move.

November 02, 2005

Call for Flash Computational Art

At the celebration of Art Intersect Science (Nov 10), we'll have a projector available to hook up to a lap top. We just found out about this and are going to show off some GalaxyGoo projects.

Since this is an art show, it would be great to project some live computational art as well. If you've created some computational art with Flash, especially Flash8, and would like to have it showcased in a San Francisco gallery, contact me right away. Projects with open source code are preferred.

October 23, 2005

Finally finished the book

Just now, I sent in my last rewrites on several chapters I've been working on for a book on Macromedia's studio 8. After all this work, it's a bummer that my name won't be on the cover, but at least I've gained a great deal of experience in writing about Flash. I had to cover everything from "this is the Selection tool" to writing class based code in Action Script.

I've also come out of this with the firm knowledge that, at heart, I am a coder not a designer. The chapters I had the most fun writing, were the ones on code.

What's next? I'd like to write a book on developing educational applications with Flash. I thought I had a deal all set up, but they unexpectedly gave the book to another author. So...I'm in the market for a publisher.

October 04, 2005

Slide Show for Art Intersect Science

We've put up a simple slide show on the Art Intersect Science pages. It makes simple use of one of the new filters in Flash 8, the drop shadow.

As the art comes in, and we get them processed and digital images prepared, the slide show will be updated. Ah, the joy of XML! :-)

The Art of Science: Art Auction Benefit Event 2005. The Art

By the way, a version of this slide show is covered in a book I've been working on.

September 22, 2005

Where are the Active Forums?

Where are the active forums for learning Flash nowdays? Especially for the new features of Flash8?

September 12, 2005

A surreal moment of celebrity

This weekend, my family and I went out for dinner at one of our favorite restaurants. We've been going there for years. We had just placed our order, and the kids were all set with their colored pencils and paper, when a young woman came to the table and asked if she could ask me a question. I figured it was about our order, since she worked at the restaurant. She said that she was a design student, and that she was reading a book on Flash...and...was I the one in the book? New Masters of Flash?

I was completely surprised. It was a very strange experience, to be recognized for my work in Flash in a very non-Flash part of my life. We talked a little bit, but I was with my family and wanted to focus on them.

The strangest part of it, to me, was her surprise that the geek in the book could be the same woman she saw before her in full mom-mode. I generally keep my personal life off-line, but I do have one. It's not so much that I don't want to talk about them, it's more that part of me is theirs. I don't know if that makes any sense.

September 05, 2005

Collision Detection

For a project I'm working on, I need some optimized collision detection. I've been tinkering with some of Keith Peter's experiments, and looking at Grant Skinner's grid-based collision detection, but I need some deep understanding in background theory as well as applications. So I ordered this book: Real-Time Collision Detection. Hopefully, I can mentally digest it before my children go off to college.

If you know of some great learning resources for collision detection, please post in the comments.

By the way, we don't get a commission on sales from that link. Elsevier just had a really good break-down of the chapters. If you're planning on ordering the book, and would like to send a commission our way, please order through this link at Stacey's.

September 02, 2005

Speaking About Flash

Since I tend toward the less traveled paths, I'd like to get some feedback on what my fellow travelers are interested in. If you were going to a Flash conference, and I was speaking, what would you like me to talk about?

August 26, 2005

FlashForward moves to Seattle

Lots of changes going on with Flashforward, including moving the west coast venue from San Francisco to Seattle. I'm not sure what this means for me. A lot will depend on if I have time to put together a proposal to speak, and if they accept it...and if they promise to have an adequate screen in the room I speak in.

August 25, 2005

Dynamically Load GIF's in Flash8

With Flash 8, you can now dynamically load Progressive JPEG's, non-animated GIFs, and PNG files. This is great news, since the appropriate file type can be used for each image in a dynamic image gallery--such as GIF for images with large patches of color (ie logos, etc).

August 24, 2005

Do you use Flash's Built-in Learning Interactions

Flash comes with some built-in learning interactions, such as interactive quiz questions. I've never used them myself, and I'm wondering how other Flash developers integrate them into projects.

August 18, 2005

Bit-101 Flash 8 Experiments

Have you been by BIT-101 lately? Keith Peters has been a busy boy! Inspiring as usual.

August 13, 2005

Flash8 player public beta

Macromedia Flash Player Public Beta - Flash Player Installation

August 08, 2005

Zinnias in Flash 8

Inspired by Grant, I've updated my old Zinnias experiment. This is what it looked like originally (click on the stage to generate new flowers):

...and this is what an update to Flash 8 looks like (click on the stage to generate new flowers). You'll need the Flash 8 player for this.

The Flash 8 version makes use of ActionScript's access to one of the new filters. In this case, I used DropShadowFilter.

August 02, 2005

Cheap Skilled Labor?

I came across this post on Craig's, I didn't realize private ActionScripting instruction was so cheap ;-) Who can teach me Flash related Action Script?...for $10 per hour

July 28, 2005

CNN article on Flash 8

Looks like Flash blogs may come out of stasis soon.

Flash 8 poised to take on Web video | CNET

July 26, 2005

Skipping the Blogathon

This was a tough decision, but we're going to skip the Blogathon this year. While the last Blogathon was a great experience, several issues tipped the balance against GalaxyGoo participating this year. First of all, we've already got our hands full with the upcoming Art Auction and Benefit event. Secondly, Macromedia has already released a public Beta of the next Flash player. It seemed strange to be putting together a collection of experimental Flash pieces right now.

The last Blogathon was a lot of fun, and I wish this year's participants the best of luck.

July 18, 2005

Flash Reading List

Lately, I'm getting a lot of requests for a recommended book list for folks learning Flash.

Here's a short list of books that I've found useful for ActionScript:

ActionScript The Definitive Guide, by Colin Moock --O'Reilly Publishing
--This is an essential!

Essential Action Script 2.0, by Colin Moock --O'reilly Publishing
--essential for class-based OOP in ActionScript!

Robert Penner's Programming Macromedia Flash MX --McGraw Hill
--This one is great for the new stuff that came with MX, ie the drawing API, and translating math into AS.
--drawback: based on currently outdated syntax and prototype approach

Flash Math Creativity, Tan et al -- friends of Ed
--just wonderful fun!, and you can pick up some good stuff in it too. However, it uses outdated syntax. A new, updated, version of the book is now available.

Are there any books that you'd add to this list?

July 13, 2005

The Blogathon is Back

The blogathon is back, and it's scheduled for August 6, 2005.

Last year, GalaxyGoo won the award for best visual arts project. The way we did it last time, we set up all the posts ahead of time and published them every 30 minutes during the blogathon. This worked well, and we took shifts.

To participate again, we'll need volunteers from the Flash community to donate experimental Flash projects and their source files. If you're interested, post a comment here or use our contact form. Be sure to include your email address, or I won't be able to get back in touch with you.

June 29, 2005

GalaxyGoo in London --pix added

I made it! At last, I'm in London. It seems like ages have passed since this trip first became a possibility.

Tomorrow, I plan to spend most of the day at the Natural History Museum. On Friday, I head out to Oxford for the conference.

Update: pix from lunch (and coffee) in London

May 25, 2005

The Flash timeline = interactive data visualization

I've taken on a commercial writing project, to help pay for the trip to Oxford, and it's got me rethinking some of the basics of Flash--things I've taken for granted for years.

In particular, the timeline has re-impressed me. The timeline gets a lot of criticism from coders new to Flash, and can confound Flash newbies in general. But when you think about it, it's a really great tool. The Flash timeline is interactive data visualization in high style!

It's a representation of dynamic data arranged in a two dimensional grid, with time in one axis and space in the second. Each frame of each layer is accessible from this visualization. When you click on a particular frame in a particular layer, you get immediate access to those assets. Additionally, it folds and expands data navigation on direct selection.

OK, maybe I'm working too hard these days, and I'm getting a bit punchy, but I just had to share.

May 12, 2005

All About Ratios Project Now Onlne

Last night, I uploaded the All About Ratios project to our server. So far, testing is going well, but we could use some more feedback. The focus right now is on function.

For me, the most challenging part of the project was working with internal and externally loaded images as if they came from the same source, and keeping my code readable. Since Flash won't duplicate a movie clip with an externally loaded jpeg, I had to load them repeatedly. But I wanted there to be default images for the exercise, so that the learning tool would work even if it landed in an environment without external resources to load.

I'm going to take a break from the code for a little while, and then come back and look for ways to improve the class structures.

All About Ratios: a learnig tool built with Flash

April 19, 2005

Why am I worried? I should be excited!

I'm trying to be positive, and think of all the things that could be possible when Macromedia is absorbed by Adobe. But I can't shake this nervous feeling in my gut. Why? I think it may have to do with the fact that I am data-centric and information-centric.

Over the years, I have come to see the beauty of well separated content and presentation. This doesn't mean that they are irrelevant to each other, it just means that when the presentation is stripped away, the information should still be useful. Over the years, I've also had encounters with that particular species of designers that doesn't understand this at all. And doesn't value it, at all. And they've always been PS users. So, much like folks burned by Flash Pop-up ads, I am very nervous of anything to do with PS imposing it's own "work flow" on my Flash, CSS, and HTML.

To illustrate my point, how many coders (HTML AS, whatever) have felt like they were beating their head against a wall explaining why text is text and not a graphic? I once actually had to talk a designer into NOT formatting text in Photoshop before importing it into Flash.

My optimistic self is starting to spark a little. What if Adobe really pays attention? What if they conduct studies to see how we all work? What if they find a way to make it easier for us all to work together? Case in point, they could add a feature to Photoshop that makes the text a guide layer, so that the Flash expert could see what the designer intended and make it more usable.

Now I wonder what I can do to make this all go in a positive direction. I issue a challenge: Macromedia and Adobe, tell me how I can help make this the best it can be!

Flashbelt's Student Feedback Zone

Dave Schroeder, director of Flashbelt, asked me to write a little blurb about the conference and to help out with his publicity. I was going to write a polite note back, saying that I usually don't make posts of that nature. But then, out of curiosity, I went to the website.

That's where I noticed something they call "The Student Zone". Ever more curious, I took a closer look.

Wow! This student zone looks like something that all creative conferences should have. Students can informally show their work to professionals in the field, get feedback, and make contacts that could further their career once they graduate.

This reminds me of an informal poster session, an integral part of any research conference, and something I'd like to see more of at Flash conferences. They usually have both professional and student sections.

Major kudos for the student zone...and next time, invite me to come speak ;-)

What is Flash, and Why Does Adobe Want It?

The Macromedia-Adobe deal made the front page of the Chronicle today. The Chronicle is the main local paper in San Francisco. In general, the article was encouraging to me. Especially that they mentioned delivering "digital content to the booming cell phone industry", early on in the article.

However, they really didn't seem to get what Flash is, let alone the other Macromedia products that we work with. The article actually said that the Flash Player is "used to view images and video". That's it! Sure does make Flash out to be a glorified slide projector and nothing else.

Since Flash is about to swim in a new pond, with all new fishes, perhaps it's time to revisit what Flash is...again.

I'll start, and I invite you to add your thoughts as well.

I use flash to develop educational software; to visualize science and math; to interactively visualize data; to communicate complex concepts to a wide audience. I design with it. I program with it. I play with it...

April 13, 2005

FlashForward Presentation Notes

Here are the slides from my presentation at last week's FlashForward conference, in San Francisco.

This project ("All About Ratios") is still in development, but here is a sneak peak at it. Granted, it's not very pretty, yet. But it works fairly well, so far. Still testing.

April 11, 2005

Is the Blogathon Back?

Is the blogathon back, after a two year hiatus?'s an annual event, and they didn't hold it last that's a two year hiatus ;-)

Anyway, it looks like there's some activity over on the blogathon domain. The old site is gone and there's a neat graphic of a clock and a message that says "coming soon!"

If you're interested in participating in a GalaxyGoo effort, let me know. Last time we won the best visual arts project category.

To avoid any confusion about when we'll be creating our experiments, I'll spell it out right now. We author them ahead of time, and post them real-time...although authoring them real-time could be interesting.

FlashForward Wrap-Up

Even though Flash in the Can was the stellar Flash conference this year, I still had a great time at Flash Forward.

Lunch was a lot of fun! Jared Tarbell took a lot of photos all through the conference. I hope he'll post them online.

My presentation went well, I think. The room was full--a good audience. I had a great time. The only downside was that the display screen was absolutely tiny, as if it were an afterthought to put one in the room, and it was hard to see any of my slides. Aside from that, it went great. And I spoke with a number of people after the session. I'll be posting my notes soon.

I would have taken pictures, but I was so busy talking to people...lots of people! I'm still processing it all.

A lot of people are doing great things with Flash and education. Unfortunately, most of it is password protected. I wonder what could be done to nurture a more open forum for these developers. There was some buzz about pressuring the conference organizers to add an educational application track.

The folks from Making Things were there. What a great group of people! I spent a fair amount of time picking their brains. By the way, is there anyone in the Bay Area who would like to get together and talk about using Flash with Teleo?

On Saturday, with the conference and work completely out of my mind...enjoying the ocean breeze and warm sunshine in the park with my family, I hear someone call my name. I turn around, and there's Ketan Anjaria (from, waving "hello" from a bench across the field. Very small world :-)

March 31, 2005

Lunch at FlashForward

I've set up a reservation at a nice place near the FlashForward conference for lunch on Wednesday. If you'd like to join us, please comment to this post (or send me an email) so that I can send you the details.

A propper head-count, makes it faster for them to seat us....and faster for us to get back to the sessions :-)

March 24, 2005

GalaxyGoo Flash Challenge: Mathematics and the Cosmos

April is Math Awareness Month, and that means it's time for a GalaxyGoo Flash challenge.

Mathematics is at the core of our attempts to understand the cosmos at every level: Riemannian geometry and topology furnish models of the universe, numerical simulations help us to understand large-scale dynamics, celestial mechanics provides a key to comprehending the solar system, and a wide variety of mathematical tools are needed for actual exploration of the space around us.
~Math Awareness Month

March 21, 2005

Flashy Dinner and Happy Hour

Coming to San Francisco for Flash Forward? We've set the time and location for dinner, followed by drinks at a nearby cocktail lounge.

Want to join us for dinner? To ensure enough tables, I need a count by Sunday, April 3rd. After dinner at Esperpento, we'll all walk up the block to the Lone Palm. If you miss dinner, catch up with us at the bar.

Change of plans: Lunch on April 6th instead...stay tuned for details. --updated March 29, 2005

It's official, Moock endorses SEPY

If you get Colin Moock's newsletter, then you already know this. In today's update, he says "lots of people have asked me what editor i use for coding actionscript 2.0. so here's my official response: i use SE|PY..." - SEPY ActionScript Editor Home Page

March 11, 2005

Translate a Poem into Code?

Very cool! I love this kind of stuff!

ActionScript Poetry contest is on! // or, trace (contest[poetry].annual[0]);

March 02, 2005

Getter-setters, public-private debate

Very interesting post and discussion (in the comments) from Darron Schall on 'No-brain' getter and setters

February 10, 2005

Nature and Computational Art

I found it! An online source for the cover of Science that reminded me of one of Jared Tarbell's works.

February 09, 2005

Feedback Requested: All About Ratios Project

The "all about ratios" project is ready to move into the next phase of development: user interface. Before we continue, we'd like some help looking for bugs and feedback on the basic interface it already has.

Currently, the learning tool generates a new exercise at the user's request. It also indicates "try again" or "that's right" when the user clicks to select their answer.

Continue reading "Feedback Requested: All About Ratios Project" »

February 01, 2005

What's "real development"?

Just out of curiosity, I'd like to know how different folks define "real development" and "hardcore coder".

What's your primary dev language? Secondary? And how long have you been using it?

If you're feeling a little shy, go ahead and send me a message off the blog.

January 26, 2005

beginGradientFill with a-i, instead of box?

If you're not one of the coders who reads this blog, please just ignor this post.

Now, if you're a Flash coder and you're nice and comfy with gradient fills, I have a question for you. What does the a-i stand for in this matrix option for beginGradientFill:

matrix = {a:500, b:0, c:0, d:0, e:200, f:0, g:350, h:200, i:1}

Iv'e seen explanations of how to use the "box" type matrix, but not the a-i type.

January 21, 2005

Standalone Powerpoint to Flash Converter?

Ok, did I miss something? Or has Macromedia already released a stand-alone Powerpoint to flash converter. Breeze has been able to do this for some time, but I didn't know there was a stand-alone version.

I just got done with a survey from Macromedia--yes I was tempted by the possibility of winning an iPod--and at one point was asked to read a bunch of product descriptions. In among the descriptions was something called Producer: a Powerpoint to Flash converter. Wow! That would be amazingly useful to have.

January 19, 2005

Bit-101 Forums Back Online!

Yep, I'm happy, happy, happy. Keith Peters worked some kind of magic and the BIT-101 forums are now back online. Yeah!

BIT-101 :: Index

January 12, 2005

Educational Flash Nominations?

After posting about the Flash Film Festival Nomination Extension, I started wondering about what kind of projects folks are nominating this year.

I'm really curious about the Education category. Have you worked on an educational piece this year? Any science projects open to the public?

Flash Film Festival Nominations Extended

The folks at FlashForward have extended the deadline for awards nominations to January 24th. If you've built something you're proud of or seen something that impressed you, go ahead and nominate it.

[Flashforward >> Flash Film Festival Nominations]

January 07, 2005

Self-Dividing Line is beautiful

I've been a fan of Jared Tarbell's work for a long have many. Going through my bookmarks today, I came across this page from his catalog of fine prints. I think it's an image from one of his flash experiments that inspired me to first contact him. When someone does work this wonderful, I'm inspired to send them thanks.

It amazed me how similar it looked to the cover of Science that was sitting on my desk at the time--of some kind of vegitation with frilly edges.
Complexification | Gallery of Computation

Mathematics and the Cosmos

Mathematics and the Cosmos is this years theme for Math Awareness Month. Stay tuned for announcements about a GalaxyGoo Flash challenge as we get closer to April.

If you've got an idea, or would like to sponsor the challenge, please contact me at khenry at galaxygoo dot org, or post a comment to this post.

December 16, 2004

G.Wygonik Cell?

G.Wygonik posts that he's doing very little Flash... for a while. Yet, he's also written a teaser about playing around with a cell concept -- related to our Flash Challenge. I can't wait to see what he's come up with.

December 03, 2004

Problems Loading and Resizing multiple FlashPaper2 files in Flash

Has anyone else run into problems with resizing multiple FlashPaper2 files in Flash?

I've followed the methods in the Macromedia FlashPaper 2 Documentation.

This works fine for one FlashPaper file. But when I tried to load more than one into the same holder clip, the resizing failed.

I'm curious if anyone else has had this problem, and how they solved it.

December 01, 2004

FlashForward Schedule Online

They've got the webiste up for Flashforward. Looks like I'll be speaking right after lunch on the second day.

Adventures with FlashPaper2

After downloading the trial of FlashPaper2, I was very pleased with how easy it was to convert a word document to a swf file. A little reading, and I was loading a FlashPaper2 document right into another swf. Fantastic!

But I've run into a snag. File size. I'll have to do some more research on how to optimize this a bit, since my original Word document was about 20kb and the resulting FlashPaper2 document came in around 60kb. Not too big of a problem if I'm only working with one file, but this adds up quickly if working with several documents.

I hit another snag, but I'll do some more research before posting about it--I'm sure there's a simple solution, that I just haven't seen yet.

I can't wait until I get better at working with FlashPaper, it's amazing! Oh, it could make my life so much easier and open up new possibilities at the same time.

November 23, 2004

What is a cell?

A lot of folks have been asking me what I'm looking for in the Cell Challenge. Creativity, that's what I'm looking for. You can focus on the biological meaning of the word "cell" or you can take a more general meaning. A cell is basically a container.

Frances and I are currently working on a learning tool about the Cell for 7th graders. Here's the page for the project, and here is a partial preview of the tool.

Here are some sites for biological information and inspiration:

Cell's Alive
The Biology Project: Cell Biology
The Cell
Cell Biology Animation
Cell Intelligence
Introduction to Cell and Virus Structure

You don't have to limit your imagination to the biological cell. Here are few other ideas:

Cellular Automata
A fuel cell
Solar Cells

Got an idea you'd like to share?

November 22, 2004

First Entry for Cell Challenge

The first entry for the GalaxyGoo Flash Challenge is on the forums. Each of the two versions display a spectrum of colors based on pi.

Winter 2004 Challenge: Cells!

November 17, 2004

Flash to Tangible

Lately, I've been interested in using Flash to generate more literally tangible experiences. One way is to use Flash's print function.

Here's a draft of a learning tool in the Cell Project, that Frances and I have been working on. The student gets both live interaction from the on-screen learning tool and a tangible off-screen activity.

Continue reading "Flash to Tangible" »

November 12, 2004

GalaxyGoo Flash Challenge: Cells

GalaxyGoo Flash Challenge: Winter 2004

You may submit more than one entry.

Deadline: December 31, 2004

Theme: Cells

Goal: To share ideas and explore artistic and scientific expressions in the medium of Flash.

Rules: Be creative, comment and share your code, site your references and influences...give credit where credit is due. GalaxyGoo Employees and contract service providers are ineligible to win.

How to enter: Post in the GalaxyGoo forums, and upload a zipped file with your swf, fla and any supporting files. A readme.txt file is encouraged. If you're not already a registered member of the GalaxyGoo forums, registration will be necessary.

How to Win: Once all the entries are in, we'll set up a poll where all registered forum members can vote for their favorite entry. You choose the winners. In the event of a tie, a member of the GalaxyGoo board of directors will decide on the winning entry. Entries may be invited to participate in the GalaxyGoo Curiouser Blog Project.

Prizes: 1st prize is all three volumes of New Masters of Flash. 2nd prize is volume three of New Masters of Flash.

By entering this competition you agree to allow GalaxyGoo, a non-profit organization, the nonexclusive rights to use your work according to the GalaxyGoo author's agreement. With the agreement, you give GalaxyGoo permission to publish your work, but you retain rights to it.

MXEurope Cancelled

Just got word that MXEurope has been canceled. So, I won't be making the trip to London. There were a lot of folks I was looking forward to seeing. I'm rather disappointed, but these things happen.

November 05, 2004

Meetings in April

Looks like I'll be speaking at the April FlashForward Conference, here in San Francisco. This year, I want to be sure to meet up with as many folks in the education field as possible...maybe a short companion meeting? I'm currently investigating possibilities.

October 27, 2004

Learning OOP in Flash: trouble with recursive method

Looking for a debugging puzzle? I'm stumped. When I try to use this method (a Class' method) to recursively call itself, I get a NAN returned instead of a number. Not only does it return NAN, but it keeps running down the code instead of exiting.

code and sample trace output in extended entry

Continue reading "Learning OOP in Flash: trouble with recursive method" »

October 22, 2004

Help, when is a number a Number?

So, I'm debugging some code...and trying something I haven't used before. I've used my_array instanceof Array, and it works just fine. But when I try to use num instanceof Number, not so good. Does anyone know why this code gives me a "false":

var n:Number = 3;


var isnum = n instanceof Number;
trace("n a number " + isnum);

October 12, 2004

Don't end up with RavioliCode!

As a sort of warning towards people starting out with OOP and trying to turn every little tidbit of a possible object into a (sub)class, I would like to say this:

Don't end up with RavioliCode.

For those familiar with the well-known SpaghettiCode nightmare, RavioliCode is the exact opposite and can be an equally big nightmare. Too many (sub)classes are confusing and you'll end up looking for the right (sub)class more than anything else. Use common sense :)

Ofcourse, there's also LasagnaCode.

I don't know how Italian cuisine got pulled into coding, but if anybody else has any programming terms using some kind of cuisine, let us know! After all, not everybody is into pasta.

October 11, 2004

Learning OOP in Flash, part 2

After a lot of reading and thinking, I'm giving this another shot. I'm thinking out loud--trying to build a clear mental picture of object oriented programming in Flash and how it compares with traditional procedural programming.

With object oriented programming's classes and subclasses, there are really two things going on. Firstly, a subclass expands the code of its base class. Secondly, the subclass describes a more specialized object than its base class does.

Let's say we want our project to generate a random fraction. No problem. We just write a class that generates two random numbers and returns them in an array: one number for the numerator(top) and one for the denominator(bottom). Great, now we've got random fractions whenever we want them. But what if we get a fraction like 4/6? We may want to simplify that to 2/3.

If I were writing this procedurally, I'd write a subroutine to simplify the fraction and call it from within the routine for generating a random fraction. My routine would be dependent on the subroutine,and if I needed both simplified and "raw" fractions, I'd have to write two separate routines.

With OOP, I can write a general class, and call it from within a more specialized class. But I can also call it from anywhere. The general case is no longer dependent on the specific case. Pretty cool.

When the subclass (let's call it "simpleFraction") is called, it executes code from the base class as well as the subclass. I'd call that expansion of the class' code. From the object model, the object created from the subclass is a subset of objects that could be created from the base class. For example, a class that generates random fractions may return 4/6 and 2/3, but a subclass that simplifies those results would only return 2/3.

By the way, the comments on my first post on this topic have been very illuminating.

October 06, 2004

FlashGoddess at NASA

Jenny Mottar is working at NASA headquarters, developing touch screen interfaces and exhibit designs. From what I've seen of the screen shots, I'd really like to see more. Read her interview on FlashGoddess: Jenny Mottar Spotlight

Learning OOP in Flash

My quest for OOP nirvana continues. Today, I pulled out an old java book and read the chapter on OOP. It helped a lot, because it was written for an audience with experience in C. Synapses have been firing like crazy, and I'm starting to get more of a deep understanding of how class an subclass really work in OOP.

One statement that really rang bells for me was that using classes is "a way of giving user-defined types the same privileges as types that are built in to the language."

I have a long way to go, but I feel like I'm making progress.

I still have problems with the terminology of superclass and subclass. I found these definitions enlightening:

"class = a data type

extend = to make a new class that inherits the contents of an existing class.

superclass = a parent or "base" class. Superclass is a very poor choice of name as it wrongly suggests the parent class has more than the subclass.

subclass = a child class that inherits, or extends, a superclass"

~Peter van der Linden, just Java, 1997

October 04, 2004

That which we call a subclass, by any other name...

.. would make more sense.

ActionScript is not my first "programming language", and a lot about actionScript (and Flash in general) has confused me over the years. The whole subclass and superclass is a case in point.

It's the use of "sub" that I find distracting. "Sub" usually implies a smaller part of a bigger body. In my first programming classes, a subroutine was used to encapsulate the code of a larger routine. In most of what I've read on OOP in ActionScript, it seems almost as if "sub" is being used in a taxonomical sense, since most examples are fairly taxonomical. For example, there may be a class for "vehicle" and a subclass of "car", which extends the vehicle class. So, while car is a subset of all vehicles, is the car class really a subset of all vehicle classes?

I could be completely wrong on this, but I like to think of a superclass as a "base class" and subclass as an "expanded class".

For the sake of clarity, I've rewritten the tootsie roll example ;-)

Let's say that tootsie rolls are the base class. Add a hard candy shell and a stick, and we have an expanded class. Hmmm...I must be hungry.

Time for me to get something to eat, and think more about this later.

October 01, 2004

How Do You Test Your Code?

I've been working with Flash for a long time, and I've accrued some habits for testing and debugging as I develop in Flash. Yes, I like to work in the Flash IDE. I use trace a lot. But I also use a technique I started during my very early explorations with Flash: in project prototypes, I output to text fields on the stage during testing. I can visually lay out elements that I want to track with various user interactions that way. My teachers and professors drilled into me the impulse to constantly test my code. Write a line, test it.

Flash developers are a diverse and creative lot. How do you test and debug?

September 30, 2004

Flash Happy Hour Today

It's been about seven months since our last GalaxyGoo Flash Happy Hour. I've been a little busy lately ;-)

Join us for a GalaxyGoo Flash Happy Hour.

September 30, 2004 (Thursday)

  • Bliss Bar (on 24th street, between Noe and Castro streets in San Francisco)
  • 7:00pm

Note: I imagine many of you will be watching the debate tonight (6pm). Better late than never--we'll be happy to see you when you get there. I'd change the time of our gathering, but invitations went out before we realized when the debate was scheduled for.

September 21, 2004

Photos from book signing event

The book signing and benefit was a success! It was a lot of fun, and I got to meet some really cool people, like the folks from the Math/Science Network. Two of the most influential people in my education also came to the event. I had several courses with each of them, including Electron Microscopy, Assembly Language and Systems Programming.

Here are a few photos from the event.




September 13, 2004

Flash8 wishes? Abolish post-colon syntax!

Matt Voerman has posted his wish-list for Flash8: RocketBoots.

This has inspired me to write a quick note about something that has bothered me since the release of Flash MX 2004.

I'd like to see post-colon type syntax abolished from AS.

In my opinion, this statement

var type varName;

is a much better way to write a statement than the post-colon syntax way of

var varName:type;

To me going from most general to most specific is the more logical syntax, and less mentally jarring to read.

Imagine if we mixed up how addresses are written on postal mail.

Somebody Smith
123 Some St.
someTown, someState

might be rewritten something like

Somebody Smith
someState, Some St (123)

Yuck! Mixing up the order of specificity makes the brain sort through the convoluted structure for information, instead of making it easier to quickly find.

September 09, 2004

Book signing and Benefit for GalaxyGoo

Are you in the bay area? Time to celebrate the release of New Masters of Flash--GalaxyGoo style.

Please join us for a book signing and benefit for GalaxyGoo, with wine tasting and door prizes.

7pm Thursday, September 16
Cover to Cover Booksellers
1307 Castro St. (at 24th St)
San Francisco, CA

For more information:

September 07, 2004

Learning Flash--New Category

When you've been working with a medium for a long time, it's easy to forget that what you do automatically may not occur to a person just learning it for the first time. As part of her internship, Frances will be posting about what she's learning in Flash--under a new category (Learning Flash). I'm hoping that members of the Flash community will take this opportunity to share their knowledge in the comments of her posts, and that the archives will serve as a resource for all those learning flash.

August 27, 2004

Is the Flash Community Dead?

Is the Flash community dead? I don't think so, but it certainly is changing. Forums have slowed down, and many have the feel of a ghost town. We've all noticed the changes, and it's even been discussed on some forums. Where did everybody go? Have needs changed, and have forums failed to meet those needs?

Here are some possible reasons for the apparent slump in the Flash community:

1. Flash has gotten too serious--folks have forgotten to take time to have fun and experiment,

2. Time is tight--not much time left over for community or experimenting after work is done,

3. Fewer independents--less reaching out to other independents,

4. A lot of the communication is shifting to blogs.

A thriving community of developers is important for a thriving medium. What can we do to ease the growing pains of our community?

August 24, 2004

Sam's new blog

I meant to post this before I left for vacation, but never got around to it. So this may be a little stale as far as its news value, but I think it's worth checking out if you haven't already.

// pixelconsumption // --Sam Robbins--works with Keith Peters

I had the pleasure of meeting Sam at FlashForward in San Francisco, back in March, and I'm looking forward to seeing what Sam comes up with.

August 13, 2004

Flash Paper Stands Alone

Woohoo! Macromedia is releasing FlashPaper as a stand alone product! Until now, you could only get it bundled with Contribute. Macromedia - Edge : August 14, 2004

August 09, 2004

Seeking volunteer webcam guru in San Francisco

Plans are well underway for the book signing and benefit event. It's coming together nicely. We'll be having wine tasting and door prizes!

A few days ago Edwin and I were chatting online, and we came up with the idea of having a webcam broadcast for folks who can't make it to the event.

So...we need somebody to help with the webcam and moderate a chat room (if we get one set up). If you're in the San Francisco area, and this sounds like something you'd like to help us out with, send me a note at khenry at galaxygoo dot org or post a comment here.

August 05, 2004

What is Flash?

Today I was interviewed by my local paper, The Noe Valley Voice. At one point, the reporter asked me "what is Flash?" At first, I said it was hard to sum that up in just a few words. I thought for a moment and replied that Flash was a "powerful animating and programming tool".

It got me thinking again, about how we present ourselves outside of the Flash Community. With a lot of what I work on, explaining what Flash is, seems easier to explain that what I use it for :-)

I wonder what has happened with What Is Flash? Granted, I've been very busy lately and haven't kept up with many things, but I haven't seen any activity on that front in a long time.

July 28, 2004

C++ to AS2

Jim Armstrong is transitioning from Assembly Language and C++ to Actionscript 2, and he's blogging about it. He'll be discussing "mathematical, business decision analytics, and engineering problems in Flash using AS 2 as a programming language."

Keep your eye on his blog: 2112 F/X :: Singularity

--via moockblog


It's hard to believe that a full year has passed since we did the blogathon, and created Curiouser. We posted 48 Flash experiments over 24 hours (one every half hour). After it was all over, we were named "Best Visual Arts Project" for the year.

Are we going to do it again? Maybe next year, since the blogathon folks are taking a year off.

July 21, 2004

Semi-final round of Science Visualization Challenge!

Just now, I got word that we've made it to the semi-final round of the NSF Science and Engineering Visualization Challenge. A simpler version of our Neuromuscular Junction Simulation, is also the subject of my chapter in New Masters of Flash III.

June 30, 2004

New Masters of Flash coming in August

Friends of Ed really knows how to make a good looking book! New Masters of Flash: Volume 3 comes out in August, but the mini-site they've set up to promote the book is already up. Yep, that's yours truly :-) I'm not particularly photogenic, but I sometimes take a decent photo if I'm behind the camera. Check out the wallpaper; it's one of my jellyfish photos.

May 21, 2004

What is the context for a programming language?

What is the context for a programming language? Is it within the history of the language itself? Perhaps, it's actually within the context of all programming languages.

This became obvious to me a couple months ago, over drinks with a bunch of Flash developers. At one point we were talking about changes we liked and didn't like in ActionScript. One change that I wasn't happy with was that I'd heard "1" and "0" may no longer default to "true" and "false". While I was focused on the internal context of the change, Sas Jacobs brought up an excellent point: in many other languages the defaults are different. She uses "true" and "false" to avoid mistakes when switching back and forth between different languages.

May 03, 2004

NSF Science and Engineering Visualization Challenge

National Science Foundation and Science call for entries to the 2004 Science and Engineering Visualization Challenge

Categories include

  • Photos/still images

  • Illustrations

  • Explanatory Graphics

  • Interactive Media

  • Non-interactive Media

Entry Deadline: May 31, 2004

April 27, 2004

Tarbell Hatches Computational Creatures at Flash Forward

Jared Tarbell's presenting what looks like a really cool session at Flash Forward (New York): "Hatching Computational Creatures".

March 25, 2004

Jonathan Kaye offers free presentation with Breeze

If you're interested in building simulators with Flash, I encourage you to contact Jonathan about his Introduction to Programming Equipment Simulators in Flash (a Breeze Live presentation).

And if you don't already have a copy, check out his book: Flash MX for Interactive Simulation. It's one of the best Flash books in print, in my opinion.

Continue reading "Jonathan Kaye offers free presentation with Breeze" »

March 24, 2004

Presentation Notes Online

Presentatin Notes for FlashForward SF 2004: Visualizing Science With Flash

March 19, 2004

Pen and Paper

For me, pushing a pen around on paper, helps me organize my thoughts. Especially when I'm working with pseudo-code and straight out algorithm design. The action of writing things down by hand, has a way of making things clear that just doesn't happen for me on a monitor. Perhaps it's the directness of hand-eye interaction when writing.

How much time do you spend with a pen and paper? Do you use it for visual design or code design?

March 17, 2004

Terradotta MathML/Flash

Brandon Lee, of, has been working on a nice MathML wysiwyg in Flash. Take a look at what he's accomplished so far. Very impressive.

Be sure to scroll down the page to the demo version's link.

Update: Brandon is the manager for this project, not the coder. Sorry for any confusion.

March 15, 2004

Changing registration point of movie clip in MX04?

I've been working in FlashMX 2004, and just got stuck on something in the authoring environment. Where is that interface, for changing the location of the registration point of a movie clip?! A quick point in the right direction would be greatly appreciated.

March 08, 2004

Phidgets, Teleo, and Flash...Oh My!

Way back in December, Marcos Weskamp posted about his success with using Flash to communicate with Phidgets. After that post, I put Phidgets at the top of my very short Christmas wishlist. A set showed up under the tree for me.

Still haven't had time to do much with them, yet. Reviving my rusty visual basic skills keeps sitting at the bottom of my to-do list. If only wish lists and to-do lists could synch up a little better :-)

At last week's Flash Forward, the folks at Making Things showed off a similar product, but theirs has a Flash API ready to go. I asked if it was possible to use phidget hardware with their software: no luck. Still it looks like a lot of fun.

Apparently, some of the heavy hitters of the Flash Universe are indeed having fun with the Making Things product Teleo.

Flash MathML Resources

We're setting up an online Flash MathML Lab.

What kind of resources would you like to see there?

Back in the office after Flash Forward

Flash Forward was a whirlwind. I can hardly believe it has come and gone, and that I now face deadlines.

Lunch on Wednesday was great, with about 20 of us. It's lots of fun to get a bunch of Flash Developers together. The best part of the whole conference was meeting people, and running into folks that I'd met in the past.

My presentation went alright, although I rushed through it a bit. Very good questions were asked though, and I even managed to get a few laughs. Kymberlee was wonderful, and made sure that I had a stool for my session. There's a picture of me giving my presentation on Vera's site.

It was a little odd to have my Question and Answer session first thing the next morning, but I had fun with it.
Look for a link to my presentation notes soon.

February 20, 2004

Speaking at MX Europe

It's official! I'm speaking at MXEurope, in September.

GalaxyGoo doesn't exactly have a travel budget, but I'm confident everything will work out great.

February 18, 2004

Two Weeks 'Till Flash Forward

Are you going to this year's Flash Forward conference? I'll be talking about visualizing science with flash, at 4pm on Thursday (room 223). My Q&A session is 9am, the next day.

There's so much to talk about. It was very hard to keep it to a one hour presentation. I'll focus on projects that use XML in some form, with either a custom data structure or an established XML application. If there's time, I'll also touch on webMathematica and mathML. It'll be fun, really! :-)

February 10, 2004

Gearing Up for Math Awareness Month

We're getting ready for Math Awareness Month.

We're hosting a friendly challenge to flash developers: let's see what you can create when you combine Math and Flash. If you'd like to participate, donate a prize, or just share some ideas, join us on the forums:

GalaxyGoo Working Forums - Math Awareness Month

Or send a note to me at blogging at galaxygoo dot org.

February 02, 2004

Pushing the Envelope: Saving text to Disk from Flash

Sometimes I just love blogs! A few days ago, I made one of those "thinking out loud" posts. The resulting comments were much more interesting than my original post. And Gregg Wygonik posted a method for saving a text file to disk from Flash (using Internet Explorer), on his blog. Yeah Gregg!!

The method works for Internet Exlporer. If you're the glass-is-half-empty type, you may be saying, "but this only works with IE!" True, but it's a good step. Flash has proven itself to be a fantastic solution for user interface of complex internet applications, now it needs some additional functionality. Folks want to save the results they've produced, without having to use a database or other server-side tools.

A mini-rant here: how will the browser and authoring tool makers know what we need if we don't show them? Internet technology improved incredibly when developers (professional and amateur) were constantly pushing the limits on what could be done with available tools. Let's keep pushing.

Stuck in Static When Dynamic is Right There?

Lately, a lot of my time is spent researching funding sources. This includes looking at what other folks are getting money for. Often, I'm completely surprised by projects that seem similar to GalaxyGoo projects, but take a completely different technological approach.

If you scroll down this page, to A Key to the Fishes, you'll find a project to develop a "web-based, dichotomous key". This looked pretty exciting to me, until I noticed that the project involved "building the long series of individual pages required for the key."

Why build individual pages? So much busy-work! A simple database would do the job much more cleanly, and leave the Biology expert focused on subject matter instead of page-making.

If they wanted something technical to spend grant money on, why not request a collaboration with GalaxyGoo?! After all, we've already built the engine to step the user through a dichotomous key.

The funny thing is that I've been searching for an academic to collaborate with, for exactly such an application of our experimental version of an interactive dichotomous key.

This example points out to me that GalaxyGoo could use some help connecting with project collaborations.

January 30, 2004

Basic Graphing

For some reason, I can't log into Were-Here today. So, I'm replying to a question here.

I've seen this come up before, and while the answer is simple, it can trip people up...especially if they haven't done a lot of graphing in Math or Science.

Let's say we want to draw a curve, based on an equation. How do we get the x,y values to draw the curve with?

We evaluate the function at certain values of x.

You may see the equation presented in this format: f(x) = 2x - y

To graph this equation, we'll need to rewrite it so that one side has y, all by itself:

y = 2x

Now we decide on a range of values for x, and solve for y at each point:

y=2(1) = 2

giving us the (x,y) coordinate of (1,2)

y=2(2) = 4

giving us the (x,y) coordinate of (2,4)

y=2(3) = 6

giving us the (x,y) coordinate of (3,6)

and so on, until we have all the points we want.

Then we plot these points on a graph, connect the dots, and we're done.

January 29, 2004

Thoughts on saving a bitmap to disk from Flash

This thread, over at Flash Goddess, got me thinking about some of the inner workings of Flash. Funny, but I hadn't really thought about how Flash manages to send data to a printer, but can't save that same data to the system. I guess that from a security standpoint, sending data down the bus to the printer is much like sending it to a web server, and leaves the user's system safe and sound. So, that's got me thinking of the internet as a peripheral device to my system, just like my printer.

Back to the practical, perhaps with Central the whole save to disk issue will give Flash an all new range of uses and position it as a powerful tool for creating applications. hmmm...

January 27, 2004

Graphing Software Thread

This interesting thread, on producing "graphs of high visual quality", showed up in our referrer logs. Toward the end of the thread, Flash is mentioned.

Edward Tufte: Ask E.T. forum

January 20, 2004

Color-Challenged in Flash: part 2

There's been some talk about about color-challenged design issues, in blogs recently. This has inspired me to dig out my explorations with flash and how colors may be perceived with some types of vision.

Color can be a powerful tool for communicating and visually organizing complex data and illustrations. It can be especially useful to highlight a small portion of a larger image. But if these colors are difficult for some users to distinguish, the effectiveness of the tool is lost.

So, I've been toying around with adding custom color choices to Flash projects. I began tackling our HIV animation, because it uses green as a significant color. But this is a big bite to chew, so I'm starting a little smaller. Here's a simple simulation with custom color options. I didn't put a lot of thought into the custom colors--just picked some colors from the translated color-chart for each vision type, that seemed to have at least a little contrast.

If the developer has kept color definitions encapsulated, it should be easy to "redefine" the colors and offer a user interface to select a palate for their vision type. Older, frame-by-frame animations can take some time to go through and set up for easy color definitions with code. There's got to be an easier way to do it, but I haven't gotten there yet.

It would be nice if there was an easy way to pull the hand-set color definitions out of a file, and add new definitions with code. Maybe an extensibility project?

GalaxyGoo Flash Happy Hour

Want to know more about GalaxyGoo? Itching to geek-speak with fellow Flash developers and designers? Are you a science or math teacher?

Our next GalaxyGoo Flash Happy Hour is scheduled for next Monday!

Jan 26, 2004 (Monday)

If you're in San Franciso, join us:

  • Bliss Bar (on 24th street, between Noe and Castro)
  • 6:00pm

If you'd like an email reminder, send a note to bloggingatgalaxygoodotorg

January 15, 2004

Math Awareness Month: April 2004

The Mathematics of Networks (It's a Small World)

That's the theme for this year's Mathematics Awareness Month, coordinated by the Society for Industrial and Applied Mathematics.

Sounds perfect for Flash! We had a great time last year, so let's do it again. More info will follow as we firm up the plans.

Would your company like to donate a prize? Do you have an idea on how to make this challenge more fun? Send us an note, with contact information, to challenge at galaxygoo dot org.

By the way, as of the time of this post, the MAM website hasn't been updated yet.

December 30, 2003

Printing From Action Window

I've got a question: Is it possible to keep the Flash authoring environment from overwriting my custom color settings when printing out code from the actions window?

December 29, 2003

Conclusion of the Flash 7 Cross-Domain Policy Saga?

When Macromedia released version 7 of its Flash player, many developers were justifiably upset with the sudden change in the security of the sandbox. It's not that we didn't want things tightened fact many of us embraced the increased security. The problem was that the changes broke our existing applications and we were left without a method to repair them.

If your application served through a port other than port 80, you were out of luck. Yes, there was the cross-domain policy file you could upload to your server. However, if your application served data through..say port 8080...the player would not find it. The player would only look on port 80.

Now, at last, there is a solution. Macromedia has added to the ActionScript API:; With this, you can tell the player, from within your application, where to look for the policy file ("crossdomain.xml").

There are two drawbacks to this, however:

  1. Code must be added to the source file of the application, and a new swf must be compiled and uploaded to the server.

  2. The solution works only for the Flash Player version 7,0,19,0, and later. All earlier subversions of the Flash Player 7, will still pop up a security warning message to end users.

For more information, including how to resolve the policy file issue for XMLSocket servers, see Deneb Meketa's article on the Macromedia website.

Macromedia Flash Player Download Center

File size:476 K
Download Time Estimate:1 minute @ 56K modem
Browser:Internet Explorer and AOL
Date Posted:12/16/2003

December 28, 2003

Edwin's Flash MathML Reader

Edwin's posted a link to the MathML reader he's working on. Notice that he's got an example with a complex fraction! That's something I've been having trouble with.

GalaxyGoo Working Forums - Small example of MathML reader

December 18, 2003

Visualizing Science with Flash at FlashForward

WooHoo! There it is! On the FlashForward website--a description of the presentation I'll be giving at the next FlashForward. Currently, mine's the second one listed: "Visualizing Science with Flash".

Yep, I'm pretty excited. I love this topic, and I can't wait to talk about it.

[Flashforward2004.Com >> Keynote & Seminar Descriptions]

December 17, 2003

Caught in the Net

It's finally happened...I got email bounced back from a spam filter.

JD, if you see this post, please consider it your personal invitation to our Happy Hour this Friday. Also, I'm still having problems with the Flash player not finding the policy file for an application served through port 8080.

Flash Happy Hour this Friday

This Friday, we'll get together for another GalaxyGoo Flash Happy Hour.

If you're in San Franciso, join us:

  • Bliss Bar (on 24th street, between Noe and Castro)
  • Friday, December 19th
  • 5:30pm

I'll be getting there around 5:30. If 6:30 is a better time, come when you can.

December 16, 2003

Flash Image Viewer

This project is over a year old, but recently I've been getting a lot of requests for source code. It's messy, but should give you some ideas.

GalaxyGoo Working Forums - Image Viewer

It was originally intended to show how easy it is to create a visual browsing tool for images from NASA. A tool that annotates those images with reference to source and other info.

December 09, 2003

Flash Happy Hour, December 19th

It's time for another happy hour!

If you're in San Franciso, join us:

  • Bliss Bar (on 24th street, between Noe and Castro)
  • Friday, December 19th
  • 5:30pm

December 08, 2003

Invisible Women

John Dowdell extends Doug Bowman's question of "Who/Where are the Women" in web standards. Why are women almost invisible in the flash community?

Sites like FlashGoddess show that there are indeed women Flash developers and designers. So, why do the boys ignore us?

A number of comments to Doug's post mention that women may not wish to "out" themselves, but let their work stand for itself. Rings true to me.

November 29, 2003

Keith Peters Blogs

Keith Peters just started his own blog: BIT-101 Blog.

Welcome to the blogosphere, Keith!

November 25, 2003

Interview on

Recently, Vera Fleischer interviewed me for I think it turned out well. Perhaps I'm being a bit shy, but Vera's introduction is extremely flattering to me. Seems like I have a lot to live up to now :-)

Back to my box of tissues and tea, now...

November 19, 2003

Cold slowing me down

Last week, in the Central Dev Chat, I promised to put up some code for an old project. I meant to get it online by now, but I've come down with a rather unpleasant cold and it's going to have to wait until next week. Hopefully, I'll be better by then.

November 12, 2003

Problem sending query string with loadVars in Central

Recently, I've been modifying our word search game for Central.

The first step was to get rid of all the _root syntax, from when the application was first written in Falsh5. This is an important step for modifying an existing application, since _root would refer to the Central environment, instead of the root of the application.

Next step, was testing in the Central environment. For that, I'd need a product ID, which goes in the product.xml file. Uploaded the application and product.xml to my server, along with that handy installer. Ready to test!

Everything looked good, except that the data needed to generate the grid of letters wasn't coming through. It seems that there is a problem with sending a query string with loadVars, from within Central.

For example, this fails to return the desired results from within Central:

myLoadVars = new loadVars();

myLoadVars.load("" + localVar);

The same swf works fine, outside of Central.

I'm still investigating what the problem could be, and asking lots of questions.

Patent office re-evaluating Eolas patent

What great news to start the day with!

The potential impact of the Eolas patent, the lawsuit with Microsoft, and the impending changes to IE and thus the internet as a whole... it all had me worried. It would be expensive for commercial applications to adapt, but a large portion of educational projects would have been effectively erased from the web.

But there is a glimmer of sanity on the horizon...the US Patent and Trademark Office is re-examining Eloas's patent. What makes me hopeful is the swift action the office took: a mere seven days!

The patent has not yet been revoked, but now it's at least possible.

For more information, read Dale Dougherty's article on the O'Reilly Dev Weblogs.

~Via JD on MX

November 10, 2003

Flash Fractal Landscape Challenge Deadline Approaches

This is the last week of the GalaxyGoo Flash Callenge: Fractal Lanscapes. Deadline for posting your final entry is this Friday, November 14th.

November 04, 2003

3D classes for AS2.0

Nice resource:
Creating 3D Classes with ActionScript 2.0

October 29, 2003

Three Chears For The W3C

Just when I was worried the battle was really lost, the cavalry rides to the rescue.

World Wide Web Consortium Presents the US Patent Office with Evidence Invalidating Eolas Patent

Could this be an end to the madness? Let's hope so.

--via LordAlex

October 28, 2003

AS2 Particle Class from Bit-101

Keith Peters dazzles again with the bit-101 Particle class

Check out the examples. Source code and documentation all right there, in AS2, for your benefit.

October 27, 2003

Flash Happy Hour Today

It's time for another happy hour! Today!

If you're in San Franciso, and want to talk about Flash, join us:

  • Bliss Bar (on 24th street, between Noe and Castro)
  • Today (Monday, October 27th)
  • 6pm

October 25, 2003

I'm an actionScript Hero!

Just got a cool email:

"We are very pleased to announce that you have been selected as [an] actionScript Super Hero"

Hall of Justhese Flash Aggregator

October 23, 2003

Happy MovableType/Flash Discovery

In Movable Type, I've set up a blog for project announcements, with each project as a category and it's own feed. The feeds are listed in an XML file, and pulled dynamically into Vera's Flash blog reader. So, when we go the a project page, we see the blog for that project, as well as other dynamics for that project.

Now, the happy discovery happened when I tried something on a whim...with happy results.

I wanted to put the same message on all the category feeds, but didn't want to make 20 posts. So, I added all the categories as secondary in Movable Type...and Voila! We have an instant broadcast system in our project blogs.

October 20, 2003

Eolas Case Should Be A Mistrial?

This whole Eolas vs Microsoft case has had me on edge, all along. At GalaxyGoo, we use Flash extensively. But this case doesn't affect just Flash, all plugins are affected!

Recently, my, don't flame me for taking a different perspective...have been with Eolas. It seems to me, that Microsoft actually benefits by eliminating third party software from their version of the internet.

However, it looks like there's more than one rat on this ship.

According to this page, Michael Doyle knew about a browser called Viola and that it used embedded objects, and failed to mention this when filing for a patent. Additionally, the developer of Viola was not allowed to reveal this information during the Eolas/Microsoft court case.

~link, via comment on

October 16, 2003

Thank you gift, for donors.

As a modest thank you gift, for donations over $25 (US), we're sending out CD's with all of the award winning GalaxyGoo Blogathon 2003 project experiments.

Because GalaxyGoo is a 501(c)(3), non-profit organization, your donation may be tax deductible (minus $5 for materials and shipping).

October 15, 2003

Chair-ity for Children

Getting your hands dirty with glue and paint is good. Especially if you spend most of your creative energy through a keyboard. So, when a local charity announced that they were asking artists to decorate children's chairs for a fundraising auction, I couldn't resist. In fact I asked for two chairs, instead of just one.

The day they arrived (in a flat box), ideas ran through my head. I've always loved Japanese printed rice paper (washi), so I decided to make washi chairs. With many different patterns and colors to choose from, I covered each part of the chairs in a different one. The whole process took about a two months of evenings. It was very relaxing, very Zen, and I think they turned out nicely.

If you're going to be in San Francisco this Saturday, come see my chairs, and those of over 55 other artists, at the art show and silent auction. Saturday, October 18th, 2003 6:00 - 10:00 p.m.
At LIMN Gallery (292 Townsend Street). Tickets for the show are $25.

Their website says "more than 50 children's chairs", but the last I count I got was over 80. I can't wait to see how they "hang" this art show!

Chair-ity for Children 2003

The canvases for their last benefit art show were plaster casts of pregnant bellies. There's a flash slide show of some of the works. "The Lioness" and "go fish" are wonderful!

September 30, 2003

Space, Colors, and Flash

Do you ever come across sites that make you ache to upgrade them in Flash? I'd love to do this one, and expand it.

HubbleSite - Meaning of Color

September 24, 2003

Fractal Landscapes Flash Challenge Begins

For this challenge, we're trying something different. To encourage collaboration, while maintaining an element of competition, the challenge in the forums will be a qualifying round for participation in the GalaxyGoo Curiouser Blog and inclusion in the Contributing Authors list for the GalaxyGoo website.

Theme: Fractal Landscapes!

Goal: To share ideas and explore artistic and scientific expressions in the medium of Flash.

Rules: Be creative, comment and share your code, site your references and influences...give credit where credit is due. GalaxyGoo Employees and contract service providers are ineligible to win.

How to enter:
Post in the GalaxyGoo forums, and upload a zipped file with your swf, fla and any supporting files. A readme.txt file is encouraged. If you're not already a registered member, registration will be necessary.

first draft: by October 17

second draft: by October 31

Final draft: by November 14

September 22, 2003

Applet or Flashlet?

Back in April, I asked Which tree does the Applet fall from?. With AS2 so similar to Java, I'm even more inclined to call my work "Flash Applets" rather than "Flashlets" or RIA's. It's still jargon, but it's more descriptive jargon ;-)

September 18, 2003

Help! problems with cross-domain policy file

What's a cross-domain policy file? It's a simple XML file that lists the domains you want to accept data from, when importing that data into a Flash application at run time. In most cases, you'll only need one on the server where your flash file is located. If the data is passed through a specific port, like a socket server, you also need a cross-domain policy file on the second domain.

Personally, I think it's a good thing that F7's domain comparison has been tightened up a bit. It certainly opens up some possibilities for managing web services for flash clients. However, it would be nice if there was more help on how to deal with it. Currently, the flash7 player displays a warning message when visitors use our Interactive Periodic Table of Elements. The application calls for data from a webMathematica server on the sub-domain, through port 8080. I uploaded cross-domain policy files on both servers, but the flash player doesn't seem to be finding the one on the math server.

Is anyone else having problems with the cross-domain policy files needed by the Flash7 player? How are you dealing with it?

For more information: Moock, Macromedia

September 15, 2003

Upcoming Flash Extensibility Book

Keith Peters and Todd Yard have teamed up for an upcoming Friends of ED book on Flash MX 2004 extensibility. Looking through this site, which is still in development, I can hardly wait for the book to come out.


Curious Blogging

You may have seen mention of a Curiouser blog around here. Well, it's now official. The blog we used for the Blogathon will host future "events" and flash experiment galleries.

While still in the planning stages, the next Curiouser event will focus on fractal landscapes.

What happened to the "Blogathon 2003" blog? We just changed it's name to "Curiouser", and created a category for the blogathon.

September 10, 2003

Flash Doesn't Like my Computer

At last, the new version of Flash was mine...or so I thought.

Download went fine. Unzipped like a dream. But then, I tried to install, and a pesky warning message ruined my day with the words "Macromedia Flash MX 2004 is not supported on this operating system..."

So I looked up the system requirements on Macromedia's website, and my operating system was supposed to be supported. What was going on?

I reviewed the system requirements more carefully, and noticed that a Pentium3 is required. It wasn't my operating system, it was my processor that Macromedia didn't like.

Now what? Well, I can install on my laptop, but that will be a big hassle. I could get a new desktop, but I don't have the funds for it right now and I like my good old machine. I guess I'll have to go with the laptop :(

September 09, 2003

Blogathon Awards Announced

The results are finally in, for the Blogathon Awards, and in the category for Best Visual Project, the winner is...GalaxyGoo!

"Flash experiments made the winner of the Best Visual Arts blog, Galaxy Goo, highly entertaining to follow. The project had pizzazz, and caught the eyes of bloggers and judges alike. Congrats to everyone at the site, and thanks for making sparkly things." ~Cat Connor

September 08, 2003

Next Flash Challenge: Fractal Landscapes

A few weeks ago, folks here were talking about the next GalaxyGoo Flash Challenge. It looks like we're going with fractal landscapes. The theme is fairly open, so landscapes based on math in general, are also welcome.

Before we begin the challenge, there are a couple things that we need to discuss as a community:

1. When to start? Now, or after there's been time to get used to Flash7?

2. Prizes are nice, but they don't encourage collaboration. Perhaps we could run a "qualifying" round, where participants work together, and have the main event be more like the blogathon project we did in July (but with a sane schedule)--where we each post our entries, on the same day, on GalaxyGoo's "curiouser" blog.

If you're interested in participating, please post your thoughts in the comments here, in our forums, or send me an note at "challenge" at our domain.

September 05, 2003

AS2 Resources

Eagerly waiting to get my hands on Flash MX 2004, I've collected a few excellent resources about AS2:

Ignorance is the root of fear. As I gain more knowledge about the next incarnation of Flash, my worries and fears slip away.

I'll add more as I find them.

August 28, 2003

Flash MX 2004--and supporting GalaxyGoo

If you're planning to order the next version of Flash, and you'd like to support GalaxyGoo at the same time, please use this link when you make your purchase.

Much Thanks!

August 20, 2003

FlashKit Paneling

I'm taking some time off from my vacation this week, to participate in a panel discussion at the Flash Kit Conference: "Aesthetics vs. Functionality: Where Should The Two Meet?"

If you're attending the conference, be sure to say "hi".

August 08, 2003

Nominee for Best Visual Arts Project

WooHoo! The GalaxyGoo Blogathon project is one of three nominees for the "Best Visual Arts Project" for the Blogathon 2003

July 28, 2003

Final Days of Jellyfish

Only one week left, to get your entries in for the GalaxyGoo Summer Flash Challenge. This time around, the theme is "jellyfish".

If you're shy about posting in the forum, you can send your entry to challengeATgalaxygooDOTorg.

You must be 18 or over to enter.

July 27, 2003

We Did It!!!

We did it! We survived the blogathon, GalaxyGoo style!

what we did:

For 24 hours, every 30 minutes, we posted a different Flash experiment (with source code), on a special GalaxyGoo blog for the event.

why we did it:

As part of the Blogathon 2003 event, as a fundraiser for GalaxyGoo (a non-profit organization), and for the fun of the challenge.

what now:

There's still time to pledge your support, and make a donation through the blogathon.


Special thanks got to my fellow bloggers (Edwin Heijmen, Richard Wright, and Mike Johnson) and to our donors.

July 25, 2003

Blogathon is Tomorrow

The big day is tomorrow!

GalaxyGoo Blogathon 2003

The first post goes live at 6am (Pacific) Saturday morning, and will be followed every 30 minutes for 24 hours. I'll be taking the main shift, and Edwin's taking over at midnight.

We're scrambling to get all 48 experiments together. Will we make it? Want to help us make it? If you've got flash experiments you'd like to contribute, send me a note(bloggingATgalaxygooDOTorg).

Each experiment will be posted with downloadable source code. So, if you build on one of the experiments, we'd love to see it. Post a link to your version in the comments for that experiment.

July 22, 2003

OOP vs onEnterFrame

First I must confess my bias: while OOP has its strengths, I often prefer a procedural approach.

For the past few days, I've been going through old experiments, and have found that I just don't like rigid OOP design, especially when it comes to programmatic animation.

Simple things like using a single onEnterFrame, and looping through all instances of a clip each frame instead of a separate onEnterFrame for each clip (as part of an object), can greatly improve performance. This is where I find OOP to keep oop structure but only use one onEnterFrame?

I'm toying with a hybrid, and I'm curious what others are doing.

Even if there are improvements in the next player's performance, optimization is still important.

July 18, 2003

Blogathon, July 26th 2003

We're in this year's Blogathon! A special GalaxyGoo blog has been set up, which will also serve as an archive.

What will we be blogging? Experimental Flash! Every 30 minutes, we'll post a different experiment or variation.

This is a fundraiser, so be sure to sponsor GalaxyGoo in the 2003 Blogathon!

Blogathon for GalaxyGoo?

It's been suggested that we participate in the Blogathon 2003 as a fundraiser for GalaxyGoo...we actually are a 501( c)(3) non-profit organization. Seems almost poetic, for an organization that experiments with web technologies to blog and benefit from something like a blogathon.

Before I commit to 24 hours of non-stop blogging, I need some post your thoughts in the comments.

We're going for it!

If you'd like to contribute some experimental flash to the effort, send me an email. If you'd like to contribute cash to the effort, stay tuned for a link to the blogathon site.

July 17, 2003

GalaxyGoo is now a Macromedia Affiliate

We just got approved for the macromedia affiliate program. If you purchase a product, through this link, GalaxyGoo benefits. Cool beans!

July 14, 2003

Flash Conferences

Just as they've pushed the limits of Flash as a tool, developers are pushing the limits of what makes a Flash conference.

Mario Klingemann's posted his ideas about a Flasholympics, and Jeremy
posted a link in the comments to what looks like a very interesting conference: Flash Evolution 2004.

July 03, 2003

Flashy Daydreams

Is it too early to start daydreaming about what the next version of Flash will be like? Will I have to learn how to use Flash all over again?

Rather than worry, I'm daydreaming about new features. Here's a few:

-mouse wheel detection and support
-easy stylus/versus mouse detection
-collapsible code and comments in the actionscript editor
-component architecture: streamlined- and more user-friendly (no more deeply nested folders)

June 30, 2003

Colorblind web page filter

Enter the address of a web page, and this Colorblind Web Page Filter will simulate what it may look like to a person with color challenged vision.

Currently, it doesn't process Flash files. I'm curious what would be involved in offering the same service for Flash, including Flash files embedded within an HTML document.

June 29, 2003

Jellyfish Extended

Since it's summer, and lots of folks are on vacation, we've extended the Jellyfish Flash Challenge deadline to August 4th.

June Jellyfish! GalaxyGoo Flash Challenge

June 25, 2003

Web Content Accessibility Guidelines 2.0 Working Draft

The W3C has published it's working draft for Web Content Accessibility Guidelines 2.0.

After a quick glance, I can't help but think that with Flash breaking out of the browser, we should pay close attention to guidlines on functionality: keep it operable through a keyboard or a keyboard interface.

--Via :: CFOOP :: Object Oriented ColdFusion)

June 23, 2003

Color-Challenged in Flash: a simulation with red and green

A little searching around led me to this great lookup table of how the browser safe palette may be perceived with different types of vision

Here's a quick exploration of how this might be modeled in flash:

7 jelly flash days remain

Seven days left to enter the June Flash Challenge: Jellyfish!


June 13, 2003

Accessible color in flash

While researching for a presentation on communicating science and math online, I started thinking about color and accessibility. Science and math are highly visual and color is an essential part of scientific communication. Something as simple as a liquid changing color, indicates that a chemical reaction has run it's course. In science illustration, color is used to highlight aspects in a complex diagram or to indicate difference between two very similar structures.

But when designing to accommodate an audience that includes people with some degree of color-blindness, the use of color gets a little complicated. I've been toying with the idea of an accessibility "style sheet" for color in Flash--to use dynamic definitions of color for all elements in a swf file. It's good practice to define your colors dynamically, but a little extra effort could greatly increase usability of color.

Some pseudo code:

// create object to hold color values
colorStyles = new Object();
colorStyles.blue1 = 0x0000FF;
colorStyles.red1 = 0xFF0000;
colorStyles.green1 = 0x00FF00;

//assign color to an element in the animation:
ball.color = colorStyles.blue1;

If the end-user has red-green color blindness, then they could use an alternate color style that would highlight elements with color, in a meaningful way. An alternate color-style could be used to redefine all colors defined in the original color-style.

This is fine, in theory, but how would we implement the color style with user control? Is anyone out there working on this?

June 12, 2003

Flash and Java: Silver and Gold?

"Make new friends, but keep the old..."

It's time for me to get out the oil can, turn long neglected mental gears, and start working with Java again. Keeping Flash for the client and refocusing on Java...on the server.

While Macromedia's description of "Royale" is cryptic, perhaps it hints at server-side generation of swf files. They've already got an engine that converts power-point presentation into swf (Breeze). The mind can race through possibilities. My first thought is servlets that dynamically generate flash files for simulations..perhaps even for biochemistry or metabolism models.

Who knows when we'll see the code name "Royale" replaced by a product name? In the mean time, check out the Macromedia - Royale Initiative.

June 11, 2003

June Jellyfish! GalaxyGoo Flash Challenge

It's time for another friendly competition. June's Flash challenge theme is Jellyfish!


This time around the prizes are The Self-Made Tapestry: Pattern Formation in Nature, by Phillip Ball; and Art Forms in Nature: The Prints of Ernst Haeckel (yep, I really like this book, and I want to share it with as many folks as I can).

Deadline to upload your entry is June 30th, 2003.

--Original post date: 2003-06-02

June 04, 2003

Breeze: powerpoint to flash and more

I've been curious about Macromedia's Breeze, but haven't had the time to investigate it. This morning, I had the pleasure of visiting the mother ship for a "Breeze Briefing", and now have a better understanding of what it is and what it does. Basically, it's a plug-in for Power Point that preps the presentation for an engine on the server that converts the file to Flash. It also has content and learning management features.

What about the technical side? Once on the server, the power point content is extracted and converted into an XML based swf file. The meat of the application is server-side. For the author, it turns power point into a Flash authoring environment.

The academic discount is pretty good, and I can see this being very useful to schools and universities. When MathML/Flash tools become well developed, they'd make Breeze a great tool for communicating science and math topics. Especially since any flash file can be embedded in the power point slides.

May 30, 2003

Flash Country Club

If I make this post, I may never be on a beta team at Macromedia, or speak at FlashForward, and will be blackballed from the Flash "Community". True? Well, we're about to find out.

I just found this in my inbox, and can't resist posting about it:

"Branden Hall has started a Flash community website that charges its members
$25 a month. ... Bad, bad, bad. I'm getting more and more disillusioned with the
"community." Your thoughts?"

My first thoughts are:

1. The flash community, though young, has a tradition of freely sharing knowledge.

2. It seems to me that the term "community" has been high jacked. This sounds more like a club to me.

3. The "free" content they offer, looks mostly entry level. Targeting corporate in-house workers, and calling it a "community" for branding and marketing?

Updated (June 10, 2003), additional text follows:

Another question comes to mind...

4. What is the editorial process? Most subscription based information sources have a clearly defined editorial process and staff.

May 23, 2003

Examples of Experimental Flash

For the folks at last night's presentation, I should have my notes ready to post later today. In the mean time, here are the links I promised:



April 29, 2003

Last Chance at April Challenge

One more day to get your entries in, for the GalaxyGoo April Flash Math Callenge

April 14, 2003

Friendly Flash Challenge for Math Awareness Month

April is Math Awareness Month, and this year the theme is math and art. Looks like a great challenge for Flash developers! So we're holding an informal competition.

What are the prizes? Books!

Continue reading "Friendly Flash Challenge for Math Awareness Month" »

April 02, 2003

Web services and Flash

I have been playing with web services in Flash. I really wanted to make use of one that is related to science or math, so that it would be right up GalaxyGoo's alley. I found a periodic table one that accepts as input the name of the atom and returns its atomic number, atomic weight or element symbol. But I couldn't get it to work with Flash. Then I found one called Orbitarium, which returns the geocentric positions of each planet at any point in time. But I couldn't get this one to work in Flash either. I finally settled on a temperature conversion web service. For more information, the .fla and a screenshot, go here. I am going to continue to look for more exciting and useful web services. Perhaps GalaxyGoo will eventually host a really neat application on the upgraded ColdFusion MX server.

Which tree does the Applet fall from?

When I saw James Bennett's curve fitting demo, my first thought was "cool!" My next thought was "but Applets are Java, not Flash!"

But, is the term "Applet" trademarked? And when you think about it, doesn't "Applet" seem more a more descriptive label than "RIA"? So, why not call them Flash Applets?

(update::::Vera started a thread at on this subject.)

April 01, 2003

Notes on FlashForward 2003, San Francisco

My impressions from the FlashForward conference, in a nutshell: things are changing. Both the presentations and the attendees of the FlashForward conference have changed. Less showing off, and more big picture framing. I took a lot of notes, over three days. Here are a few points that I think may play together well.

Continue reading "Notes on FlashForward 2003, San Francisco" »

March 31, 2003

ISBN flash applet

Do you like the flash app we've got for dynamically linking to a book affiliate program? You're in luck, it's available as-is under an academic open source license. You can download the zipped files in our forums.

March 28, 2003

Flash 6 player for Pocket PC

It's official! At long last there is a flash6 player for a hand-held device. This one's for the pocket PC 2002. You can download the Macromedia - Flash Player for Pocket PC here.

Are you feeling happy and generous? Do you need a deduction on your taxes? Are you interested in science? Then donate a Pocket PC to galaxygoo, so that we can experiment with developing applications for it. Applications like an Interactive Dichotomous Key Reader, for field data collection.

March 25, 2003


What are the lunch spots near the FlashForward conference in San Francisco? Off the top of my head, I can think of Max's and Chevy's. Max's is a local tradition with deli food, and...well, you know about the other one.

Another possibility...the New Asian Art museum is rumored to have tasty treats, and outdoor seating.

If you take the last table, be sure to save a space for me and Vera ;-)

March 24, 2003

Ming to MathML?

Peter Liscovius emailed me with an interesting idea: use Ming to generate a swf with mathML.

"Ming is opensource (LGPL) and is written in C, but can be used by many programming languages (c itself, c++, php, perl, pyton, ruby, java)

I'm using it with Perl. So using one of the XML-modules of Perl and Ming, it should be fun to write a nice math2SWF-converter."

March 19, 2003


Are you going to FlashForward? If you see "galaxygoo" on a badge, it might be me. :)

March 11, 2003

ActionScript Optimization Tips

Here's an interesting thread on optimizing Flash actionscript, over on Keith Peters' Bit-101 forums. BIT-101 :: View topic - optimization tips

March 07, 2003


Scott Mebberson of has written a great app that combines Flash and blogging: FlashBlog. It even uses templates. I had been thinking for a while about how one would integrate templates in a Flash-based blog. Scott has found a great way of doing that by loading a separate template .swf with design elements that are then scaled and positioned to fit the text.

The development of this app is described in great detail in Friends of Ed's Foundation Flash MX Applications. It really inspires me to take blogging with Flash to the next level.

March 06, 2003

Wordsearch Game Version 2

Today, I uploaded the new version of our old wordsearch game. What's different?

From the user's perspective:

  • menu of vocabulary themes, now scrolls

  • letters change color when mouse rolls over them

From the developer's perspective:

  • takes advantage of some flashMX features, like loadVars for data handling, and remote attachment of code to movie clips and buttons.

  • centralized code

  • all in one frame

While I was at it, I changed the color scheme and background a little, too.

March 04, 2003

Flash Trace Alert Box component

Do you work with Flash and serverside ? Vera's traceAlert component could come in very handing during development.

"...whenever I am working on server side stuff that is best tested in the browser, the TraceAlert component comes in very handy. After you install the component, you can use traceAlert() instead of trace(), and the output will show up in the component instead of the regular trace window, so you can see the output even in the browser."

February 27, 2003

Flash Node Gardens

Keith Peters, of Bit-101, has a new flash tutorial out. This one is based on Jared Tarbell's Node Gardens.

February 24, 2003

wordsearch games abound

I've been working on an upgrade of our wordsearch game, in FlashMX. The "you win" feature is still buggy, but the coding is almost done. Take a sneak peak, and let me know what you think.

Edwin just got a copy of Jobe Makar's Macromedia Flash MX Game Design Demystified, and he tells me there's a wordsearch game in it. Very cool! I can't wait to see how he approaches it.

February 09, 2003

Essential Resources for Flash ActionScript

Here's a short list of essential resources for anyone interestedin Flash actionScript. I'll be updating this list, so if you've know of a resource to add, please post in the comments.

In alphabetical order:

February 07, 2003

Elemental Snow

This may be a sign that I really need a vacation, but I had some fun makng it. It's fairly CPU intensive.
Elemental Snow

February 04, 2003

Open Source Real Time Cellular Budding with Flash

Over at Keith Peter's site, Bit-101, there's been a little discussion about how to script a vesicle budding from a cell.

Let's get this going as an open-source project. I want to see portable code, that's easy on CPU and macs. The vesicle needs to actually pinch off from the parent cell, and become a new distinct entity.

Join the project in our fourms:
GalaxyGoo Working Forums - real time cellular budding

January 25, 2003

neuro sim -- sneak peak

After a very long time, this project is nearing completion. Take a peak and let us know what you think:
Neuromuscular Junction with Flash

On the dev side, it's a hybrid of actionscript and tweens.

January 22, 2003

global from a movieclip timeline

Most of my flash work lives in the first frame. But today, I'm working with a movieclip's timeline. I kept trying to change the value of a global variable, declared on the main timeline, from the last frame of my movieclip. No luck.

Then I referenced the variable as _root.variable. Eureka!

January 15, 2003

Thinking out loud...flash

I'm just thinking outloud, here...puzzling over how to approach part of a complex project.

Problem: A simulation with three steps, which must play in sequence. Under different treatments, selected by the user, each step may differ. Look up what should happen when at each step, for a treatment. How do I store this info in a way that can be easily looked up with same method each time?

First, I thought about arrays. Something like

simPlot = newArray[[normal, 1,1,1], [spider,1,0,0],...];

That could work, but there are several treatments, and it's hard for me to keep track of index numbers for each, when calling for the values in another function.

I was looking up info on Arrays at Helen Triolo's actionscript-toolbox. That gave me the idea to use a string for saving the simulation plot, and then use "split" and read the data like an array:

normalSim = "1:1:1"; // normal: fire action potential, release ACh, contract muscle
snakeSim = "0:0:0"; // snake: no current, no ACh release, no contraction of muscle

Then write a general function for getting the plot for any condition (treatment):

getPlot = function(treatment){
   simPlot = treatment.split(":"); // split string to array of steps for this treatment
   trace(simPlot[0]); //what is first step?

Then, when it's time to run that part of the simulation, call:


Well, I'm going to try this out now.

December 17, 2002

Robert Penner's Book

Book reviews aren't something I normally do, but Penner's book, (Programming Macromedia Flash MX), is the best book on FlashMX I've seen so far. UltraShock set up a forum for it: interesting discussions, and Penner himself is participating.

Along with Moock's book, due to be released on Dec 19th, Penner's book may guide actionscripting to a new level of maturity.

December 12, 2002

Sneak peak at new GG game

Click-n-spell with the Periodic Table of Elements

How many Holiday-theme words can you spell? If you want your entry posted, don't forget to fill out the name and email fields.

October 18, 2002

ActionScript: The Definitive Guide, second edition out in December 2002!

I can hardly wait to get my hands on this book.>> asdg>> technotes>> second edition faq

October 10, 2002

Drifting Petal Experiment: Updated

Just before Macromedia released FlashMX, I was writing up some thoughts on programatic movement with Flash5. Well, I've finally gotten back to the project. Here's the first segment of the project (reworked for FlashMX)
drifting petals

I kept some of the Flash5 code, for comparison.

October 04, 2002

webMathematica Powers Periodic Table of Elements

GalaxyGoo's Periodic Table with Flash and webMathematica now pulls data directly from webMathematica!

September 26, 2002

Page through thumbnails with flash.

Added new function to the NASA-images viewer. Now the user can page through the thumbnail images to the image viewer.

Ambiguous data-types in flash

Today I ran into one of those quirks of flash: ambiguous data-types. I recall reading about this somewhere, but hadn't run into it yet.

I'm pulling mixed data-types from an XML document, and found that numbers were getting passed as strings, and that flash seems to determine data-type based on action performed on the data. I'll have to do some reading on that.

Anyway, I kept getting strange results when I used the numbers. And then it finally occured to me that I needed to "force" the data from a string into a number. Colin Moock's book came to my rescue, with a suggestion to convert by subtracting zero. Worked like a dream.

So, if it looks like your concatenating instead of numerically incrementing, try subtracting zero.

Here's a snippet of code I was working on:

if(this.list_order < 9){
//subtract 0, to force value as integer not string
pos = this.list_order - 0;
} else {
pos = this.list_order - ((this.thisSet-1)*9);

September 23, 2002

Visualize Trig

Not only is this a nice actionScript tutorial, but it's a great visualization of basic trigonometry! It also demonstrates the power of flash as an educational tool. This simple animation conveys, clearly, the relationship between rotation of a radius and it's corresponding sine wave.

Well done!

Math Object (

3D molecules in Flash

Edwin's CML reader is now on GalaxyGoo!

Be carefull, this version is a CPU hog.
CML Reader with Flash

"I've seen that in java," you may say. For client-side interaction, I think Flash is the better solution. For developers, it offers great opportunites for collaboration, and is easily updated.

September 06, 2002

Flash MathML Reader

I've uploaded a prototype Flash MathML reader, to the site. Take a look, and let me know what you think.

Guide to NASA Images

The more I play with XML, the more I like it. This prototype only took a few hours to put together (including getting the thumbnails all the same size).

It's very rough, and I'm looking forward to working on it more.

Visual Guide to NASA Images

Flash Highlight: Landscape

This is one of the most impressive flash projects I've seen. It's a landscape generator, with user controlled "riders".Flash Landscape

September 01, 2002

Great article on Flash development

New to Flash development? This is a great article, from the perspective of a traditional developer interested in Flash.

Coding for a Time-based Medium: Preparing traditional developers to develop in Flash requires some new terminology and careful separation of code and interface elements.

(via "Mesh on MX" blog)

August 30, 2002

plotting link

I hope Kim doesn't mind me shining a spotlight, but this is very my opinion. Great potential. Creative! I wish I could have played with this when I had to take statistics!
distributed plotting

She's sharing the source code too!

XML-fed menu on Main

I've been playing around with a simple XML-fed menu for the main page.

The "Features" menu is the test case. I left the "Who are we?" menu in flash4, as comparison.

Normally, I'd stick with a flash4 export for a menu like this, but the benefits of MX were just too yummy to resist: XML handling, remote code attachment...

Any bugs to report?

July 24, 2002

"Legend" has it

As requested, I added a simple legend to the Periodic Table project, to show the significance of color in the table.

Lighten up some elements

Today's progress with the interactive periodic table, is a design/usability issue. To make some of the text easier to read, I lightened up the background color on some of the elements.

July 23, 2002

new version of periodic table project

Progress! I've just uploaded a new version of the flash/webMathematica periodic table .

What's new? The symbols for each element now display, along with the atomic number On rollover, element name appears. Data for the symbols and names is pulled into the flash movie from a simple XML file.

July 16, 2002

squeezed out of the table?

While writing an algorithm for arranging the graphics for each element in the periodic table , it struck me how odd the table is...

I recall a chemistry lecture, where the history of the table was briefly presented. Early organizations of the elements seemed odd to me. My fellow students and I then tried to memorize the modern periodic table before the next exam. I've never been talented at rote memorization, so that class contributed little to my understanding of chemistry, nor to my GPA.

Fortunately, for me, that wasn't the end of my education in chemistry. Which brings me back to the topic of this ramble, and one of the projects I'm working on these days: an interactive periodic table, currently in a rough draft state. I've been working on the flash interface, and Brian Higgins (at UCDavis) did the webMathematica development.

The odd thing about the table, from the perspective of writing an algorithm to generate the graphics for it, is the way the Lanthanide and Actinide series' get sqeezed out of the table.

July 11, 2002

Wordsearch game: fixed number of words?

Currently, the wordsearch game, generates games in which the number of words in each game varies. This is because the algorithm loops through a list of words, only once, finding a place for each word as it comes up. If after a number of tries, a particular word isn't placed, it's skipped over.

Why did I do it this way? It seemed like the fastest way to generate the games. Since I envisioned this application being used primarily by school teachers, I assumed that many would be on a slower machine, so speed was a big concern here.

If you'd like to take a look at the source FLA, it's available for download. I've been a little preoccupied with other projects, so I haven't finished the conversion to MX. This is one application that, I think, would really benefit from the advances in MX.

The next version, could very well have a user option for setting a fixed number of words per game. With the new event models, that should be a lot easier to set up.

July 10, 2002

Periodic Table: flash interface, webMathematica server-side

Im having a good day. With the help of some folks on the flashcoder's list, I managed to get the periodic table project interface prototype working.

The table is dynamically generated in flash. When the user clicks on an elements square, Brian's webMathematica MSP is called, and a pop-up window opens (with info about that element).

So far, the new interface (flash and HTML), is only 2K all together. Thats down from over 30K for doing the same thing in an HTML table.

Lots of potential for this projectIm having fun.