Live data from Hacker News

Ask HN: Are there things that Flash did that we still can’t do with today’s web?

news.ycombinator.com

101–110 of 159 posts

Re: Ask HN: Are there things that Flash did that we still can’t do with today’s web?

#101

Look the same on all platforms. Allow artists to create simple animation quickly. run fast. The key selling point of flash was that it was an author once, run anywhere tool. I could use keyframe animation along with a simple scripting language to make almost anything. Not only that it was fast to build and deploy. Nothing I've seen recently allows an artist to do the same. I've tried a couple of times over the years…

I noticed that around the death of flash and the rise of games using new native technologies on the web, a lot of “web games” were technically or graphically impressive compared to anything done with flash, but felt very sterile and and soulless. Flash games had fun narratives, stories, etc. I wonder if it just attracted a different crowd.

Re: Ask HN: Are there things that Flash did that we still can’t do with today’s web?

#102

A lot of answers already boil down to, basically, superior developer experience. But there's an aspect of this that I want to highlight: resource efficiency. Around the latter half of the 00s, I had a Windows XP machine with 256MB of RAM and a Pentium 4 processor, with a matching spinning metal-disk hard drive. I could make decent Flash animations and games with it. I could view entire websites in Flash with Internet…

Please get a SSD today. You stress me!

Let me stress you more. I use a mid-2010 iMac as a daily driver. It still uses the original spinning disk hardware with more than 77000 Power_On_Hours. SMART says Old_age.

I like living dangerously.

Re: Ask HN: Are there things that Flash did that we still can’t do with today’s web?

#103

Maybe there is a vector animation tool that is as easy to use as Flash was, but that fact that we rarely see vector animations like we did back in the day makes me think not. I used to work with a group that created training materials using Flash. We had a bunch of animators that knew nothing about coding, but they could produce all of these amazing animated videos using Flash. They could also produce interactive ani…

About once a month, I dwell on this. Modern web pages can easily be 20MB. You can do a lot in 20 megs. Re-reading Apple’s “Thoughts on Flash” tonight, I was surprised at how many times Apple mentioned vendor lock-in. JavaScript is definitely here to stay. Ten years later, though, I wonder if we have ended up in nearly the same place we strived to avoid - high power consumption - but with worse authoring tools. But wi…

Worth noting that the SWF format was towards the end of its lifecycle and open standard as well. Fully documented with open source players and tooling available.

Re: Ask HN: Are there things that Flash did that we still can’t do with today’s web?

#104
post #67
post #41

Earlier quoted context omitted.

And my mate Tim, a designer not a coder, could bang up really neat stuff really easily. Now you need to be Bartosz Ciechanowski and only he is.

Bartosz Ciechanowski is indeed awesome; and indeed the web got worse. Boring. A template repeated million of times by people that know libraries, but no html+css.

I'd say "boring" is not - usually - "worse"

Most of the time, it's far better: boring works. Boring pays the bills. Boring gets more people to use something. Boring is ubiquitous.

Everything "new" eventually becomes "boring" - and that's good

Re: Ask HN: Are there things that Flash did that we still can’t do with today’s web?

#105

Maybe there is a vector animation tool that is as easy to use as Flash was, but that fact that we rarely see vector animations like we did back in the day makes me think not. I used to work with a group that created training materials using Flash. We had a bunch of animators that knew nothing about coding, but they could produce all of these amazing animated videos using Flash. They could also produce interactive ani…

> All of that is just gone. There was so much animation and interaction and fun that has been replaced with boring, text, images, and videos. This might be partially a fashion thing: people want the flashy interactions less. I for one appreciate some boring text with minimal animation! Also away from games where animated interaction is part of the point, designing a good animation that works better than text+images i…

>Also away from games where animated interaction is part of the point, designing a good animation that works better than text+images is often not as easy as many think, and you need to contend with that before you attempt to implement the design

The places where "animation that works better than text+images" is incredibly small

I can read faster than you can animate - speed it up!

Or I want to read longer than you animate - slow it down!

