|
Last year Macromedia and Allaire joined together,
combining server-side and client-side development.
This week Macromedia publicly announced the first
member of this post-merger generation, Flash MX. Over the next few months we'll see other
applications in this MX family of tools. But right
now, with Macromedia Flash MX, we can all start to
see and talk about the new opportunities offered by this combined Macromedia/Allaire
development.
For me, Macromedia has always been about creating things where the audience
could actually do something. Director started out
as an animation engine but quickly added
scripting for the user to influence what they saw. Swivel 3D created things to
look at, but all along had an undercurrent of creating interactive 3D experiences. Authorware created
courseware, Dreamweaver introduced DHTML and client-side JavaScript design, DrumBeat and UltraDev were the first design tools for server-side interactivity. On
the Allaire side, ColdFusion developers have always pioneered in web pages
that directly respond to the visitor. Making a static presentation is a
necessary first step, but the emphasis has always been on interaction and
response... not just looking, but doing.
At first you could "do" something only on your own
isolated machine. When Netscape
2.0 arrived with its plug-in architecture, Java
and Shockwave could reach out across the net, in realtime,
and update the data in the page without losing the
current user state. Director users were the first
to work with techniques such as browser communication
and server communication. Java in the browsers sort
of atrophied after the Lake
applet, but Shockwave continued to add visual
and multiuser abilities and today is one of the few technologies that can be seen on the majority of
computers.
There's a step beyond connecting full computers together, however. Processing
power and connectivity are becoming part of the surrounding world. Ephemeralization is a real, observable
trend. A roomful of
electronics now fits in
your pocket, and soon may be your pocket. Webcams and sensors
bring live data to servers, which are
gradually drawing
conclusions in human-like ways, and which then send commands to
these embedded devices. Talking to yourself on the street was a sign of
instability a short while ago, but is a sign of
productivity today.
The world is getting wired together, and people are getting wired together
too. We're not just looking at documents published by some centralized
authority... we're also learning about and controlling our immediate
surroundings, in a very decentralized way.
Five years ago many businesses regarded web pages as bizarre. Today it's bizarre to see a thriving business that
doesn't have a web page for your computer. I think that, five years from now,
it will be just as bizarre to see a business whose services you can't access and use from wherever you
are. The dynamics are clear, the opportunities great.
So, why Macromedia Flash MX? Like Java and Shockwave,
it's a client-side runtime. But its development has
always emphasized size and portability over sheer number of features, so it has achieved wider viewership on fixed computers as well as portable and embedded devices. It's a single,
predictable engine, rather than competing engines which
implement a single specification in
different ways.
Aside from ubiquity and predictability, the Macromedia Flash Player offers
ability. It is a standard ECMAScript engine without
the bulk of text... it makes scalable vector-based graphics
practical and usable... it combines time-based animation
with the reliability of fixed frames for interface
design. It is not restricted to a single platform,
system, or architecture. It is very capable, and pretty
much universal.
Even though the Macromedia Flash Player works easily
with ASP,
PHP or other
components, it will be able to do more, more efficiently,
with Macromedia's own application servers. The next version of ColdFusion is still
in development, so it's hard to be specific today,
but if you'd prefer to write your own server-side scripting
then you might wish to study up on talking with other
machines through web services,
using shared
objects to communicate state across different
machines, and similar techniques.
Macromedia Flash is only the first part of the Macromedia
MX family, and will directly work with existing and
new MX tools as they arrive. I'm confident that a
year from now the world will see this as the strongest
interface available for rich web applications.
Here are some questions and concerns I've seen on the newsgroups already:
(Q) Does this mean I won't be able to publish things to look at anymore?
(A) Heck no... making something look-able is
the first step before making something do-able, so
publishing isn't going away. FreeHand has had more
than a decade of engineering investment to become
the best tool for multi-publishing, and a lot of Director
work is still out there for non-interactive presentations.
There's just faster growth and more opportunities
in rich web applications, that's all. Television added
to radio, just as radio added to phonographs.
(Q) Do I have to use ColdFusion? What about Microsoft? PHP? Lasso?
(A) That's fine, nothing has changed here... regular network
communication is done by open protocols anyway, so you'll still be able to
hand-roll custom solutions as you desire. We're just betting that the MX
family of tools will make it faster to do more in, that's all.
(Q) I use ColdFusion, but don't want to see it reduced to "the
appserver Flash likes best"!
(A) No worries... there are advantages to live single-screen
interfaces, but that doesn't mean you can't work with static stateless text
pages, same as before. The ColdFusion libraries have become more powerful
than ever, now that they're portable atop Java and use web services, and the
Flash intercommunication is just icing on the cake.
(Q) What about Director? You haven't mentioned it once!
(A) Hmm, well, I thought I did.... ;-) Macromedia
Flash MX just arrived here first, so that's why you're
hearing about it first. Macromedia Flash has more
of an edge into portable devices, but Director still
offers more power on real computers... they're both
valuable tools to use. When the MX servers arrive
I think you'll be able to tap into much of this power
right in the current Director 8.5, but please do guide
us in the Soapbox thread or wishform how you'd like upcoming versions of
Director to take best advantage of the MX family,
thanks!
(Q) Those handheld devices are baloney, you've been announcing them
for years!
(A) Although a specific device may indeed have turned out to have had
a durability approximating luncheon meat, the overall
evolution of portable devices remains real. Most device manufacturers already
realize they need a rich, predictable and universal client-side engine, and
announcements are generally made when they license the Macromedia Flash
Player. Not all these devices hit the market, however, much less get adopted
by consumers. That's why we're trying to get the Macromedia Flash Player on
all devices, instead of just a few. Still, Macromedia needs to do a
better job of showing the current state of the various delivery platforms out
there... please let us know in the Soapbox thread or Flash Player
wishform exactly what type of device listing would best serve your needs,
thanks.
(Q) I use Flash and want to develop rich
web applications, but I'm on a Mac. Will ColdFusion
MX run on it so I can test everything on one machine?
(A) I don't know yet, sorry. I do know that
computers with Mac OS X Server are the only ones which
support Java 2
Standard Edition out-of-the-box, but ColdFusion
MX hasn't been fully announced yet, so I'm not sure
if it requires J2EE or if there are other
constraints. Could you let the ColdFusion and JRun teams know directly
what type of information you need from then, please?
(That said, all web development should be continually
tested on a PC anyway, so you should be able to run
the server on your local network just as easily as
on your main design machine.)
(Q) Why does it look different? I just got
used to the old Flash interface!
(A) Just like youd do with your own application
interfaces, were always testing how well the
applications get out of your way and make it easier
to work. Macromedia was the first to offer an integrated interface in 1995,
back when most people were familiar with the interface
model of desktop-publishing tools. With Dreamweaver
1.0 and the other web tools we used new models like
browser-style
windows and launchers, and these changes were consolidated in recent versions of Macromedia Flash, Dreamweaver,
and Fireworks. Now, with the increased need to switch
among coding and visual representations at will, the
MX family borrows some efficiencies from ColdFusion Studio. You can think of this as the third
major version of the Macromedia User Interface. There's
always room to improve, though, so please let us know
of any specific interface changes you want at the wishform, thanks!
That's what "MX" means to me, anyway:
building atop the community's existing skills to make
it easier to take advantage of new opportunities.
The applications themselves have moved past isolated
development environments, past a common
user interface, past edit-in-place and round-trip
editing, towards multiple applications which work
together seamlessly on a single task. I've been with
Macromedia for ten years, and this is the most exciting
time I can remember... there are some great opportunities
ahead.
But we still rely on your guidance, to keep nudging us along the path that
works best for you! Even though we're all still at
the earliest stages for Macromedia MX, please sound
off in the Soapbox thread about how you see this, and let the various develoment
teams know exactly what you wish in the future.
Thanks a bunch! 8)
|