
Without Flash the current web tech stack might look different - trzeci
https://trzeci.eu/thank-you-adobe-marcomedia-for-flash/
======
dyarosla
I think what Flash (the program) really excelled at was giving creators the
ability to draw, animate and program interactive objects, _all wrapped in a
single neat package_. I would contest that no other software, even today, has
come close to being able to do these three so seamlessly at once (Really, I
encourage you to try to name one!)

Sure, when it came down to it you can say it had poor performance, security,
filesize bloat (all things that were fixable or you could work around). But in
reality, it allowed for developers to create amazing things in a fraction of
the time it would take in any other environment.

As for myself, I've moved on to OpenFL and Haxe. It's fast, it's lean, it's
cross-platform, it's open source... but it's still not the same.

~~~
tomelders
Was anything "amazing" every created in Flash? It's obviously subjective, but
things that would merit the "amazing" tag for me would be things like,
Wikipedia, Google (the Search Engine), Facebook (love it or hate it, it's an
awesome success), Google Maps, stuff like that.

All I remember from the Flash days, and I was a flash developer bear in mind,
was clunky, contentless, CPU hammering folly. None of which I think I miss.

~~~
Macha
YouTube couldn't have started when it did without flash, even if it's moved on
to html5 now.

Also lots of indie game devs (e.g. team meat of super meat boy or binding of
Isaac) got their start there, a lot of the early "upload your flash game here"
might have paved the way for getting so many games on the app store model when
it got going.

~~~
tomelders
Had flash not existed, I suspect they would have used another video playback
plugin, or rolled their own. I don't think YouTube's success was dependent on
Flash. But the ubiquity of Flash certainly didn't hurt.

~~~
ygra
Imagine YouTube depending on QuickTime, Windows Media Player, RealPlayer, or
Java Applets. Flash's user experience was just so much better than those
options. I'd guess that YouTube couldn't have had that much success were there
not such a ubiquitous (and downright _good_ ) plugin.

------
zwetan
About the open source AVM2, there are in total 3 versions:

The tamarin project on Mozilla mercurial with tamarin-central [0] and tamarin-
redux [1]

Then after the project got abandoned, Adobe renamed it to avmplus and moved it
to github [2] and made a couple updates.

Later on, they moved it to another repo [3], updated it on December 2015 to
the equivalent of Flash Player v19.0 and updated it again on Mars 2016 to the
equivalent of Flash Player v20.0 (codename rankin).

I maintain a fork/extension named redtamarin [4] which focus mainly on adding
native API to make ActionScript 3.0 run on the command-line, shell scripts,
server-side, etc.

imho FlasCC/Alchemy/CrossBridge did not take off because it is much harder for
dev to produce a project in C++ than in AS3, also why redtamarin took an
opposite approach: bring the C API to the AS3 context instead of forcing users
to actually write C/C++ code.

[0]: [https://hg.mozilla.org/tamarin-central](https://hg.mozilla.org/tamarin-
central)

[1]: [https://hg.mozilla.org/tamarin-redux](https://hg.mozilla.org/tamarin-
redux)

[2]: [https://github.com/adobe-flash/avmplus](https://github.com/adobe-
flash/avmplus)

