Macromedia quietly released a supplemental EULA tonight (more info), to address some of the concerns I and other members of the Flash community have previously expressed.

If I'm going to carry the burden of being the #1 Flash Bitch, I may as well earn the title. So here's my take on the new EULA...

The supplementary license is definitely a step in the right direction, as it provides the following:


  1. The ability to distribute up to 50 lines of Macromedia sample code, though only for the sole purpose of illustration or support.

  2. Allows you to reference Macromedia and/or Flash in product/marketing materials, provided you adhere to their trademark guidelines

  3. Distribute components* provided they include material improvements over the originals.

That's the good news. Unfortunately, the bad news is:


  1. We are still not allowed to distribute uncompiled MM sample code (even with material improvements), unless it is distributed with, and supports a compiled component (.swc), so don't expect to see low-level framework modifications like my gDispatcher being distributed under this license.

  2. You still cannot override and modify MM classes on a per project basis, and distribute the code to your client. This remains a critical necessity for a lot of larger application projects.

  3. Macromedia's definition of a Component (ie. the only thing we are given the right to distribute) is "...any of the reusable .SWC files provided by Macromedia...". Hmmm... so we can only distribute our own components if they are "provided by Macromedia"? Seems kind of contradictory. I'm pretty sure I know what they meant to say, but they sure didn't succeed. Gotta love Lawyers'R'Us.

So where does this leave us? We have a slightly buggy, bloated component set that we can't easily fix, modify or extend due to the EULA. I'm sure Macromedia is not intentionally trying to stifle our ability to do our work, and share with our community, but they are doing so regardless. I've been avoiding all of the attempts to create an open source component framework, in the hopes that MM would right their wrongs, and we could all finally standardize on a single component set - but it's starting to look like the only real solution. Who's interested? I've got a lovely event model I can contribute. ;)

It might help the situation if someone from Macromedia could clearly articulate the reasoning behind all of these limitations. I can't find the logic in it, and I haven't been able to find anyone (in or out of MM) that can explain it to me.