Paul Robertson's words, punctuated

Thoughts on development, user-centered design, code, etc. by Paul Robertson

Flash Platform Discussion follow-up -- news and some philosophy, too

Yesterday I attended Macromedia’s Flash Platform Live Discussion and Q & A session hosted by Kevin Lynch. I expected the aggregators to light up with posts during/after the presentation, but things were pretty quiet — I have only found one follow-up post so far. Personally I had to get back to other projects at work, and wanted to take some time to think about things a bit before giving my thoughts. So here they are, in three parts:

  1. The presentation
  2. Juicy news (things I hadn’t read anywhere else)
  3. Why was this meeting held, again?

The presentation

First of all, if you weren’t at the meeting and want to know what was said, I would strongly suggest that you read Kevin’s whitepaper about the Flash Platform — his presentation (text and slides) were almost 100% out of the whitepaper. This surprised me — are there really so few people who read the whitepaper? It’s a good, easy read — mostly stuff you may already know, but plenty of juicy bits about the various products that are in development/beta right now.

He started off explaining that what he would be sharing is a presentation they’ve been giving to analysts, with the goal of giving us (the audience) insight into how they’re communicating about the Flash Platform. In particular, the goal of the Flash Platform announcement is to try to change the perception of Flash from “a tool for animations” to “a development platform.”

As you can read in the whitepaper, the Platform is centered around the Flash Player (the “runtime” or “virtual machine” if you want to call it that). Building on top of that are the tools, servers, developer programs and components/patterns; and finally on top of it all are the solutions we build on the platform.

Personally I was pleased that Kevin gave a strong acknowledgement, both in the presentation and in the Q & A, to the importance of third-party tools to the platform. I think he’s right-on about this. Over the past several months I have seen that all the new tools that are being built to support developers, whether they cost money or not, have really ignited a new excitement for Flash developers. Personally I consider the MTASC compiler to be the most exciting thing for ActionScript since ActionScript 2.0 was announced. Even if these new tools mean that it may soon be (or is now) possible to create significant ActionScript-based Flash applications without needing to pay Macromedia anything, the net effect of having more and better applications out there will still be a benefit to Macromedia. Even if a really exciting Flash application is built entirely without using Macromedia products, it still runs in the Flash Player and the good press it generates will still be associated in the public eye with Macromedia and Flash.

Juicy news

For most people, I expect that the highlight of the meeting was probably the second part, which was an open question and answer session. I assumed that would mean“questions about the presentation” but the questions covered a pretty good range — mostly related to the future of various products, of course. It became apparent that a significant portion of the audience (or at least of those whose questions were picked to answer) hadn’t read the whitepaper — I would guess that about half of the questions that were answered by Kevin were already answered in the whitepaper. Another 20% or so of the questions were given the “sorry, we haven’t made that public yet” treatment. But there were still plenty of things that I hadn’t heard/read anywhere before, both in the presentation and especially in the Q & A, so here they are for your reading pleasure:

Note: any details about upcoming products that I had already heard somewhere else aren’t included in this list. That means previously announced details about the upcoming Flash Player/Studio releases and especially the plentiful new details in Kevin’s whitepaper. I suggest you read those, if you haven’t already. I have included a few points that I was already familiar with, simply because I think they are important ones to share.

Disclaimer: these are taken from notes I typed as I was listening to the presentation. They are most certainly not word-for-word transcriptions of what was said, and it is possible that any of them could be wrong!

