Advertisement
General

A Nostalgic Rummage Through the History of Flash

by

New Year's Eve is a time for reflection. A time when the nostalgic amongst us can whip out the photo album and revel in how things used to be. With that in mind, let's use this opportunity to put silly hats on, dive into the archives and take a look at Flash; from its conception, through to its more familiar adulthood.

Note: Documentation from version 1 to version 9 alpha - a.k.a. CS3

If you ever think Flash is difficult to use, you should try drawing with a joystick on an Apple II before the concept of undo was invented. That will test your patience.

-Jonathan Gay, Father of Flash.


How it All Began

The story as described by Jonathan Gay, the Creator of Flash.

Jonathan Gay grew up playing with LEGO blocks when there were no LEGO men or whales or complicated accessory packs - just rectangular blocks and a few wheels. LEGO taught him the basics of engineering design. Even better, they helped him to express his early passion for building things...

About that time, he got an Apple II computer. As he began to program, he quickly discovered that with computer software you can design something that will work and respond to you. His first game was a Space Invaders clone in Apple II Basic.

After dabbling with games, he returned to building graphics editors. He added PostScript style drawing to a Macintosh product called SuperPaint II while still in college.

A company called Go was building an operating system. So in January of 1993, Jonathan convinced Charlie Jackson to invest some money and the two of them started FutureWave Software to dominate the market for graphics software on pen computers (computers whose screens could be written on using an electronic stylus).

He imagined drawing with a pen on a computer screen would be a fantastic improvement. So Jonathan and Charlie set out to build SmartSketch, software that would make drawing on the computer easier than drawing on paper. In the meantime, AT&T bought Go. In January 1994, just as they were about to ship their product, AT&T pulled the plug on Go and left them without a market. They did actually make a few sales of SmartSketch.

The failure of Go and pen computing was a big setback for the two of them. The only opportunity they saw was to take their software and make it run on Windows and the Macintosh. Jonathan and Charlie did it, but now they were competing against Illustrator and FreeHand.

SmartSketch would never replace high-end paint or illustration programs, but it was an appealing tool for professional artists and illustrators, who could use it with other programs.

Jonathan and Charlie were at SIGGRAPH In 1995, and got lots of feedback from people that they should turn SmartSketch into an animation product. They were starting to hear about the Internet and the Web, and it seemed possible that the Internet would become popular enough that people would want to send graphics and animation over it. So they began to add animation to SmartSketch..

They renamed the program CelAnimator, "CelAnimator is based on FutureWave Software's award-winning SmartSketch drawing technology. It will allow users, for the first time, to create vector-based drawings and buttons and then animate them. Both the drawings and the animations can be placed on HTML Web pages.."

Source: Press Release http://www.highbeam.com/doc/1G1-18238250.html

FutureWave Software renames CelAnimator to FutureSplash Animator; new name reflects broader market and wide variety of Internet browser support.

Source: Press Release http://www.highbeam.com/doc/1G1-18238250.html

At the time, the only way to extend a Web browser to play back animation was through Java. So Jonathan and his friend wrote a simple animation player that used Java and was horribly slow. They stubbornly kept at it though, and in the fall, Netscape came out with their plug-in API. Finally, they had a way to extend the Web browser with decent performance (this was the ancestor of Macromedia Flash Player).

Their big success came in August of 1996. Microsoft was working on MSN and wanted to create the most TV-like experience on the Internet. They became big fans of FutureSplash and adopted the technology. Their other high-profile client was Disney Online. They were using FutureSplash to build animation and the user interface for the Disney Daily Blast. Disney was also working with Macromedia Shockwave.

Source: Macromedia info http://en.wikipedia.org/wiki/Macromedia

In November of 1996, Macromedia had heard enough about them through their relationship with Disney and approached them about working together. At the time, Jonathan and Charlie had been running FutureWave for four years with a total investment of $500,000, and the idea of having a larger company's resources to help them get FutureSplash established seemed like a good one.

In December 1996, they sold FutureWave Software to Macromedia, and FutureSplash Animator became Macromedia Flash 1.0: a contraction of "Future" and "Splash".

Macromedia originated in the 1992 merger of Authorware Inc. (makers of Authorware) and MacroMind-Paracomp (makers of Macromind Director). Director, an interactive multimedia-authoring tool widely used to make CD-ROMs and information kiosks which lives on today, served as Macromedia's flagship product until the mid-1990s. As the CD-ROM market began to decline and the World Wide Web gained in popularity, Macromedia created Shockwave, a Director-viewer plug-in for Web browsers, but decided it also needed to expand its market by branching out into web-native media tools.