[3]: [https://github.com/adobe/avmplus](https://github.com/adobe/avmplus)

[4]:
[https://github.com/Corsaair/redtamarin](https://github.com/Corsaair/redtamarin)

~~~
0x0
Alchemy also required a per-domain license key to be purchased to unlock
various API combinations at runtime. For me this was the biggest shock and
definitively a hint that not all was well in flash land. Runtime player
licenses were unheard of until then - only the authoring tools cost money.
Having to pay up for every swf on every domain certainly put a chilling effect
on experimentation around the new APIs.

~~~
zwetan
Adobe removed the need to have license afterwards

~~~
0x0
As far as I can remember, that reversal came _much_ much later, when flash was
already "dead in the water", unfortunately. By that time WebGL and
asm.js/WebAssembly was already coming on to the scene. And it really set the
stage for questioning adobe's stewardship of the runtime for developers. Fool
me once, ...

------
StillBored
The question is, do any of the existing web stacks come close to the beginner
friendly aspects of the original flash?

I don't think so.. I can imagine any of my musician friends installing
$FRAMEWORK and building a web site full of their own animations, menu's, and
music playback..

Flash for all its "evilness" still IMHO hasn't been matched.

~~~
freehunter
Similarly, Visual Basic. Has anything since allowed non-programmers to build a
GUI as easily as that? Just drag and drop, then double click the button and
follow the on-screen prompts to glue it all together. It gets a lot of shit
from real developers, but what can match it?

~~~
orionblastar
I did Visual Basic and MS Access programming mostly in the late 1990s.
Upscaling to SQL Server when the database grew too large etc.

IBM OS/2 had a Parts Workbench that was easier than Visual Basic and Borland
had Delphi based on Object Pascal.

Ruby on Rails comes close and Python is the new Visual Basic for a new
generation of programmers now.

~~~
freehunter
Rails and Python are fine, I've used both of them extensively, but they are no
comparison to VB in any way. Sure they're easy enough to use, but it's all
100% pure code. The biggest benefit of VB was the interface was not coded, it
was drawn. There's no way to do that with Rails or Python.

~~~
orionblastar
That sounds like a startup idea. Make ROR and Python have an IDE as easy to
use as the VB IDE.

------
Brajeshwar
Ah! Flash!

I started my career as a programmer but always had a mind for creative
designs. When I discovered Flash around 2002-2003, I was all over it.
ActionScript was my ultimate weapon to make Flash sing and dance to all my
tunes.

I was so involved then, Macromedia picked me as one of their "Professional
Expert" or something in that line. Those were the times when I made good
money, lots of friends, clients, met few interesting business partners.

In the summer of 2005, just as it was about to be acquired by Adobe, I got an
email that I was invited to their office in San Francisco. I was one of the
20-odd people from around the world picked up for something called the "Lego"
Team. I was overwhelmed, humbled, and scared - to meet all the authors from
whose book I learned ActionScript, all those developers whose files I
downloaded to learn Flash/ActionScript. It was a blast.

If you were into Flash during those times, you'd remember names such as Guy
Watson (FlashGuru), Brandon Hall, Peter Hall, Colin Mook, Aral Balkan, Jesse
Warden, Peter Hall, Marcos Weskamp, Grant Skinner, etc. Well, it was the
congregation of the whos-who of the Flash world at that time.

Well, all of our names were then featured on the credit screen of Macromedia
Flash. Some of us also realized that Flash was dying and something needed to
be done. Adobe came along and well, Macromedia and Flash became just another
archive on Wikipedia.

Next year, 2006, the company I founded was acquired by a Startup from Silicon
Valley. That's when I started my very bumpy Startup journey, and I'm still
chugging along.

Here are some of the Macromedia Flash Lego Summit photos -
[https://www.flickr.com/photos/brajeshwar/albums/720575940814...](https://www.flickr.com/photos/brajeshwar/albums/72057594081435036)
(who do you recognize).

~~~
cpeterso
Thanks for sharing! That's a blast from the past. I used to work on the Flash
team at Macromedia and Adobe in that very office. :)

I believe "Lego" was the code name for Flex Builder aimed at developers.
"Duplo" was the unfortunate code name for a corresponding Flash authoring
application aimed at designers who didn't write ActionScript.

~~~
NTripleOne
Hahaha, Lego and Duplo for developers and non developers, fantastic!

------
Marazan
Flash, specifically Flex, won the battle and then promptly lost the war as
other companies remade the internet in Flex's image.

Adobe's sudden and not at all inevitable betrayal of Flex devs was a huge
shock and absolutely killed Adobe in the field of Rich Internet Apps which at
that point they were dominating.

If they'd pivoted Flex to compile to Javascript then the world as we know it
would be a very different place, one where we would have been happily
producing web apps in MXML markup for the last decade rather than recently
rediscovering it through the medium of React and JSX.

~~~
zwetan
Then you should check FlexJS [0]

Also checkout the last FlexJS Summit at ApacheCon Miami 2017 [1]

[0]:
[https://cwiki.apache.org/confluence/display/FLEX/FlexJS](https://cwiki.apache.org/confluence/display/FLEX/FlexJS)

[1]:
[https://www.youtube.com/playlist?list=PL4EsaSA9xpnnraJX7NzpX...](https://www.youtube.com/playlist?list=PL4EsaSA9xpnnraJX7NzpX6eh_P95RO8Pj)

------
jugg1es
I feel as though the author missed talking about Flex, which really took flash
to the next level. It was short-lived, as it came a few years before the end
of Flash-as-we-know-it when Steve Jobs decided to block it - but it was a
great way to build sophisticated SPA's before the javascript ecosystem was
able to catch up. Thanks Flash!

~~~
sillysaurus3
_it came a few years before the end of Flash-as-we-know-it when Steve Jobs
decided to block it_

I forgot about that. Does anyone have any info about this? I didn't pay much
attention at the time, but in retrospect it seems like it was one of the main
reasons everyone stopped using flash.

Did Adobe try to get Steve to pay a licensing fee, or was he just inherently
against implementing flash?

The excuse Steve made at the time was that it was too CPU intensive to run
flash. I'm not sure how true this was, except for the earliest iPhone models.
I've always wondered what the real reasons were.

It was certainly a good decision in retrospect, but it's an interesting bit of
history.

~~~
acdha
Beyond the security issues, Adobe was just terrible as a platform maintained.
Flash was the largest source of crashes in every browser until they moved it
to a separate process, there were endemic performance issues even in core
features (e.g. video playback was significantly more CPU intensive, and
general code was well behind native speed), and most of the toolchain was in a
state of obvious neglect, from the library inconsistencies (e.g. fonts
rendered differently in some controls in the standard library and many of the
method/property names didn't match), to the wrong or missing documentation,
the many crashing bugs in the IDE, and the debugger which couldn't even pause
on a breakpoint reliably. Nothing ever got fixed because their resources went
into new features but the support people would reliably ignore tickets until
sending a message telling you that it might be fixed in the next paid upgrade
- could you buy it and let them know?

Had Adobe shown even the slightest sign of responsibility it might have been a
different call but at any point after maybe 2002 it was pretty obvious that
you shouldn't depend on Flash because Adobe was just milking the customers.

~~~
Marazan
At the point that Jobs wrote his lie filled "Thoughts on Flash" Flash Player
was vastly more performant at HTML5y things like animations, video and music
playing than doing it in the browser.

I'm not going to defend the quality of the flashplayer architecture and
implementation (due to it's crapness) but it was perfectly fine performance
wise - it was a 'resource hog' because of the terrible, terrible code that
people wrote for punch the monkey flash apps.

~~~
acdha
At no point did I benchmark playback of H.264 in Flash being anywhere near
native speed - huge deal on battery powered devices, or simply playing >15fps
without dropping frames. WebM's software playback was roughly as slow but
nobody used it and Google did optimize it over time, which is the kind of
maintenance which Adobe was uninterested.

Similarly, the fact that Flash was competitive with IE5 is the problem:
browser vendors invested heavily in making that platform faster and richer.
Adobe executives thought they had a monopoly and did not.

------
mortenjorck

      Flash was the great motivator for browser vendors to improve [their] technology
    

Flash was the first technology to really compete with the open web. That
competition (which went both ways, mind you; recall such late excesses as
Flash's Text Layout Framework) ultimately made the web stronger and more
versatile. It's hard to imagine what the world might look like today had that
fire never been lit under the web standards movement.

~~~
merdreubu
At the same time it's not hard to imagine how much better the world would be
today if Macromedia was not sold to Adobe, and Adobe was not scared into
abandoning Flash by the concerted efforts of Apple, Microsoft and the web
standards zealots.

~~~
acdha
Adobe wasn't scared in to abandoning Flash, they just stopped investing in in
the early 2000s. Nothing prevented them from cleaning up the warts, adding an
automatic updater a decade earlier, taking security seriously, investing in
performance, etc.

Part of why the HTML5 group got so much traction was that everyone else
realized that the web's rich application platform couldn't be a company which
wasn't serious about maintaining it.

------
ricardoteix
I was 16 in 1999 when a high school teacher presented me the Flash 4. From
there I built my professional career. For most than one decade I improve my
Flash and ActionScript skills and loved that. I never felt that nothing but
joy when building things with Flash Platform. It was a good knowledge. Even
these todays I did somethings with ActionScript 3. My company developed
educational solutions with Flash for 6 years and the transition to the HTML5
promesse was painful, expensive and complex. I did not realize why Adobe did
not invest some effort to keep us using Flash and ActionScript 3 to build web
applications transpiled to JS (without HTML5 canvas).

Is there another tool capable to compile to iOS and Android over Windows with
no need of a Mac with XCode? I loved that in Flash.

"You either die a hero or you live long enough to see yourself become the
villain". Harvey Dent, The Dark Knight.

Sorry for poor english. I am not native.

------
notwedtm
I had very similar feelings a few years ago. Flash defined what we now know as
the web. Without it, it'd be completely different.

[http://wedtm.com/2015/02/01/thank-you-
flash/](http://wedtm.com/2015/02/01/thank-you-flash/)

------
turnspike
I still haven't forgiven Madobe for killing Macromedia Director - a thousand
hours of my work lost. It taught me a valuable lesson about the importance of
Open Source - protect your investment from the caprice of a single corp.

~~~
DaiPlusPlus
> caprice of a single corp.

There was no sudden-change: they kept on maintaining Director, years after its
main use-cases (kiosk applications, magazine cover demo disc launchers and CD
autoplay software) stopped being relevant.

If my experiences at other software companies are anything to go by: Adobe's
staffers probably wanted to open-source it but were held back by licensed
third-party components.

I haven't seen any true Director Shockwave content on the web since the
original Shockwave.com - it was a handful of games that today could be built
in JavaScript without any trouble.

~~~
turnspike
_> There was no sudden-change_

Yep, it was death by neglect rather than violence. Shockwave was much more
powerful than Flash for gamedev, it had true 3D baked in and fantastic audio
and video support - in 2001. IIRC lack of a timely OSX version killed it.

Arguably it was the same neglect of the Flash plugin on Mac that partly caused
Apple to deep-six iOS support, decimating Flash's marketshare.

~~~
cpeterso
Adobe knows how to milk cash cow products. They only just stopped selling
Director in February 2017.

------
pdkl95
> In my opinion without Flash the current web tech stack might look different.

Without Flash you couldn't do _anything_ at zombocom[1]!

[1] [http://zombo.com](http://zombo.com)

// Now that HTML+JS has has the features necessary to implement the "flash
intro page" experience, I have yet another reason to leave javascript
disabled.

~~~
drawkbox
Even zombocom moved on.

[1] [https://html5zombo.com/](https://html5zombo.com/)

------
AndrewDucker
What boggles me is that it's still hard to put together a UI by
dragging/dropping some fields together.

If Visual Basic (and Delphi, and others) had this basically solved twenty
years ago, why is it still something that's so hard to do for HTML?

~~~
meredydd
It's so hard because Web layout with HTML/CSS/JS is the ultimate Turing Tarpit
[0]. Any tool that tries to offer a simple interface to _three interlocking
programming languages_ is going to have to deal with all the crazy things the
Javascript Framework of the Week will do to the page you're creating.

This is exactly the problem we're solving with Anvil
([https://anvil.works](https://anvil.works)). It's explicitly VB-like - one
language, drag and drop design, and object oriented components. But it is only
possible because we took the deliberate choice to do it all with one language
(Python) with an appropriately simplified display model.

[0]
[https://en.m.wikipedia.org/wiki/Turing_tarpit](https://en.m.wikipedia.org/wiki/Turing_tarpit)

------
lsmarigo
Not just flash, I'm a die-hard fireworks user and was still using it up until
a few years ago, much better than PS for quick web stuff (99% of what I was
doing). Was a sad day for consumers when Adobe bough them out, before they had
to compete with improvements and new features for market share. I still use
Adobe Fireworks regularly over Photoshop.

~~~
devdoomari
how does adobe fireworks compare to adobe illustrator?

~~~
DaiPlusPlus
Are you thinking of Macromedia FreeHand? FreeHand was a vector art editor to
compete with Adobe Illustrator.

Macromedia Fireworks was a raster editor like Photoshop, but was heavily
geared towards "web graphics" (think: Adobe ImageReady). It had neat features
such as text templating, integation with Dreamweaver, and decent sub-pixel
positioning. I used it from 2001 until 2005. I felt it was primarily for
making websites using now-obsolete techniques like tables-for-layout,
spacer.gif, and using heavily manually-optimized graphics and techniques to
achieve effects that CSS was not yet capable of. I may be wrong, but I don't
believe Fireworks changed much since the Adobe acquisition, ensuring its
declining relevance in the post-CSS3 web world.

------
AdmiralAsshat
Once nice thing about Flash (and believe me, I don't think there are many) is
that it can go a long way towards cementing the concept of OOP to beginning
programmers.

I was taking a high-school C++ class at the time, but the whole "everything is
an object" concept just didn't stick. It was still in the abstract sense and
not tangible.

You start to play with Flash and ActionScript, however, and suddenly each
instance is a physical thing you can see and interact with. Each copy of the
thing you make inherits those properties and that action script.

It was a very useful learning experience for me. I worked through a Pong
tutorial and then tried to extend it as a personal project to be a four-corner
pong. It became very clear the benefits of making a position-agnostic "Paddle"
class when the left-right paddles' collision detection went haywire upon copy-
pasting them to the top and bottom of the screen.

------
smaili
One thing I recently discovered that is very cool is Adobe's Alchemy (later
called FlasCC and then CrossBridge) which is able to generate SWFs from C++.
Not too much documentation can be found around it but it certainly intrigued
me to realize you could bring your C++ applications to the browser (assuming
Flash is installed/enabled)!

~~~
christinamltn
I used that for a project where the core business logic was shared with an iOS
app (which was fairly simple but verbose C++ generated from CSV files provided
by a researcher).

Alchemy wasn't very well documented initially but worked just fine once we got
it working. It integrated with the Flash code nicely. Saved me a ton of time
when updating the two platforms and testing the changes.

------
thekenwheeler
I remember way back when, when I first started on the web, I got paid to make
Flash sites. It was a cringey time, but the capability and animation
smoothness, on Windows XP, 8 years ago, was still better than you can get on
the web on a Macbook Pro today.

When Jobs murdered flash I transitioned to web waiting for it to come up to
parity, but it never did.

We've had incremental improvements, but IMO they have been scraps, and the
priority is out of wack. Why are we adding MIDI to a platform that still can't
efficiently do layout?

I recently gave a talk about building a new browser without the DOM, instead
using native UI primitives driven by javascript for our sites:
[https://www.youtube.com/watch?v=WEQx3wz8QeY](https://www.youtube.com/watch?v=WEQx3wz8QeY)

Wherever we land, I just hope to someday get the kind of performance on the
web that I got 8 years ago with Flash.

------
camus2
I liked Flash and still think it is vastly superior to HTML5 when it comes to
games or interactive experiments BUT Flash was a closed source, proprietary
tech that was controlled by a single actor and not future proof. I understand
now the dangers of such platforms and why the web should be free and open.

------
skocznymroczny
The ironic thing is that ActionScript is being reinvented once again in form
of TypeScript and its siblings.

------
wink
I loved Flash - back in a time when there was only a few DHTML tricks and
JavaScript was not a proper programming language, also the lack of proper CSS.

The year I speak of is 2001 and my task as an intern was to create a CMS for
the company that could power a "plain" website at the same time as dynamic
content for the fancy Flash website. It was hell of a lot of fun coming up
with a solution that made this possible. Even managed to make the company
migrate from PHP3 to PHP4 for it.

But not so soon after (let's say 2005? 2006?) I wasn't missing Flash (or it's
cousin, Shockwave) anymore. Good for games, but the more I did proper web
development the more it showed that it was just interactive movies (surprise)
and not so good to work with for plain (html) text.

------
agentultra
> In someway ES6 tries the best by adding classes. But there is plenty of
> other missing features like: final classes, private, public, protected,
> internal accessors. Explicit inline (This is more compiler feature than
> language), strong typed (thankfully we have TypeScript), well designed Event
> System with nice propagation (It’s more like a library feature rather tan
> language), no confusion with undefined, no confusion with this, and static
> variables / functions. Well, public/private/protected are reserved keywords
> in the latest spec... so they're coming.

Personally I don't see these as features but deficiencies.

I liked the Flash creator tools; I haven't used a vector drawing + animation
system quite like it since.

------
adamredwoods
Adobe Animate CC (aka FlashCC) can compile directly to HTML5 canvas, and allow
code injection. It has the same troubles with mp3 and mp4 as browsers do, and
requires knowing some "tricks" (like how to double the canvas scaling for
retina), but it's an adequate tool.

------
drawkbox
Flash was awesome for learning script and rendering. Plugins in the early days
of the web '95-'05+ were needed to push the web. HTML5, WebGL, Canvas, SVG are
all heavily inspired by Flash. Mobile and smaller hardware really put a pause
on Flash's blaze of glory that was all the way up until '07/flex/air etc.
Adobe did not move to cross-compilation fast enough nor did they improve
hardware rendering early enough, Flash was largely run on CPU at the time and
mobile performance was poor. Adobe also really took it hard that ES4 was
shutdown and ActionScript was really the only use of that, I particularly
liked it alot, ActionScript3 was a great language for interactive and web game
development.

Flash also allowed creators to publish, many cartoon shows today still use
Flash [1]. Many have moved to ToonBoom or others but many still use it.

Flash will always be an impressive moment in the web and interactives/games.

Macromedia was quite the company, Flash/Director both really died from Adobe's
hands. I wonder if Microsoft would have bought Macromedia if it had gone
different. Macromedia really created fast web video with Flash/ASF
formats/RTMP streaming and saved us from Real Player, Quicktime, and Windows
Media Player. Flash made possible Youtube.

Flash is still around as Adobe Animate and OSS as OpenFL[2], lime[3], Haxe [4]
and more. Though it is more focused on compilation to target platforms
natively from script and AOT compiling or WebGL/html5 output rather than to
the AVM or runtime ActionScript.

[1]
[https://en.wikipedia.org/wiki/List_of_Flash_animated_televis...](https://en.wikipedia.org/wiki/List_of_Flash_animated_television_series)

[2] [http://www.openfl.org/](http://www.openfl.org/)

[3] [https://github.com/openfl/lime](https://github.com/openfl/lime)

[4] [https://haxe.org/](https://haxe.org/)

------
jondubois
I also started with ActionScript 2 and moved to ActionScript 3 soon after.

Then I did Java, C++, Python and all the others before going to JavaScript.
I've been using mostly JavaScript for the past 5 years.

I actually don't miss any of the other languages, not even ActionScript 3.

I think that you don't really need classes, private methods, protected
methods, abstract classes, inheritance, etc... For web-related stuff.

Games are a bit different because, in a game, unusual edge cases happen all
the time (a game can be in a practically infinite number of states), so static
type checking can help take care of a lot of issues. That said, with automated
testing, you can also get similar stability without having types.

------
hacksonx
Speaking of flash & it being used to build entire websites, this we hear made
it hard to index those sites. I remember when I was at university, the
university network didn't work with android devices because it worked over a
proxy and Google/Android weren't fond of a proxy server because it prevented
them from tracking the user. Lots of tools have died solely because they
prevent bigger companies to flourish. Not saying Adobe aren't big but you know
Google and Apple are massive.

------
danso
I did pretty well for myself building galleries and interactives in Flash and
Actionscript; it was not just a good learning experience, but a more stress-
free implementation compared to getting JavaScript to work cross-browser. I
was still doing AS work into 2009. For me, it wasn't the inevitable
obsolescence from iOS that caused me to quit, but an Edward Tufte seminar in
which I saw that static visualization could be just as compelling as
interactive ones, and a lot easier for end users to figure out.

------
petraeus
The problem with flash wasn't that it didn't create great animations, it did.
The problem was it was not web friendly, you can't build a seo site in flash,
you cannot build a maintainable database driven project in flash. You cannot
build security into flash. Its great for doing little animations but thats it.

------
bowmessage
Author: you have a typo in your header. "Programming and Developmetn
Environment"

~~~
trzeci
Thanks :)

------
orixilus
I feel old reading this thread

------
synja
Actual content creators have a much different perception of flash than IT
administrators, chinstroking tech bloggers and the inventor of Javascript.