Things that were new to me:

  • “Maelstrom” (Flash Player 8)
    • (presentation point) In Maelstrom there will be ActionScript access to the bitmap display, allowing developers to create visual effects beyond the ones built-in (that have been announced several times).
    • (Q & A) Could you explain more about bitmap capabilities in Maelstrom? We’ve added new effects that are written in native code in the player. In addition, there is an image api, allowing ActionScript to arbitrarily change the bits in a bitmap. Those will run more slowly than native effects, but provide all sorts of free-form capabilities.
    • (Q & A) For future Flash Player releases, is the plan to stick with the vector engine or rewrite it to a bitmap engine? They are sticking with a vector engine, they are happy with it, they are working on adding optimizations to the vector engine such as those in Maelstrom (the “cache as bitmap” for Movie Clips).
    • (Q & A) Will Maelstrom force users to upgrade their hardware? It is designed around current hardware, including machines running Windows 98 and Linux; this is a strong angle of the Flash Player that will make it continue to have a wider reach that other technology (e.g. Avalon).
    • (Q & A) Will there be DRM capabilities in the upcoming Flash Player? Not specifically in the player, but if streaming video is used control can be achieved, since the video isn’t cached.
    • (Q & A) What is the size of the Flash Player 8? The design goal is to be under 1MB, and so far we are succeeding. Each release we do a “sensitivity analysis” to see how size affects downloads. For a few people we “salt” the download with other media to make it larger, and we see how that affects download rates.
    • (Q & A) Will the Flash Player 7 auto-upgrade to Flash Player 8 at release time? That is possible; we haven’t decided yet whether we will flip a switch and the whole world will upgrade at one time.
    • (Q & A) Will the Flash Player ship with Firefox by default? We have been discussing this with the Firefox team; currently they are very concerned about the download time of their application.
  • “8 Ball” (Flash Authoring Tool 8)
    • (Q & A) When do you expect Flash 8 to be out, and how can I get on the beta? We plan to have it out by late summer. Send email to Mike Chambers and Mike Downey to get on the beta. (Note: poor Mike and Mike – I’m sure that they could get someone on the beta, but I think the preferred way is to fill out the beta programs signup form.)
  • Flex/MXML
    • (presentation point) Although MXML drives Flex now, the “intention is to make MXML available to a wider audience over time.”
    • (Q & A) Are there plans for MXML-based .swf’s on mobile devices? Our methodology for designing Flex is looking at patterns used in applications, figuring out how to represent them in MXML and including them in Flex. Right now we’re learning about patterns in mobile devices, and as patterns mature they will start appearing in Flex MXML. In the long term mobile is a critical market and we will include it.
    “Zorn” (the new Eclipse-based Flex tool)
    • (presentation point) Zorn will include design, development, and debugging in the tool.
    • (Q & A) Is Zorn built on the previous Flex Eclipse plugin? No, it is built mostly from scratch, a move that is unusual for us.
    • (Q & A) Will Zorn use MTASC or another compiler? It will use Macromedia’s ActionScript compiler. As a side note, we are really excited about efforts like MTASC, but we want to encourage developers of tools like this to try to stay with the language of the Platform so that we don’t have splintering versions of the language. Try to stick to the same language so that code works no matter where we compile it.
    • (Q & A) Will there be a standalone compiler with Zorn? Our intention is to target MXML and Flex primarily (read: no, since Flex includes it’s own compiler).
    • (Q & A) Will Zorn be open source? We are working on a tool that we hope people will buy. It will be built on the open-source Eclipse platform. This is a new area for us, and we are trying it out to see how things work. (Also see the comments at this post about Zorn by Sho Kuwamoto, who is the project leader for Zorn.)
    • (Q & A) Is Zorn only for Flex users? The design centers around MXML.
    • (Q & A) Are releases of Zorn and Mistral (Flex 2.0) scheduled for late summer, too? We haven’t announced ship dates yet – so maybe you can take that to mean that they aren’t.
  • Central
    • (Q & A) Where is Central heading? We are learning a lot from Central (currently a developer release). Play with it and send us your comments. We are feeding this feedback into the future product. This is a critical part of the Flash Platform.
  • Mobile/Flash Lite
    • (Q & A) Will it be possible to install Flash on existing mobile devices? With most devices, no; it is built into the ROM. With a few devices yes. Longer term we are working with partners to allow deploying the Flash player onto phones afterwards.
  • Flash Remoting
    • (Q & A) Will Flash Remoting ever support PHP / will Macromedia support AMFPHP? We don’t have current plans to support PHP. We think AMFPHP is a great effort; having people build things around the Platform makes it stronger.
  • Company strategy/future products
    • (presentation point) Macromedia’s new growth agendas are all based on the Flash Platform.
    • (Q & A) How does the Flash Platform fit in with Adobe? We can’t talk too much about Adobe. The review appears to be going fine. If you read the Adobe press release Flash is at the center of the deal.
    • (Q & A) Is Zorn the first of many Eclipse-based tools? Maybe new tool work will be done, but it isn’t our intention to rewrite all our products in the Eclipse platform.
    • (Q & A) Will Macromedia give support for CFEclipse? We are talking with the CFEclipse team to see how we can help out.
    • (Q & A) Will there be three different component frameworks in the future? Right now we have separate component frameworks for the different products (Central, Flex, Mobile, Flash) but the goal is to unify the component framework eventually.

