It was overused, terribly, and often used for questionable purposes (e.g., rendering a static website, or the dreaded SIFR). But it was like MySpace in how well and quickly it democratized creativity on the web, except it also afforded motion and games and video. Flash was great.
Adobe is awful, though. I’m not sure if Flash is the most useful thing they’ve killed outright, but it might be. I almost wish I could believe it was intentional, that they bought it to kill it. I really do think it was pure greed and stupidity, though. Most of what Adobe has done in the last 20 years is rent-seeking.
Imagine if they’d been a good steward of the tech, made it stable and performant on low-power devices. Yeah, Steve Jobs put the final nail in the coffin. Adobe administered the poison and tailored the funeral suit. Screw Adobe.
2advanced was the epitome of flash design. I don't think I was ever really paying much attention to the content, but it was fun to interact with the UI.
https://www.webdesignmuseum.org/gallery/2advanced-studios-v1...
EDIT: They're still going!
All on canvas now, but same kinda feel. Makes me think of command and conquer.
A portable runtime isn't that hard. An effective and approachable authoring tool is the real challenge.
Anyone whose made an Instagram filter or TikTik effect recently - it was like that, though even easier, but allowing you to do actual coding right down to very low level stuff should you desire.
and you could get push your creation to any screen in the known universe with essentially zero testing.
Pretty sure half the internet surfers had plugins that made flash run only when user activated by the time it started to wane.
Personally I only activated it for games i wanted to play, so most of that creativity was lost on me.
Obviously flash was not designed for small screens or small batteries.
But it could have been adapted! If Adobe had been in any way competent or caring the flash runtime could have been converted to html5
But Adobe suck
It was the same even before mobile phones. Laptops had batteries too. CPU fans sounded even worse than today when pegged at 100%.
I remember the time when pc fans hearable meant 95% that i opened a web page with a flash component by mistake...
Humanity has proven it can't handle anything else than static pages. Then the developers themselves have to pay for their bloat rather than the users.
I think a Bret Victor, "Inventing on Principal" style editor would be perfect, combined with some sort of scratch like Python IDE where each element is defined in terms of its reactive behaviors with other elements on a timeline.
I didn't say easy, I said not too difficult. Order of magnitude difference. :)
https://youtu.be/PUv66718DII?t=634
With some http://lighttable.com/
If you just want to make animations, skip actionscript entirely. If you want some extra Easter eggs, just turn any symbol into a button and you can trigger any movie clip you want. Want to make this a whole game, heres the whole action script editor.
Maybe wasm+Canvas is getting close to being stable. But if you code up a webgl game and test it on desktop Chrome, odds are it'll just be a black screen on anything but the most popular Android devices, and you'll need to do tons of work and testing to get it to run on an iPhone.
And WebGPU is probably at least 5 years away from being stable enough to be considered to "run everywhere".
I strongly considered trying to do this a few times, but ended up writing an swf parser in C++ and used Skia to render. It's probably the best we can do right now, but we still regularly get players who complain about just seeing a black screen.
And those were THE best vector art tools, because when you drew a shape and the shape overlapped with another, it automatically erased the other shape like you would expect it to in a raster graphics editor. In pretty much every other software I tried, e.g. Inkscape, Affinity, Corel Draw, Illustrator, you just get two separate shape objects one on top of the other. They seem to be designed for drawing the outlines, not to actually paint with brushes. Flash understood what was intuitive for artists.
Honestly, the older I get the stranger I feel about the fact that there was a brilliance in creating interface for people to be productive with back then that seems to be completely gone. I think this may be in part because desktop applications are unusual nowadays, but it's just really strange that the things I remember seeing have been done exactly once and never copied by anybody despite how well they worked.
And yes, locking unmergeable files is essential either way.
It isn't great that are now so many Git GUI clients written in Electron?
The new Flash is a whole other pair pants. Also if people want to make easy things for the web in a closed platform, Unity already exists.
To the point they gave a free flagship Android smartphone with Flash installed on it to every employee, to try forcing some internal dog-fooding.
What was happening is this: Adobe inherited Flex Framework from Macromedia. It was atrocious. Bloated, slow, unusable for games or simple interactive applets which made Flash popular in the first place. They tried to market that for creation of admin tools like what VSPhere used to have. The community was crying and complaining to Adobe that they aren't making any effort to support what Flash was good at.
Then smartphones appeared. And Adobe's engineers came up with Flash Catalyst. Conceptually, it was supposed to work similar to Flash or Fireworks, but it was supposed to render its output into generated Flex Framework code. Tons of unjustifiable bloat. Everything was too slow and too big. And whenever the people able to get their hands on the preview complained about it, the answer was always "it's not going to get faster / smaller".
Catalyst came with templates for "typical" phone apps and they were a disaster to deal with. So slow users would probably understand them to be simply broken / frozen. Oh, but Adobe assigned a bunch of career managers to these projects. People came made a lot of promises and got promoted into another department. It was painful to watch.
At the same time, I wrote a project that I called "Frameworkless MXML", it was more of a demonstration than an actual useful library, but the goal was to say that the original inherited framework might be stripped off a lot of bad components and made to be a lot faster and smaller. But it was just that, a PoC that never went anywhere.
I had no interest in working with Flash on smartphones because I see smartphones as proprietary jails and am not interested in contributing to that market. Few people in Flash OSS community probably also felt distaste for the smartphones... and the vast majority were the "non-contributing" users. They waited until the tower completely crumbled and jumped ship.
The web today is a much more capable ecosystem than "HTML5" was for the original iPhone, and while many web developers crinkle their projects into minified source or opaque WASM blobs, every user has browser developer tools at their fingertips for peeking behind the curtain and making changes live.
It is perhaps most surprising that in the post-Flash world no comparable development environments have sprung up to replace its end-to-end animation and interactivity workflow. Game "engines" like Unity and Godot have captured much of the game development audience for Flash, but their ability to produce web exports is clearly an afterthought, producing huge files, glacial load times, and often simply crashing in any browser that isn't a bleeding-edge instance of Chrome.
I think the reason people say nothing replaced Flash is because now there are lots of tools instead of just one, as anyone can target HTML5, so the market has fragmented; and the market has changed, as people develop for app stores and platforms like Steam, so the web isn't as big a focus as it used to be (although it's still important).
I couldn’t bring myself to pay the hefty monthly fee though, knowing my kid’s interest would wane and then her creation would be forever inaccessible unless I continued to pay.
One thing I would have gladly paid for is asset packs, being able to adapt some great sprites and background art would have been a killer feature.
The most popular commercial competitor of FB was FDT (Eclipse-based plugin, just like Flex Builder).
This is opportunity. For a startup.
A few years later, I did use Flash to teach students interactivity (in 2016, I was wondering why myself, but hey, university courses are hardly up-to-date) but there was little other reason to use it.
Today, I still rate AS3 and if there was an LLVM project to output, I don't know, WASM, or similar, I'd try it. Oh, there are?
- https://github.com/bvibber/wasm2swf
Of course, MTASC wunderkind Nicolas Cannasse went off to create https://haxe.org/, which was used quite well on Smart TVs and the like for a while, still used in games. Maybe we already have the answer, but the web is too boring for this stuff.
The shareware CDs were fun, because they always had enticing titles like "More than 800 games!" or something like that, and as a kid I would dig around the directory structures and play the weird stuff that they had pulled off BBS's. Some of them games would be good, most of them would be pretty mediocre, some would be bad, but it sort of felt like you were unearthing stuff, trying to find an interesting game as you played.
Similarly, I would do the same thing on Newgrounds a lot as a teenager. It was fun to find unique games, especially since a lot of these games really had no ambitions of making money, so they could so a lot of things that you couldn't get away with in retail games. You could make them hyper-violent, or gratuitous sexual content, or just odd humor that wasn't really meant to be understood by anyone but the creator and their friend group.
My first "real" job after dropping out of college was writing Flash and Coldfusion software in 2012, because I had cut my teeth with Actionscript as a teenager. This was after Steve Jobs' infamous letter, but Flash was still more or less relevant, and I'm grateful to have had paying work with it, if only briefly.
You can actually still find a few of these old mega shareware CDs on Archive.org under the Shareware CD section.
A lot of them were definitely ripoffs, but I was young enough to not know about most of the originals at the time, so to me they were all completely original games. It was awesome.
They also start instantly, and can be created quite quickly. Creators there are often young, experiment rapidly. There are platform-specific trends that someone invents, and which then spread. I fully expect to see new genres and widely known creators being born there.
For instance the creator of the massively popular Steam game "Lethal Company" got their start making Roblox games.
https://www.theguardian.com/games/2022/jan/09/the-trouble-wi...
This is much worse than whatever Flash has achieved.
I think the first glimpses of freedom was what made those moments magical.
Now the Internet is even more filled with cool and exciting stuff and I definitely take that for granted.
Even just being able to type "hi" and get another human reply with "hi" was mindblowing. Similar to today but for different reasons.
It also wasn't expected, it was clearly from the pre-web2 era, there was no upvoting, I believe there wasn't even a comment section. There was nothing to really suggest that how you use the site would directly affect how it'll look (beyond influencing the operators). Top 10 games would obviously have meant a similar thing as top 10 stories on a news site - clearly an editorial decision, where clicks and expectations thereof ofc play a role, but it's not an automatism.
At the time with no guidance, trying to build desktop applications was overwhelming (I couldn't figure out where to start), and building complicated games in the browser with HTML and JavaScript wasn't a thing (there was no HTML 5 or web canvas). Building a real game in a real game engine felt impossibly out of reach for me at the time.
Flash, through ActionScript 2 and 3, gave me that portal to make something real, and taught me all of my fundamentals around loops, functions, arrays, etc. I found a home in StackOverflow and learnt a huge amount. I won't pretend that my games were great, but they really helped to solidify that programming was something that I loved.
Without Flash I don't know that I would be where I am today. I now work as an IC in a huge international company. I didn't go down the game development route as I assumed that I would, as I learnt that my passion was in programming itself and not in just writing games. The Flash games were on my personal website when I applied for internships, and I'm sure I have them to thank in part for helping get me through the door (my interviewer did check out the projects on my website).
I was sad, but understanding, when Flash finally came to an end. It felt like an end of an era for me, despite having not used it for a very long time.
If you got this far, thanks for taking the time to read my reflections!
Until Steve Jobs went on the toot horn and told everyone Flash is terrible and it needs to die. No surprise there, old Steve just launched the app store and wanted 30% of every game thank you very much.
Then to everyone's surprise, the Adobe CEO went on TV and agreed publicly that Flash had to go and we're working on better "open" tools.
All flash developers around the world, even "certified" ones like me (lol!), watch in disdain and disbelief. We're HTML5 developers now. Back to backbone and jquery we go!
Long Live Macromedia Flash, and F Adobe. AS3 was OP back in the javascript days where it couldn't parse int properly. Flash got ridiculously fast after years of improvements, and it was unique with this blend of timeline and scripts. Adobe Flex was also a decent web application framework. We don't talk about Director anymore, as well, who was a very powerful tool.
All of that is gone now, replaced by teams of 5 people to do the job of 1, and basically trying to get as productive as we were then.
But what about game frameworks for web games today? A wasteland. A hundred possibilities and none of them doing a particular stellar job.
When I was a teenager, it was almost magic; I could draw a little cartoon, convert it to a movie clip, and export it to code; the fact that Flash was an animation-first program meant that it was really fun to draw with, and its integration with code made it so much more fun.
Now, part of the reason I have such rose-tinted glasses is because I was a teenager while using it, but still, I just don't think anything has had the fun "prosumer" feeling that Flash did. It didn't feel like it was just a "toy", but it also did kind of feel like a toy.
There are some more modern things that are cool, don't get me wrong: Pico-8 is pretty fun, and even more professional things like GDevelop or GameMaker can be fun as well. It just doesn't quite reach to the level that Flash did.
I do understood why the platform died, but I am also kind of sad that it did.
So you can theoretically use the same flow as in your memory. I wish the price was not what it was, and I do not pirate software anymore. And Adobe's tricks when it comes to subscriptions are so nasty. This is a huge barrier to me trying to use Animate for anything, even though I'd probably enjoy it so much.
Timeline-based programming is such a good system for one-offs.
I’ll throw out one theory:
It attracted the most creative developers and not necessarily the most technical. There is a difference and both belong on a team.
People, including developers, consistently underestimate work that needs to go into developing good user facing tools. And a lot of that work is not fun, not exciting, just work you have to do.
Still, I wish someone would make a clone of the Adobe Animate program that directly exports to WASM, with all the artsy bells and whistles that I loved about it. Specifically, I would like something that I don't have to pay a monthly fee for forever. It was my first "real" experience with writing code, and I know I'm far from alone with that.
Pico8 and Game Maker and GDevelop and Scirra Construct are still fun, so it's not like there's a shortage of game making toolkits for younger people to get into this stuff. I just miss Flash in particular.
It also doesn’t help that it’s two pronged: Flash is an animation tool and a software development environment.
There are some great animation software packages out there like Toonboom or even something like Moho or Opentoonz, but as far as I am aware they do not have the same kind of direct integration with a programming language like Flash did.
On the other end of the end of the spectrum, you have tools like Game Maker which do have programming as a core feature, but you’re expected to do animations elsewhere and import them in.
So Flash is a competent tool across two complicated domains.
> Then to everyone's surprise, the Adobe CEO went on TV and agreed publicly that Flash had to go and we're working on better "open" tools.
I've got no love for Jobs, but he wasn't wrong. Flash games were a lot of fun, but flash restaurant menus were terrible, and I'm sure the Adobe CEO was tired of pushing security fixes every other week. Also, I thought Jobs contributed to the death of Flash in the browser should be enough times, before third party apps on iPhone OS were a thing at all?
I also don't miss trying to get flash to work consistently on Linux.
Wait... I'm hearing that actually restaurant websites still suck but in HTML 5 now
I wrote this [0] in 2010 and it remains my one tech prediction that actually came true.
A good example of where things lie today is StyScrapers[1] - a flash-like game completely implemented in HTML - not in a canvas but with div elements controlled by the physics engine. It runs smoother and uses the browser much better than flash ever could.
[0] https://sheep.horse/2010/2/mobile_safari_does_not_support_fl... [1] https://vole.wtf/styscraper/
But fuck Adobe because they didn't give BlackBerry the latest runtime.
Adobe killed Flash when they bought Macromedia.
We're talking about a viewer for Flash web content, though, not freshly authored applications.
As point for reference: there was a Flash plugin for Android, for a short while (around 2011-2012). It was awful - not only did a lot of Flash content just not work at all (because it required mouse/keyboard style input), but any content that'd run at all would typically run very poorly on even high-end phones.
A) wasn’t a port of a Flash game B) had something that wasn’t possible with flash C) can be installed and available as easy as Flash
After a brief period of creativity, every mobile app regressed to 'search bar on top, list in middile, tabs on bottom' UX. Even this best case UX is mediocre at best.
The fundamental flaw is that touch is imprecise and your finger covers the screen, which is unsolvable without buttons.
The lack of buttons killed all creativity and possibility of having a good UX for games on smartphones.
Then a day or so before that feature left beta, apple added a vague new clause to their app store agreement, which made no sense on paper but whose obvious purpose was to disallow flash apps. They then unpublished all the existing flash apps for violating that clause. Adobe quietly cancelled the app publish feature, and a few months later apple quietly removed the clause.
Adobe AIR is actually still available today (now maintained by Harman through an agreement with Adobe), and it can still compile native iOS apps that can be submitted to the App Store. This feature was never removed, and is still maintained to be compatible with new iPhones.
There was briefly a kerfuffle about it, as people using other cross-compilation tools (xamarin? etc) worried their apps would get removed as well. But IIRC apple never actually enforced the clause, other than to remove existing flash-based apps and reject new ones.
No keyboard: which broke most games.
No mouse: touch is not the same and hard to fake mouse controls with touch while supporting pan or zoom.
Small screen: flash was designed for bigger screens and everything was too small or needed zoom.
Flash wanted to control its event/animation loop: battery life was drained quickly even for basic content.
Mobile didn't kill Flash.
You see the same UI issues when controlling a Remote Desktop from a phone screen. Just difficult.
Many Flash haters have no clue that before Unity and friends many of the first generation games on iOS were actually AOT compiled Flash games, despite Apple.
However Adobe decided it wasn't worth it, given how plugins were going on browsers as well.
Naturally the Flash hating mob never got this.
This is still true today - there are very few fun games you can run on a phone. The primary problem is that phones only offer a single control, touching the screen.
I constantly have problems with the crossword puzzle app I have installed on my phone, because I can't reliably touch the right letters on the on-screen keyboard. Flash isn't the problem with putting games on a phone. Flash was a tool that people used to make fun games, but making fun games is pointless if you want people to try to play them on a phone.
https://www.amazon.com/BACKBONE-Mobile-Gaming-Controller-And...
Modern phones are very capable of playing some pretty serious games. It’s fine to get a few accessories as I do agree fingers aren’t ideal.
A stylus can solve the problem of not being able to target a point on the screen. It can't do anything about the problem that your game has to run off of a single control. Games need to be able to let the player do more than one thing.
They fixed this some time in Flash's twilight years, and CPUs got so fast that the frame rate issues kind of went away on their own. But making large chunks of the web experience depend on a piece of such flaky, proprietary software was not the wisest move the internet made.
I was working in the Flash animation scene in the 00's and I spent a couple weeks suffering some bugs that only popped up on the Mac editor with large files. Load huge FLA, make a couple edits, Flash 5 crashes. And it somehow manages to crash so hard that it immediately falls over if I try to run it again, I had to reboot the whole damn OS9 Mac. Which was one of those "cool G4 supercomputers". Load huge FLA, make an edit, immediately save, maybe get a couple more edits, crash, reboot, swear, swear, swear. This bug didn't exist in v4 of the editor but there was no backwards compatibility, so we were stuck.
After a while I stopped swearing out loud and just wrote FUCK on a post-it and stuck it to the bezel of my monitor; I think I had a couple of layers of those by the time I was done. Enough to take them off and stick them up on my window and form the word FLASH.
Eventually the studio acquired a Windows box (we were an all-Mac shop) and found that this bug didn't exist on there. We were not happy about this discovery.
Audio sync was terrible across the whole Flash platform too, by default all the audio was not synced with the frame draws, and if a frame took too long to draw it would not skip ahead. There were workarounds to be discovered but they were obscure and often treated as secret knowledge by people who wanted an edge over other animation studios, I never disassembled any Strongbad Emails but I wouldn't be surprised if the Brothers Chaps never found them until they went off to Hollywood for a while.
This oddly reminds me of another exchange on HN, in which someone said that the state of software tooling for learning Japanese was very good - in that there are a lot of software developers interested in the problem, and therefore there are a lot of tools around that those developers have built - and the counterpoint came up that while Mandarin Chinese really has just one tool available, Pleco is significantly better than every tool that exists for Japanese. The more vibrant competition in Japanese tooling doesn't seem to have produced any benefits.
I can't pretend to have a good diagnosis of why this occurs in modern web game frameworks or in language tooling, but in the language tooling there does seem to be an issue of crowding out - a high-end Chinese-English dictionary is $20,¹² whereas LogoVista's Android edition of the Kenkyusha Green Goddess is $65³ (and if you want English-Japanese in addition to Japanese-English, that's another $65).
LogoVista's app has the UI entirely in Japanese, making it a challenge for Japanese learners. But with the dictionary costing that much, anyone thinking "I can make an English interface for this!" might well decide that licensing the dictionary will prevent them from ever being able to turn a profit.
¹ And every Chinese learner I've ever met, other than myself, won't even pay for that - they stick to Pleco's vastly inferior free dictionary. But even that is infinitely better than what you get in Japanese tools, which use the equivalent of CC-CEDICT.
² https://www.pleco.com/products/pleco-for-android/pricing/
³ https://play.google.com/store/apps/details?id=jp.co.logovist... ; I'm not sure what the iOS pricing is currently like, but if someone's interested it's available as paid content through https://apps.apple.com/us/app/dictionaries/id1380563956?plat...
If we'd had the kind of support for sandboxing then that we do now, they probably would've survived a lot longer.
I don't mean to diminish anything you say, of course, it's all true and these flash games are a cherished point of my childhood. But the true loss hasn't been flash itself but the creative tooling that enabled a generation of artists to express themselves and create fun things and the communities that arose around it.
https://web.archive.org/web/20170615060422/https://www.apple...
Flash Game History - https://news.ycombinator.com/item?id=23922206 - July 2020 (69 comments)
It has a PDF viewer already!
Just this past week Trump made a tit of himself on camera with Zelenskyy. If this happened in 2005 there'd already be some minigame out where youd be Zelenskyy fighting JD Vance.
But flash is bad because it's not semantic markup, so instead we have react slop serving reaction videos istead.