It's a shame that HTML5 never really reached the ability of flash. And it's also a shame that Adobe didn't simply release the swf spec.
It's a shame that HTML5 never really reached the ability of flash. And it's also a shame that Adobe didn't simply release the swf spec.
https://www.adobe.com/content/dam/acom/en/devnet/pdf/swf-fil...
There were a number of tools that compiled to swf.
It sucks that Adobe never opened the Flash Player. That was it’s death nail. They had little to gain from it. It was free. The money maker was Flash Studio and other Macromedia tools.
If Adobe had opened Flash and had a sane security Sandbox it would have survived iOS. Adobe was like the old Microsoft though. They just didn’t get the power of Open Source.
Hehe. Not really. Jobs may have put one nail in the coffin, but Adobe killed flash. And flash was already dying because of abusive ads and HTML5 before Apple said anything. Here’s one of the Flash developers backing that up: https://m.slashdot.org/story/324267
For years, they were terrified of making any changes, especially ones that might break backward compatibility. This lack of ability to change anything meant their brightest never stuck around very long. This only made those who were left even more terrified to make any changes because the institutional knowledge was gone. It's a vicious cycle.
By the time they realized they had to make serious changes and started work on stage3d, they didn't have the expertise necessary to pull it off.
That's an interesting comment. I actually wonder whether this eventually happens for any successful product. At the end this gives competitors a chance to surpass the product. So it's definitely a cycle.
For example, the fact that most engineers need to job hop in order to get promotions and raises. That makes it nearly impossible to build up long term institutional knowledge at any one company.
Another example: everyone in a publicly held company, from the rank and file programmers to the CEO, are rewarded for short term sales at the expense of long term stability. We had a thread here not too long ago[0] about how being a "maintenance engineer" was career suicide.
Mobile killed Flash. It was a poorly implemented technology which was acceptable only during the era where electric power was unlimited, and people were in the habit of frequent reboots to update their OS anyway.
For those of you half-considering building a Flash player replacement, I suspect the majority of Flash content (especially pre-AS3) can run performantly on modern mobile browsers with a canvas Context2D shim. Maybe even on 2010-era mobile devices.
Why is it on Apple to save Adobe’a software? Why not Microsoft, BlackBerry, Google ... or Adobe?
> Instead Jobs decided business wise he could lock devs into developing native apps in the iOS ecosystem
iPhoneOS lacked support for Flash long before it had a native SDK. Jobs decided the answer was HTML, which is exactly the opposite of a locked-in ecosystem.
Here is the Jobs quote from when this happened: "He takes a while to get there, but eventually he puts the notion into a nutshell. "Flash is a cross platform development tool," he says. "It is not Adobe’s goal to help developers write the best iPhone, iPod and iPad apps. It is their goal to help developers write cross platform apps.""
""Applications must be originally written in Objective-C, C, C++, or JavaScript as executed by the iPhone OS WebKit engine, and only code written in C, C++, and Objective-C may compile and directly link against the Documented APIs"
> Instead Jobs decided business wise he could lock devs into developing native apps in the iOS ecosystem, scapegoat performance and security for the ban, and gain a competitive advantage at the same time
Steve Jobs never even envisioned the App Store model when he decided against supporting Flash in Safari.
From https://en.wikipedia.org/wiki/App_Store_(iOS) :
>... prior to its unveiling in 2007, Apple's then-CEO Steve Jobs did not intend to let third-party developers build native apps for iOS, instead directing them to make web applications for the Safari web browser. However, backlash from developers prompted the company to reconsider, with Jobs announcing in October 2007 that Apple would have a software development kit available for developers by February 2008
You can also read about an actual iPhone engineer's thoughts on the matter https://finance.yahoo.com/news/apple-engineer-reveals-real-r...
Interesting tidbit: Apple was actually trying to work with Adobe to iron out Flash's security problems but was rebuffed.
Anyways, the fact is, the App Store was actually an afterthought.... An accident of history that even Steve didn't see coming. The decision to forego Flash came way before that.
Let me translate that:
Steve Jobs did not intend to let anyone else profit from iOS, instead directing them to make web applications for the Safari web browser that would provide subpar experience.
They released a publicly accessible SDK in less than 4 months? And you believe it wasn't in their plan at all to allow anyone else to develop on it? They clearly planned to have a way to sideload app on it. Itunes already existed since 2001, it wasn't anything new for them. The only things they decided to change was to allow everyone to access it.
Flash would have been a way to allow everyone to access much more powerful feature. This is why they avoided it. The app store was an alternative that allowed them to keep control of it.
This combined with updated app review guidelines banning flash on iOS accelerated the adoption of html5.
Afterthought or not, apps quickly became the biggest selling point of smartphones from the second gen onward and many technical architecture decisions had the intended effect of locking developers in. Ports to android were often delayed by months and years if they happened at all.
It's also been established that Apple tried to work with Adobe on addressing the issues it saw with Flash but was rebuffed.
The issue of Apple forbidding non-native code is one I disagreed with but has many layers and complexities. It's not nearly as simple as your implication that Jobs seemingly woke up one day and decided to kill Flash for no good reason.
> rant about flash while not once mentioning the shortcomings of his own objective-c authoring environments and the many good things about flash that lead to the enormous community it had
I'm just going to re-phrase what the poster above said - Why is it on Apple to evangelize Adobe's software (and criticize it's own)? That just doesn't make any sense.
It makes a lot of sense if the primary goal is to make good technology and software. Is that seriously so hard to understand?
Everything he did mention, from power consumption to terrible security and poor usability has since been proven true. I don't know of a single reputable technologist, or tech journalist, who would dispute that. Do you?
Here's a write up of why Flash failed on Android. Notice any familiar themes?
https://www.extremetech.com/computing/134551-why-flash-faile...
Wait, what? They had years to demonstrate it working well on Android. They failed. Spectacularly. Why are you ignoring widely accepted fact of tech history? Are you implying that is also Apple's fault?
Look, if you want to discuss Apple being anti-competitive I'm all ears. I more or less agree. But using Flash as an example does nothing to help your argument. That's because everything Apple claimed about why Flash wouldn't work on mobile was later proven to be true. Everything.
Flash on Android was a disaster. Ignoring that fact to claim it could have worked on iOS (because... magic?) is nothing but revisionist anti-Apple zealotry.
Never let facts get in the way of a good Apple-bashing I guess.
As a game developer who has programmed in ActionScript3, I can tell you that Flash was very performant for 2D graphics.
Compare that to Flash video series like Homestar Runner, every episode had little Easter eggs where you could click on background characters to unlock a bonus scene about them. It really helped you feel engaged with the medium in a way unmatched by anything but full-length video games.
AI can do a decent job upscaling flash-style content from low res videos.
Tom Fulp from Newgrounds has nice things to say about Construct, and we’re getting very positive numbers from other portals and platforms (some very big) that a lot of volume of games and good quality ones at that are being published with them using Construct 3.
I’d like to hear from more experienced Flash users if there’s anything Construct 3 can’t do that Flash could as it would likely be an important feature we’d be keen to add!
Basically, it has to have a name amiable to becoming an umbrella term. That gave Flash such a "universal" connotation.
I hope this makes sense - trying to convey the _peculiarities_ of "Flash" which made it (as I see it) successfull and distinct in character.
Due to the nature of present browser APIs you cannot name your editor WebGL or something that produces WebGL. But if you made an editor called Sparkle or something that produced .sparkle files that had native browser support you would have the same nomenclature going on. But native browser integration and containerized file formats with external editors aren't a well made match.
Adobe has been trying to maintain backwards compatibility with flash (because most studios were still using the last version macromedia put out over 10 years ago) So adobe animate was always doomed to try and please everyone and end up pissing everyone off.
eh, no it hasnt, and even if it did it would have nothing to do with flash. Flash was a great domain-specific tool for somthing that is significantly more cumbersome to write (and difficult to debug, and less wysiwyg) in canvas. Plus technology is supposed to move forward and 20 years is a geologic timespan in internet years. We expected to have much, much better tools by now, not a barely equivalent
Back then, a Flash game was the epitome of web entertainment. Now, we have thousands of amazing Youtube videos, Netflix originals, memes, and so on. If you were to give people the same flash games now, they'd find them ridiculously lame.
> If you were to give people the same flash games now, they'd find them ridiculously lame.
Some of the most popular social games are like farmville, or some poker games. those are really equivalent of flash
On Unity I agree. It's never going to have 50kb games that download and start instantly. It's also not particularly easy or good for working with 2D games. I've used both professionally.
thats exactly why i mention them . i meant to say their current html versions are equivalent of their previous flash
But it gets really pedantic arguing the semantics of web flash - fundamentally it was only showing on a web page because you installed the browser plugin or it. Today browsers might have stopped supporting arbitrary library plugins like that but now you can write them in webassembly for the same ends. Its just that nobody has actually gone and done it yet.
We have tons of memes uploaded each day, with crude animations, that could have been 10x easier with flash...
I think the modern browser is technologically superior to what and how Flash did things (with the exception of native sockets, which is probably for the better). It's really everyone using Adobe's content creation tools (which were well integrated/designed) that made things so low friction.
It took a long time for the browser technologies to catch up but I wonder if in the end it integrates as one system better than bolting on an open flash spec would have been.
More to the point, I think that the current DRM scheme is inherently and completely broken. I could use it and let websites pretend it's useful, but it's not worth the increased quantity of proprietary code to me.
The nice thing about the way EME was implemented is if you aren't one of those users you can simply disable Widevine or (if you prefer to not even have proprietary code on your computer) use a build that doesn't include it.
The public premise that DRM is about stopping "piracy" was always a lie. Obviously, it can't do that. In fact, DRM encourages piracy by reducing the value of non-pirated versions of things.
DRM exists to control and manipulate regular, honest customers, such as making them watch ads or to pay over and over for different copies of the same thing even when they actually have the legal right to make copies for their own use.
I really feel like flash's heyday was before adobe bought it up. Most of the best flash sites, newgrounds and stuff were more active and had tons of content while Macromedia still owned flash.
Depends on what you mean by superior. There are still things Flash could do and modern “open web” can’t, determining keyboard state (caps lock state and current input language) is one example.
Macromedia / Adobe released it quite a bit ago (while Flash was still popular).
Lots of solutions to this:
* SickBeard ran a local web server and the UI ran in your browser.
* Electron / Nwjs
* Whatever Microsoft has planned for Electron (Electron Runtime?)
* That Microsoft compiled HTML format thats defunct mostly (chtml).
As much as everyone hates on the web. Its a consistent UI platform. Not 100% consistent every single time but you can get pretty darn close.
But that’s not what we’re talking about, is it? We can ask what’s actually being done in web design these days… and who’s doing it. If you’re old enough to remember the period from the late ’90s to the mid aughts, think about your friends who were putting all kinds of wacky, creative pages on the web. Picture that personality type. What place does it have in the universe of websites that we visit today?
The answer, as far as I’ve seen: user. We spend time on a smaller number of sites/platforms. The design of those sites tends to be (at its best) streamlined and optimized. And people who want to share their creativity are given little frames within that structure.
Even personal websites are usually built through WordPress, Squarespace, or similar. Something has been lost. I’m not going to say things are worse nowadays. That would be too sweeping a judgment, even if I substantially agreed with it, and I think I don’t. But I get this weird feeling when I spend time online, like it’s a tree that died some time ago, but it’s being reinforced, made to stand straighter than ever, given artificial leaves that never turn, etc.
We know there are better technologies security wise and performance wise. It's not always about what is 'technically' better rather than something that people enjoyed using and opened the door to creative personalities for the web. There is a time and a place for both and I think there has been neglect for the other side of the brain.
contestable. html5 games can be choppy in ways flash was not. even streaming video was pretty fast, comparing it to something like webrtc multi-party video. Hell even basic text-based chat like slack is a resource hog in html.
I personally find that mode of development distasteful, and I don’t share the author’s affection for this particular breed of "creativity," but anyway it was there and some folks liked it and there’s a real opportunity for someone who wants to reimagine it.
- you had types, performance was important so you had generic types like Vector , the code was compiled and it was really fast
- there were built-in efficient GUI widgets, you could have a list or table connected to a data provider with tousends of items but the components were smart and only created enough UI widgets as needed to render, where in HTML you either have to create a LI element for all your 10000 elements, create pagination(is not built in), create infinite scrolling(not built-in)
- it was super easy to customize or extend the provided things if you needed , as an example in HTML look at the <select> it is not customizable, everyone has to implement it's own using divs, css and js , but everyone gets it wrong in the corner case(you have issues where the dropdown pops outside the screen, missing events, hell even youtube search box sometimes breaks and the dropdown popup remains stuck open, so even Google engineerscan't create a working dropdown component
- performance, remember when a blinking cursor was causing an electron editor to use a lot of resources , the issue with web is that was designed in rush for showing documents.
- layouting components was super easy , theming was easy - with css in large old projects there are so many issues( I know people use less but this is not standard )
I have some solutions too, browsers need to provide more powerful components, if we want to do RIAs or desktop apps then we need the same components that desktop toolkits offer with the same customization. Other issue I seen was in a project where the devs ahd to import a third party library because the scrollbars can't be themed in all browsers , I am not refering to the right side of the browser ones(I know sme people hate if you change those) but scrollbars on a list or dropdown component. So you have projects where you import 1 lib for scrollbars, 1 lib for modals, 1 for fancy buttons and inputs, 1 for drag and drop, 1 for calendar widgets, 1 for dropdown that allows you to have icon + text, and of course a framework like angular or react . Browsers should check what developers need the most and add that as standard( ex better dropdowns) you would still have the ability to make your own shit and use your preferred framework
Someone with artistic talent could quickly learn flash and get something bizarre working very quickly. Drop the minimally skilled into a modern development environment and novelty is much harder. 95% of the time that’s probably a good thing, but it sucked a lot of the fun out of the internet.
In terms of capabilities though there was much less worry about compatibility.
ensuring that the user sees the exact same thing on any browser / operating system combination ?
Just the font rendering differences between windows / mac make it impossible to create text that is supposed to fit perfectly in a given box because hinting differences may mean that you are a few pixels longer which can change the layout of a paragraph, etc...
with flash, there is only one single way things look across all platforms.
A consistent display was a nice thing to count on when making little games, applets and ads. However for general web layout it made accessibility features difficult to impossible to implement.
I'd also add that behaviour wasn't always consistent. There would still be OS/environment specific bugs that would crop up from time to time. (Though granted, these would rarely be related to rendering or layout)
well, that was not the point of flash, was it ?
And make it streamable. No, your fancy JSON over Websocket is not exactly streamable.
Still, I don't think we have an adequate replacement, even it would be technically possible, I don't know about similar tools for vector animations..