Why was this meeting held, again?

Ironically, the biggest question I had going in to the presentation was just “What’s the reason for this meeting? Why was this particular group of people (especially me!) invited to this ‘private’ meeting?” Fortunately, through a bit of luck my question was answered. After the presentation and questions, the “presenter chat” screen (which was apparently a private chat for the MM people right before the actual presentation began) was inadvertently left visible on the Breeze window. Right there in the conversation was a discussion about how many participants were expected, and one of the answers was that the entire Flash category of MXNA weblogs had been invited. So that was the big secret — I have a weblog that is aggregated by MXNA, in the Flash category, so I was invited.

Like so many questions, getting this one answered led to an even bigger question. Why were Flash bloggers (and presumably some others) invited to this special presentation on the Flash Platform? In the presentation Kevin explicitly stated that:

  1. He would be giving us a presentation that they’ve been giving to industry analysts;
  2. It represents how they’re communicating about the Flash Platform; and
  3. He acknowledged that most of the attendees probably already think of Flash as a platform and are familiar with most of the ideas in the presentation.

Now, I’m making some assumptions here, but I think that (just as Kevin suggested with point 3) in an audience that consists primarily of Flash bloggers, chances are

  • Most of the audience members already read the whitepaper that was posted two days earlier (which by and large formed the content of the presentation)
  • Most of the audience members have been scouring the Flash blogs for whatever preview information they can get on the upcoming Flash Player and authoring tool, so they probably already know almost everything that is out in public about those things.

Which once again leads to the question, why give a presentation on “what is the Flash Platform and how is Macromedia communicating about it” to the people who are most likely (again, by Kevin’s own admission) to already know what the Flash Platform is, be firm believers in it, and be very aware of Macromedia’s communications about it? There is only one answer I have come up with (but please feel free to present alternative ideas in the comments).

Macromedia must think that we, the Flash bloggers of the world, have (at least potentially) big influence in spreading the word about the Flash Platform and what it can mean for application development. It makes sense, of course. Chances are good that a blogger is a person who likes to learn new things and especially likes to share them with others. The Flash community certainly isn’t shy about sharing information. Here’s our chance to (once again) open up and spread the word to bosses, colleagues, friends, etc. about the value of the Flash Platform.

Macromedia thinks we can do it! Pretty flattering. Now they’ve shown us how they’re communicating about it, and they’ve given us some great ammunition in the form of Kevin’s whitepaper. And they are “paying us in advance” so to speak by continuing to be even more open than ever about the future of the Platform and Macromedia products.

Anyway, enough sappy “rallying the troops.” Time to go find some more ammunition for sharing the benefits of the Flash Platform with the boss. Can I get my employer to pony up for a Flex license? I still have my doubts, but I feel newly motivated to go out and try. I have to admit, the Adobe buyout announcement came like a slap in the face, a reminder that Macromedia is a business and has to care about stockholders (even over customers). But today I feel like restoring a little credit to them for caring about their developer community, too.