Macromedia developed all versions of Flash from v1 to v8, although after version 5 they temporarily stopped using straightforward numbering: the sixth version was called Flash MX and the seventh was Flash MX 2004.

In June 6, 2005 Macromedia announced the unveiling of the Macromedia Flash Platform "for delivering the most effective experiences for rich content, applications, and communications across browsers, operating systems, and devices of all kinds. The Flash Platform provides the solutions that make great digital experiences possible. It is a proven technology that companies and institutions such as America Online, SAP, Wharton, and Yahoo! have adopted for their diverse needs."

Source: http://www.adobe.com/macromedia/proom/pr/2005/unveiling_flashplatform.html

On April 18 2005, Adobe acquired Macromedia in an all-stock transaction, for approximately $3.4 billion.

Source: http://www.adobe.com/aboutadobe/invrelations/adobeandmacromedia.html

Adobe was founded in December 1982 by John Warnock and Charles Geschke, who established the company after leaving Xerox PARC in order to develop and sell the PostScript page description language. In 1985, Apple Computer licensed PostScript for use in its LaserWriter printers, which helped spark the desktop publishing revolution. The company name Adobe comes from Adobe Creek in Los Altos, California, which ran behind the house of one of the company's founders. Adobe acquired its former competitor, Macromedia, in December 2005, which added newer software products and platforms such as Coldfusion, Dreamweaver, Flash and Flex to its product portfolio.

Source: http://en.wikipedia.org/wiki/Adobe_Systems

Macromedia Flash become Adobe Flash from the CS3 Edition (V9, which was released in 2007) onwards.

Adobe celebrated the tenth anniversary of Flash by launching a microsite.

Source: http://www.adobe.com/designcenter/dialogbox/flash_anniversary/

Source: 10th Flash anniversary by Nectarine (animation) http://flash10.nectarine.com.au

Click to enlarge

A quick tour of Flash's Genealogy Tree!


Source: http://en.wikipedia.org/wiki/Adobe_Flash


Zoom In: Flash

Release Year Description
FutureSplash Animator 1996 initial version of Flash with basic editing tools and a timeline
Macromedia Flash 1 1996 a Macromedia re-branded version of the FutureSplash Animator
Macromedia Flash 2 1997 Released with Flash Player 2, new features included: the object library
Macromedia Flash 3 1998 Released with Flash Player 3, new features included: the movieclip element, JavaScript plug-in integration, transparency and an external stand alone player
Macromedia Flash 4 1999 Released with Flash Player 4, new features included: internal variables, an input field, advanced ActionScript, and streaming MP3
Macromedia Flash 5 2000 Released with Flash Player 5, new features included: ActionScript 1.0 (based on ECMAScript, making it very similar to JavaScript in syntax), XML support, Smartclips (the precursor to components in Flash), HTML text formatting added for dynamic text
Macromedia Flash MX(6) 2002 Released with Flash Player 6, new features included: a video codec (Sorenson Spark), Unicode, v1 UI Components, compression, ActionScript vector drawing API
Macromedia Flash MX 2004(7) 2003 Released with Flash Player 7, new features included: Actionscript 2.0 (which enabled an object-oriented programming model for Flash, although it lacked the Script assist function of other versions, meaning Actionscript could only be typed out manually), behaviors, extensibility layer (JSAPI), alias text support, timeline effects. Macromedia Flash MX Professional 2004 included all Flash MX 2004 features, plus: Screens (forms for non-linear state-based development and slides for organizing content in a linear slide format like PowerPoint), web services integration, video import wizard, Media Playback components (which encapsulate a complete MP3 and/or FLV player in a component that may be placed in an SWF), Data components (DataSet, XMLConnector, WebServicesConnector, XUpdateResolver, etc.) and data binding APIs, the Project Panel, v2 UI components, and Transition class libraries.
Macromedia Flash 8 2005 Macromedia Flash Basic 8, a less feature-rich version of the Flash authoring tool targeted at new users who only want to do basic drawing, animation and interactivity. Released with Flash Player 8, this version of the product has limited support for video and advanced graphical and animation effects. Macromedia Flash Professional 8 added features focused on expressiveness, quality, video, and mobile authoring. New features included Filters and blend modes, easing control for animation, enhanced stroke properties (caps and joins), object-based drawing mode, run-time bitmap caching, FlashType advanced anti-aliasing for text, On2 VP6 advanced video codec, support for alpha transparency in video, a stand-alone encoder and advanced video importer, cue point support in FLV files, an advanced video playback component, and an interactive mobile device emulator.