Text (+images) solves this perfectly - and has for millennia

Re: Ask HN: Are there things that Flash did that we still can’t do with today’s web?

#106
post #82

A lot of answers already boil down to, basically, superior developer experience. But there's an aspect of this that I want to highlight: resource efficiency. Around the latter half of the 00s, I had a Windows XP machine with 256MB of RAM and a Pentium 4 processor, with a matching spinning metal-disk hard drive. I could make decent Flash animations and games with it. I could view entire websites in Flash with Internet…

As an embedded developer it always surprises me that simple programs are still barely any faster, take 100s of MB of RAM, require a decent CPU despite the fact we're all using supercomputers compared to the Windows 95 days. How is it that physicists and engineers are pushing the limits of physics to bring us ever faster processors and we still can't smoothly scroll a webpage, where as I can design an embedded product…

There's a few things that have led to this trend, none of which are obviously 'wrong' or dysfunctional:

1. Better GFX quality. Modern screens have vastly higher pixel resolutions than before and vastly higher than any embedded device. Also everything now has to be anti-aliased by default and we expect sophisticated Unicode support everywhere.

This means UI is lovely and sharp - our stuff just looks fantastic compared to the Windows 95 era. But this came at a really high and non-linear cost increase because you can't do CPU rendering and keep up the needed pixel rates anymore. This has caused a lot of awkwardness, complexity and difficulties lower down in the stack as people try to move more and more graphics work to the GPU but hit problems of internal code complexity, backwards compatibility etc.

2. Windows dominance ended, meaning apps have to be platform neutral at reasonable cost. In turn that means you can't use the OS native GUI widgets anymore unless you're writing mobile apps or some artisanal macOS app - you have to use some cross platform abstraction. This also led to the widespread use of GCd languages for UI, because ain't nobody got time for mucking around with refcounting and memory ownership in their UI code anymore.

3. For various reasons like distribution and sandboxing, browsers met people's needs better than other ways of writing apps but browser rendering engines are massively constrained in how much they can improve due to the backwards compatibility requirements of the web again. Flash demonstrated that viscerally back when it was around. So a lot of potential performance got lost there in the transition to web apps, and memory usage exploded due to the highly indirect and complicated DOM rendering model which in turn needs layers of (non-mmap-shareable) code to make it digestable for devs.

4. Browser devs lost confidence in language based sandboxes and so moved to process based sandboxes, but a process is an extremely heavyweight thing - lots of CPU cost from all the IPC and context switching and especially expensive in terms of memory overhead.

You ask why is embedded different. Others here are asking why games are different. This is simple enough:

1. Embedded apps don't care about OS independence, don't care about security or sandboxing and only sometimes have large hi-res displays. If you're on a 40MHz CPU your display is probably a dinky LCD. You can lose the abstractions and write much closer to the metal.

2. Game engines and GPUs co-evolved with the needs of games driving GPU features and capabilities. In contrast, nobody was buying a hot new NVIDIA card to make their browser scroll faster. Games also benefit from historically being disposable software in which the core tech isn't really evolved over a long period of time, so devs can start over from scratch quite frequently without backwards compatibility being a big deal. Normal application software can't justify this. Of course games are going the same way as app software with Unreal becoming a kind of OS for games, but ultimately, it's shipped with the app every time and porting titles between major engine versions is rare, so they can change things up every so often to get better performance.

Could things have been different? Maybe. If just a tiny handful of decisions had been different in the late 90s then Jobs would never have come back to Apple and the dominance of Windows would have never ended. The iPhone would have never happened and Android would have remained a BlackBerry competitor at best, with a UI to match. If the Windows team had executed better and paid more attention to security basics like sandboxing, ActiveX could have remained a common and viable way to way to ship apps inside the browser. Flash might still be around because it was ultimately Google and Apple who killed it off by fiat - Microsoft wanted to compete via Silverlight, but were by then sufficiently respectful of anti-trust concerns that they wouldn't have simply announced they were going to murder it in cold blood.

So it's easy to imagine a parallel universe where our tech stack looks very different. But, this is the one we live in.