Source: Wikipedia http://en.wikipedia.org/wiki/ActionScript


Zoom In: ActionScript

  • Flash Player 2: The first version with scripting support. Actions included gotoAndPlay, gotoAndStop, nextFrame and nextScene for timeline control.
  • Flash Player 3: Expanded basic scripting support with the ability to load external SWFs (loadMovie).
  • Flash Player 4: First player with a full scripting implementation (called Actions). The scripting was a flash based syntax and contained support for loops, conditionals, variables and other basic language constructs.
  • Flash Player 5: Included the first version of ActionScript. Used prototype-based programming based on ECMAScript, and allowed full procedural programming and object-oriented programming.
  • Flash Player 6: Added an event handling model, accessibility controls and support for switch. The first version with support for the AMF and RTMP protocols which allowed for on demand audio/video streaming.
  • Flash Player 7: Additions include CSS styling for text and support for ActionScript 2.0, a programming language based on the ECMAScript 4 Netscape Proposal with class-based inheritance. However, ActionScript 2.0 can cross compile to ActionScript 1.0 byte-code, so that it can run in Flash Player 6.
  • Flash Player 8: Further extended ActionScript 1/ActionScript 2 by adding new class libraries with APIs for controlling bitmap data at run-time, file uploads and live filters for blur and dropshadow.
  • Flash Player 9 (initially called 8.5): Added ActionScript 3.0 with the advent of a new virtual machine, called AVM2 (ActionScript Virtual Machine 2), which coexists with the previous AVM1 needed to support legacy content. Performance increases were a major objective for this release of the player including a new JIT compiler. Support for binary sockets, E4X XML parsing, TR1 = LIXO full-screen mode and Regular Expressions were added. This is the first release of the player to be titled Adobe Flash Player.
  • Flash Player 10 (initially called Astro): Added basic 3D manipulation, such as rotating on the X, Y, and Z axis, and a 3D drawing API. Ability to create custom filters using Adobe Pixel Bender. Several visual processing tasks are now offloaded to the GPU which gives a noticeable decrease to rendering time for each frame, resulting in higher frame rates, especially with H.264 video. There is a new sound API which allows for custom creation of audio in flash, something that has never been possible before.Furthermore, Flash Player 10 supports Peer to Peer (P2P) communication with Real Time Media Flow Protocol (RTMFP).
  • Flash Player 10.1: Particularly notable for being able to be run on Android mobile devices, while maintaining all the features of the regular Flash Player.

Source: Wikipedia http://en.wikipedia.org/wiki/ActionScript


Zoom In: Flash Lite

Adobe Flash Lite is a lightweight version of Adobe Flash Player, a software application published by Adobe Systems.

  • Flash Lite 1.0: Flash Lite is the Flash technology specifically developed for mobile phones and consumer electronics devices. Supports Flash 4 ActionScript.
  • Flash Lite 1.1: Flash 4 ActionScript support and additional device APIs added.
  • Flash Lite 2.0 and 2.1: Added support for Flash 7 ActionScript 2.0 and some additional fscommand2 API.
  • Flash Lite 3: Added support for Flash 8 ActionScript 2.0 and also FLV video playback.
  • Flash Lite 4: Added support for Flash 10 ActionScript 3.0 as a browser plugin and also hardware graphics acceleration.

Flash Showcase: Packaging

Macromedia Flash 1

Macromedia Flash 2

Macromedia Flash 3

Macromedia Flash 4

Macromedia Flash 5

Macromedia Flash MX

Macromedia Flash MX2004

Macromedia Flash 8 Basic

Macromedia Flash 8 Professional


Flash Showcase: Logos

FutureWave FutureSplash

From Macromedia Flash 1 to Macromedia Flash 5

Macromedia Flash MX & Macromedia Flash MX2004

Macromedia Flash 8


Flash Showcase: Splashes

Futurewave Future Splash / Macromedia Flash 1

Macromedia Flash 2

Macromedia Flash 3

Macromedia Flash 4

Macromedia Flash 5

Macromedia Flash MX