Re: Ask HN: Are there things that Flash did that we still can’t do with today’s web?

#107

Earlier quoted context omitted.

> Basically everything these days assumes fast random disk IO I think the point is that they shouldn't . The majority of things that people do every day should fit in memory, requiring only short bursts of sequential access when loading and when saving files. Even databases and filesystems are pretty good at avoiding or overlapping random accesses. Exceptions exist, to be sure, but if "basically everything" gets slow…

I mean yes and no. One might make the same claim about an FPU for example. It should be possible for most software to be fast without assuming fast floating point calculations. But if it can reasonably be assumed that the deployment platform does have that capability then does it make sense to focus effort into optimising that. I think there's an argument to be that programs should focus more on when they're reading…

I remember adopting SSDs quite early in their lifetime despite them having controller firmware teething issues at the time. It was hands down the most significant PC upgrade I've made in the last 20 years.

That said, Windows used to run acceptably on hard drive. I don't think I could even endure Windows 10 on one now with the amount of background disk hammering it does just staring at an empty desktop.

Re: Ask HN: Are there things that Flash did that we still can’t do with today’s web?

#108

Maybe there is a vector animation tool that is as easy to use as Flash was, but that fact that we rarely see vector animations like we did back in the day makes me think not. I used to work with a group that created training materials using Flash. We had a bunch of animators that knew nothing about coding, but they could produce all of these amazing animated videos using Flash. They could also produce interactive ani…

> All of that is just gone. There was so much animation and interaction and fun that has been replaced with boring, text, images, and videos. This might be partially a fashion thing: people want the flashy interactions less. I for one appreciate some boring text with minimal animation! Also away from games where animated interaction is part of the point, designing a good animation that works better than text+images i…

Switch to mobile played a larger role I think. People used to browse on PCs with mouse pointers and keyboards, now they do on phones with touchscreens.

Re: Ask HN: Are there things that Flash did that we still can’t do with today’s web?

#109
post #41

Maybe there is a vector animation tool that is as easy to use as Flash was, but that fact that we rarely see vector animations like we did back in the day makes me think not. I used to work with a group that created training materials using Flash. We had a bunch of animators that knew nothing about coding, but they could produce all of these amazing animated videos using Flash. They could also produce interactive ani…

And my mate Tim, a designer not a coder, could bang up really neat stuff really easily. Now you need to be Bartosz Ciechanowski and only he is.

I just googled him to see what you were talking about. First article of his blog just blew my mind

Re: Ask HN: Are there things that Flash did that we still can’t do with today’s web?

#110

Earlier quoted context omitted.

> Basically everything these days assumes fast random disk IO I think the point is that they shouldn't . The majority of things that people do every day should fit in memory, requiring only short bursts of sequential access when loading and when saving files. Even databases and filesystems are pretty good at avoiding or overlapping random accesses. Exceptions exist, to be sure, but if "basically everything" gets slow…

I mean yes and no. One might make the same claim about an FPU for example. It should be possible for most software to be fast without assuming fast floating point calculations. But if it can reasonably be assumed that the deployment platform does have that capability then does it make sense to focus effort into optimising that. I think there's an argument to be that programs should focus more on when they're reading…

> systems not running on SSDs ... are exceedingly rare these days

Just because it's there doesn't mean you have to rely on it. As you yourself say:

> programs should focus more on when they're reading from disk

Yes, they should. A program's interface to storage is often one of the main limiters on its overall performance or scalability, even with the fastest kinds of storage available. In general, it's best to assume that storage access - especially random access - will be crazy slow compared to anything else. Batch it, parallelize it, overlap it with other kinds of work. Any program that is unnecessarily I/O bound, relying on storage to be fast in order to be fast itself, will be unable to take advantage of other resources (CPU, memory). That's excusable for programs whose whole purpose is to access storage - e.g. the storage servers I worked on for ~30 years including in HPC - but otherwise it's just poor design. Unfortunately, that's the norm in our industry nowadays.

Post reply on HN