Macromedia Flash MX 2004 Basic

Macromedia Flash 8 Basic

Macromedia Flash 8 Professional

Adobe Flash 9 Professional ActionScript 3 Public Alpha


Flash Showcase: User Interface

Futurewave Future Splash / Macronedia Flash 1

Macromedia Flash 2

Macromedia Flash 3

Macromedia Flash 4

Macromedia Flash 5

Macromedia Flash MX

Macromedia Flash MX 2004

Macromedia Flash 8

Adobe Flash 9 Public Alpha


Flash Showcase: About Box and Full UI

Futurewave Future Splash / Macronedia Flash 1

Macromedia Flash 2

Click to enlarge

Macromedia Flash 3

Click to enlarge

Macromedia Flash 4

Click to enlarge

Macromedia Flash 5

Click to enlarge

Macromedia Flash MX

Click to enlarge

Macromedia Flash MX 2004

Click to enlarge

Macromedia Flash 8

Click to enlarge

Adobe Flash 9 Public Alpha

Click to enlarge

Flash Showcase: Icons

Icons used by Flash, from version 1 to version 8

Macromedia Flash 2 / Macromedia Flash 3

Macromedia Flash 4 / Macromedia Flash 5

Macromedia Flash MX

Macromedia Flash MX2004

Macromedia Flash 8


Flash Showcase: Flash Player

Futurewave Future Splash Player / Macronedia Flash Player 1

Macromedia Flash Player 2

Macromedia Flash Player 3

Macromedia Flash Player 4

Macromedia Flash Player 5

Macromedia Flash Player 6

Macromedia Flash Player 7

Macromedia Flash Player 8

Adobe Flash Player 9


Flash Showcase: Get Flash Player Icons


And Voilà!

Thank you for reading. I hope you find this information useful and please leave any interesting Flash tidbits you know of in the comments!

Complete List of Resources:

Related Posts
  • Code
    HTML5
    HTML5: Vibration APIPdl54 preview image@2x
    HTML5 has been a breath of fresh air for the web, which hasn't only affected the web as we know it. HTML5 provides a number of APIs that enable developers to create interactive websites and improve the user experience on mobile devices. In this article, we'll take a closer look at the Vibration API.Read More…
  • Code
    JavaScript & AJAX
    Creating Brackets ExtensionsDeeper in brackets retina preview
    A little while ago I wrote about the recent updates to the Brackets editor. Brackets is an open source project focused on web standards and built with web technologies. It has a narrow focus and therefore may not have a particular feature you've come to depend upon. Luckily, Brackets ships with a powerful extension API that lets you add any number of new features. In this article, I'm going to discuss this API and demonstrate how you can build your own extensions.Read More…
  • Code
    News
    iOS 2013: A Year in Review and 2014 PredictionsPreview image@2x
    For iOS developers, 2013 was a pivotal year. I'd even go as far as saying that it was the most significant year since the introduction of the iPhone, almost seven years ago. The reason is of course the unveiling of iOS 7. Let's take a look at some of the key moments of 2013 and take a sneak peak at what 2014 has in store for us.Read More…
  • Game Development
    How to Learn
    How to Learn OrxHow to learn orx
    Orx is an open source, portable 2D game engine, which currently runs on Windows, Mac, Linux, iOS and Android (2.3+), and uses OpenGL (ES for iOS/Android) for render acceleration. It's data-driven, and uses a simple yet powerful configuration system which allows you to quickly prototype and validate ideas. In this article, I'll share tips and resources for learning Orx, and show you what it's capable of.Read More…
  • Code
    General
    Team Collaboration With GitHubGithub team preview
    GitHub has become the corner stone for all things open source software. Developers love it, collaborate on it and are constantly building awesome projects through it. Apart from hosting our code, GitHub's main attraction is using it as a collaborative tool. In this tutorial, let's explore some of the most useful GitHub features, especially for working in teams, making it all the more efficient, productive and, most importantly, fun!Read More…
  • Game Development
    Business
    Making Your First Game: Ernesto Quezada's StoryLacucaracha
    I'm a programmer. At work I program games and - this may sound sad, but - when I come home from work, I do more programming. I love it. But this was not always the case. In fact, I never studied to be a programmer. This is the story of my first game, La Cucaracha ("The Cockroach"), and how I went from creating graphics to developing games. It all started many years ago, while studying a degree in Graphic Design back in El Salvador...Read More…